From b708d325f68cbda0888333fd464746f515abf163 Mon Sep 17 00:00:00 2001 From: Andy <109987630+gainesaw@users.noreply.github.com> Date: Wed, 5 Jul 2023 15:13:38 -0400 Subject: [PATCH] updated initialization script for amd64 and arm64. (#546) # PR Details ## Description script now installs necessary dependencies, creates secret files, prompts user to input mysql passwords, and create v2xhub user ## Related Issue open JIRA task to update initialization script for amd64 and arm64 ## Motivation and Context requested by project leads, automates v2xhub setup/initialization ## How Has This Been Tested? code has been used to setup v2xhub from scratch ## Types of changes - [ ] Defect fix (non-breaking change that fixes an issue) - [ x] New feature (non-breaking change that adds functionality) - [ ] Breaking change (fix or feature that cause existing functionality to change) ## Checklist: - [ ] I have added any new packages to the sonar-scanner.properties file - [x ] My change requires a change to the documentation. - ###potential change to documentation as running this script automates setup. user only needs to clone the repo, run the script, and input passwords when prompted, then navigate to https://127.0.0.1:19760 to accept security certs then v2xhub is ready to use. - [ ] I have updated the documentation accordingly. - [x ] I have read the **CONTRIBUTING** document. [V2XHUB Contributing Guide](https://github.com/usdot-fhwa-OPS/V2X-Hub/blob/develop/Contributing.md) - [ ] I have added tests to cover my changes. - [ ] All new and existing tests passed. --- configuration/amd64/initialization.sh | 37 +++++++++++++++++++++++++-- configuration/arm64/initialization.sh | 36 ++++++++++++++++++++++++-- 2 files changed, 69 insertions(+), 4 deletions(-) diff --git a/configuration/amd64/initialization.sh b/configuration/amd64/initialization.sh index 9a9f68e18..03660e9d5 100755 --- a/configuration/amd64/initialization.sh +++ b/configuration/amd64/initialization.sh @@ -1,12 +1,45 @@ #!/bin/bash + +# update and upgrade commands to update linux OS +sudo apt update -y && sudo apt upgrade -y + +#installing necessary and useful apps +sudo apt-get install chromium-browser -y #Chrome required for CARMA platform/V2X Hub UI(?) +sudo apt install curl -y #Curl for downloading files over internet + +#install docker +curl -L https://raw.githubusercontent.com/usdot-fhwa-stol/carma-platform/develop/engineering_tools/install-docker.sh | bash + +#make passwords for mysql +mkdir secrets && cd secrets + +#creates password files where user inputs password +read -p "enter password for the mysql_root_password: " sql_root_pass +echo "$sql_root_pass" > sql_root_pass.txt + +read -p "enter password for mysql_password: " sql_pass +echo "$sql_pass" > sql_pass.txt + +#remove endline characters from password files +tr -d '\n' mysql_root_password.txt && tr -d '\n' mysql_password.txt +rm sql_root_pass.txt && rm sql_pass.txt + +#AMD64 initialzation +cd .. sudo apt-get -y remove docker docker-engine docker.io containerd runc -sudo apt-get update sudo apt-get -y install apt-transport-https ca-certificates curl gnupg-agent software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" -sudo apt-get update sudo apt-get -y install docker-ce docker-ce-cli containerd.io sudo apt -y install python3-pip sudo pip3 install docker-compose sudo docker-compose pull +sudo apt update -y && sudo apt upgrade -y sudo docker-compose up -d + +#create v2xhub user +cd mysql +./add_v2xhub_user.bash + +chromium-browser "https://127.0.0.1" > /dev/null 2>&1 & +chromium-browser "https://127.0.0.1:19760" > /dev/null 2>&1 & diff --git a/configuration/arm64/initialization.sh b/configuration/arm64/initialization.sh index f8a4dc088..2430a1641 100755 --- a/configuration/arm64/initialization.sh +++ b/configuration/arm64/initialization.sh @@ -1,13 +1,45 @@ #!/bin/bash +# update and upgrade commands to update linux OS +sudo apt update -y && sudo apt upgrade -y + +#installing necessary and useful apps +sudo apt-get install chromium-browser -y #Chrome required for CARMA platform/V2X Hub UI(?) +sudo apt install curl -y #Curl for downloading files over internet + +#install docker +curl -L https://raw.githubusercontent.com/usdot-fhwa-stol/carma-platform/develop/engineering_tools/install-docker.sh | bash + +#make passwords for mysql +mkdir secrets && cd secrets + +#creates password files where user inputs password +read -p "enter password for the mysql_root_password: " sql_root_pass +echo "$sql_root_pass" > sql_root_pass.txt + +read -p "enter password for mysql_password: " sql_pass +echo "$sql_pass" > sql_pass.txt + +#remove endline characters from password files +tr -d '\n' mysql_root_password.txt && tr -d '\n' mysql_password.txt +rm sql_root_pass.txt && rm sql_pass.txt + +#ARM initialization +cd .. sudo apt-get -y remove docker docker-engine docker.io containerd runc -sudo apt-get update sudo apt-get -y install apt-transport-https ca-certificates curl gnupg-agent software-properties-common OS=$(lsb_release -i | awk 'FS=":" {print $3;}' | awk '{print tolower($0)}') arch=$(dpkg --print-architecture) curl -fsSL https://download.docker.com/linux/$OS/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=$arch] https://download.docker.com/linux/$OS $(lsb_release -cs) stable" -sudo apt-get update sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin sudo apt -y install python3-pip sudo pip3 install docker-compose +sudo apt update -y && sudo apt upgrade -y sudo docker-compose up -d + +#create v2xhub user +cd mysql +./add_v2xhub_user.bash + +chromium-browser "https://127.0.0.1" > /dev/null 2>&1 & +chromium-browser "https://127.0.0.1:19760" > /dev/null 2>&1 &