How to setup:
- Copy to ~/ folder and reload bash.
How to use:
- Run stb_run to copy sources and setup STB.
- Use stb_run to reload UI with the latest sources.
STB="${STB_IP}" #10.6.147.11 | |
PC="${PC_IP}" #10.6.3.137 | |
# listen serial logs from STB | |
alias stb_serial="screen /dev/tty.usbserial-AM01C99T 115200" | |
# open SSH connection to STB | |
alias stb="ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@$STB" | |
# restart UI | |
alias stb_restart="stb 'systemctl restart jsapp'" | |
# enable logs and switch jsapp to DEBUG mode | |
alias stb_enable_logs="stb 'touch /mnt/nand/mw/i-know-im-using-devel-busybox && mount -o remount,rw / && echo \"MODE=inspect\" >> /usr/share/logcfg/current/JSAPP/log.conf'" | |
# take screenshot from the box | |
# usage stb_screenshot > stb_.png | |
alias stb_screenshot="stb 'touch /mnt/secure_storage/screenshot1.png && rm /mnt/secure_storage/screenshot1.png && do_screenshot.sh /mnt/secure_storage/screenshot1.png >> /mnt/secure_storage/temp.log && cat /mnt/secure_storage/screenshot1.png'" | |
alias stb_mount_nfs="stb '/usr/sbin/iptables -F && mount -o nolock $PC:/Users/raman_kananovich/dev/onemw-js/src/ /usr/share/lgioui/ && systemctl restart jsapp'" | |
# setup stb to work via NFS share | |
alias stb_setup_nfs="stb_enable_logs && stb_mount_nfs" | |
alias stb_setup_permissions="stb 'chown -R mainapp /usr/share/lgioui && chgrp -R mainapp /usr/share/lgioui'" | |
alias stb_copy="scp -r -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no ~/dev/onemw-js/src/* root@$STB:/usr/share/lgioui" | |
alias stb_quick_copy="(git status --short; stb 'touch /usr/share/lgioui/latest_status && cat /usr/share/lgioui/latest_status') | sort | uniq | awk '{source=\$2;gsub(\"src\", \"\", source);dest=source;gsub(/\/[^\/]*$/, \"\", dest);if (\$2 != source && \$1 != \"D\") print \"scp -r -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no ~/dev/onemw-js/src\" source \" root@$STB:/usr/share/lgioui\" dest}' | bash ; git status --short | stb 'cat > /usr/share/lgioui/latest_status'" | |
# run on new branch to override all sources | |
alias stb_full_run="stb_copy && stb_setup_permissions && stb_restart" | |
# run once after reboot | |
alias stb_setup="stb_enable_logs && stb_full_run" | |
# restart UI with the latest local changes, works only with git status command output after deleting files stb_run is required. | |
alias stb_quick_run="stb_quick_copy && stb_setup_permissions && stb_restart" | |
# One command to run UI from local sources, it will perform setup/copy/quick copy depending on the current state of STB | |
alias stb_run="sh ~/run.sh" |
#!/bin/sh | |
source ~/.bash_profile; | |
current_branch_name=$(git rev-parse --abbrev-ref HEAD); | |
current_branch_hash=$(git rev-parse --short HEAD); | |
current_branch="${current_branch_name}@${current_branch_hash}"; | |
prev_branch=$(stb 'touch /usr/share/lgioui/last_build && cat /usr/share/lgioui/last_build'); | |
if [ -z "${prev_branch}" ] | |
then | |
stb_setup && echo "${current_branch}" | stb 'cat > /usr/share/lgioui/last_build'; | |
echo "stb setup: ${current_branch}"; | |
elif [ "${current_branch}" = "${prev_branch}" ]; | |
then | |
stb_quick_run; | |
echo "stb quick run: ${current_branch}"; | |
else | |
stb_full_run && echo "${current_branch}" | stb 'cat > /usr/share/lgioui/last_build'; | |
echo "stb full run: ${current_branch}"; | |
fi |