Austin Schuh | a617d03 | 2017-09-14 00:06:59 -0700 | [diff] [blame] | 1 | #!/bin/bash |
Austin Schuh | f4fd6a9 | 2018-09-16 16:31:12 -0700 | [diff] [blame] | 2 | # |
| 3 | # Note: this should be run from within bazel |
| 4 | |
Lee Mracek | 3126dc4 | 2018-06-18 04:44:39 -0400 | [diff] [blame] | 5 | set -Eeuo pipefail |
Austin Schuh | a617d03 | 2017-09-14 00:06:59 -0700 | [diff] [blame] | 6 | |
| 7 | if [ $# != 1 ]; |
| 8 | then |
Michael Schuh | e2baf9c | 2018-05-31 16:32:46 -1000 | [diff] [blame] | 9 | echo "# setup_robot.sh is used to configure a newly flashed roboRIO" |
| 10 | echo "" |
| 11 | echo "Usage: setup_roborio.sh 10.9.71.2" |
| 12 | echo "" |
| 13 | echo "# or if that does not work, try" |
| 14 | echo "" |
| 15 | echo "Usage: setup_roborio.sh roboRIO-971-frc.local" |
Austin Schuh | a617d03 | 2017-09-14 00:06:59 -0700 | [diff] [blame] | 16 | exit 1 |
| 17 | fi |
| 18 | |
| 19 | readonly ROBOT_HOSTNAME="$1" |
| 20 | |
Austin Schuh | cb09171 | 2018-02-21 20:01:55 -0800 | [diff] [blame] | 21 | echo "Looking to see if l is aliased right." |
Lee Mracek | 3126dc4 | 2018-06-18 04:44:39 -0400 | [diff] [blame] | 22 | |
Austin Schuh | f4fd6a9 | 2018-09-16 16:31:12 -0700 | [diff] [blame] | 23 | if ! HAS_ALIAS=$(ssh "admin@${ROBOT_HOSTNAME}" "cat /etc/profile"); then |
Lee Mracek | 3126dc4 | 2018-06-18 04:44:39 -0400 | [diff] [blame] | 24 | echo "ssh command failed remotely" |
| 25 | exit 1 |
Austin Schuh | f4fd6a9 | 2018-09-16 16:31:12 -0700 | [diff] [blame] | 26 | elif echo "${HAS_ALIAS}" | grep -Fq "alias l"; then |
Austin Schuh | a617d03 | 2017-09-14 00:06:59 -0700 | [diff] [blame] | 27 | echo "Already has l alias" |
| 28 | else |
| 29 | echo "Adding l alias" |
| 30 | ssh "admin@${ROBOT_HOSTNAME}" 'echo "alias l=\"ls -la\"" >> /etc/profile' |
Michael Schuh | e2baf9c | 2018-05-31 16:32:46 -1000 | [diff] [blame] | 31 | echo "Adding symbolic link to loging directory" |
| 32 | ssh "admin@${ROBOT_HOSTNAME}" ln -s /media/sda1 logs |
Austin Schuh | 751f692 | 2019-03-01 19:42:05 -0800 | [diff] [blame] | 33 | ssh "admin@${ROBOT_HOSTNAME}" mkdir robot_code |
| 34 | ssh "admin@${ROBOT_HOSTNAME}" ln -s /media/sda1/aos_log-current robot_code/aos_log-current |
Austin Schuh | a617d03 | 2017-09-14 00:06:59 -0700 | [diff] [blame] | 35 | fi |
| 36 | |
Austin Schuh | b591709 | 2020-02-21 17:56:41 -0800 | [diff] [blame] | 37 | if [[ "$(ssh admin@${ROBOT_HOSTNAME} uname -r)" != "4.14.87-rt49-cg-7.0.0f0-xilinx-zynq-189" ]]; then |
| 38 | echo "Target roboRIO has the wrong kernel" |
| 39 | exit 1 |
| 40 | fi |
| 41 | |
| 42 | ssh "admin@${ROBOT_HOSTNAME}" mkdir "/lib/modules/4.14.87-rt49-cg-7.0.0f0-xilinx-zynq-189/kernel/net/sctp/" |
| 43 | scp frc971/config/sctp.ko "admin@${ROBOT_HOSTNAME}:/lib/modules/4.14.87-rt49-cg-7.0.0f0-xilinx-zynq-189/kernel/net/sctp/sctp.ko" |
| 44 | ssh "admin@${ROBOT_HOSTNAME}" depmod |
| 45 | |
Tyler Chatow | e45e977 | 2018-10-27 20:11:40 -0700 | [diff] [blame] | 46 | # This fails if the code isn't running. |
| 47 | ssh "admin@${ROBOT_HOSTNAME}" 'PATH="${PATH}":/usr/local/natinst/bin/ /usr/local/frc/bin/frcKillRobot.sh -r -t' || true |
Austin Schuh | a617d03 | 2017-09-14 00:06:59 -0700 | [diff] [blame] | 48 | |
| 49 | echo "Deploying robotCommand startup script" |
James Kuszmaul | 5c22e08 | 2019-12-14 20:43:07 -0800 | [diff] [blame] | 50 | scp frc971/config/robotCommand "admin@${ROBOT_HOSTNAME}:/home/lvuser/" |