bootstrap-linux.sh #10

  • //
  • guest/
  • perforce_software/
  • helix-installer/
  • main/
  • test/
  • bootstrap-linux.sh
  • View
  • Commits
  • Open Download .zip Download (2 KB)
#!/bin/bash
#------------------------------------------------------------------------------
set -u

# Usage: 
# bootstrap-linux.sh [<SDPBranch>]
# The <SDPBranch> parameter is optional.  SDPBranch determines
# the branch of the SDP to test with, 'main' by default but can
# be 'dev'.

# Bootstraps a new Linux server with requirements Helix Installer testing.

function msg () { echo -e "$*"; }
function bail () { msg "\\nError: ${1:-Unknown Error}\\n"; exit "${2:-1}"; }

declare Version=1.5.2
declare SDPBranch=${1:-main}
declare HelixInstallerArgs=

msg "Starting ${0##*/} v$Version at $(date)."

# Currently, RHEL/CentOS and Ubuntu flavors are supported.
# See release notes for more specific details of which versions are
# currently supported.
if [[ -r "/etc/redhat-release" ]]; then
   msg "Verified: Running Red Hat or similar Linux OS."
elif [[ -r "/etc/lsb-release" ]]; then
   msg "Verified: Running Ubuntu or similar Linux OS."
else
   msg "Warning: Running on unknown OS. Hoping for the best."
fi

if [[ -d /hxdepots/test-reset ]]; then
   [[ -d /hxdepots/reset ]] && \
      bail "Directory /hxdepots/reset unexpectedly exists at bootstrap!"

   if [[ -d /hxdepots ]]; then
      msg "Using existing /hxdepots volume provisioned at bootstrap."
   else
      msg "Initializing /hxdepots dir."
      sudo mkdir /hxdepots
   fi

   msg "Testing files from local workspace."
   sudo cp -pr /hxdepots/test-reset /hxdepots/reset
   cd /hxdepots/reset || bail "Failed to do 'cd /hxdepots/reset'. Aborting."
else
   bail "Expected test support dir /hxdepots/test-reset does not exist. Check the Vagrantfile for the setting 'machine.vm.synced_folder'."
fi

HelixInstallerVersion=$(grep '^declare Version=' reset_sdp.sh)
HelixInstallerVersion=${HelixInstallerVersion#declare }
msg "Helix Installer version: $HelixInstallerVersion"

HelixInstallerCmd="./reset_sdp.sh"
HelixInstallerArgs="-fast -b $SDPBranch"
#HelixInstallerArgs="-b $SDPBranch"
msg "Calling Helix Installer: $HelixInstallerCmd"
#shellcheck disable=SC2086,SC2024
sudo $HelixInstallerCmd $HelixInstallerArgs > log.reset_sdp.txt 2>&1
# Change User Description Committed
#14 27427 C. Thomas Tyler Released SDP 2021.2.27425 (2021/02/09).
Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'.
#13 26975 C. Thomas Tyler Released HelixInstaller 2020.2.26973 (2020/12/01).
#12 26831 C. Thomas Tyler Released HelixInstaller/MultiArch/2020.1/26829 (2020/10/07).
#11 26793 C. Thomas Tyler Released HelixInstaller/MultiArch/2020.1/26784 (2020/09/25).
#10 26578 C. Thomas Tyler Released Helix Installer 2020.1.26576 (2020/06/17).
#9 26031 C. Thomas Tyler Released Helix Installer 2019.4.26026 (2019/08/22).
#8 26008 C. Thomas Tyler Released HelixInstaller 2019.4.26006 (2019/08/20).
#7 25999 C. Thomas Tyler Released HelixInstaller 2019.4.25995 (2019/08/20).
#6 25900 C. Thomas Tyler Released HelixInstaller 2019.3.25890 (2019/07/24).
#5 25822 C. Thomas Tyler Released HelixInstaller/MultiArch/2019.3/25820 (2019/07/11).
#4 25725 C. Thomas Tyler Released HelixInstaller/MultiArch/2019.2/25723 (2019/06/19).
#3 25166 C. Thomas Tyler Released Helix Installer 2019.1.25164 (2019/02/22).
#2 24914 C. Thomas Tyler Released HelixInstaller 2018.2.24912.
#1 24865 C. Thomas Tyler Released HelixInstaller v2018.2.24862.
//guest/perforce_software/helix-installer/dev/test/bootstrap-linux.sh
#1 24860 C. Thomas Tyler Added basic Vagrant test suite for Helix Installer for testing
on CentOS 6.10.