bootstrap-sdp-setup.sh #1

  • //
  • cbd/
  • main/
  • test/
  • bootstrap-sdp-setup.sh
  • View
  • Commits
  • Open Download .zip Download (2 KB)
#!/bin/bash
declare Version=1.1.5
declare Password="F@stSCM!"

echo "Running ${0##*/} v$Version."

# Installing Helix Swarm and Git Fusion packages.
sudo yum install perforce-git-fusion -y
sudo yum install perforce-swarm -y
sudo yum install perforce-cli -y

# Note: Installing the 'perforce-server' package creates the 'perforce' user with a home dir
# of /opt/perforce/servers.  We change the home directory below to the SDP standard.
sudo yum install perforce-server -y

echo "Allowing user 'perforce' sudo privileges."
echo 'perforce ALL=(ALL) NOPASSWD:ALL' > /tmp/perforce
sudo chmod 0700 /tmp/perforce
sudo chown root:root /tmp/perforce
sudo mv /tmp/perforce /etc/sudoers.d/.

echo "Creating initial SDP dirs."
declare DirList="/p4 /depotdata/reset /depotdata/p4/common/bin/cbd /metadata /logs"

mkdirCmd="sudo /bin/mkdir -p $DirList"
echo "Running: $mkdirCmd"
$mkdirCmd

chownCmd="sudo chown -R perforce:perforce $DirList"
echo "Running: $chownCmd"
$chownCmd

echo "Setting home directory for 'perforce' user to /p4."
usermod -d /p4 perforce

echo "Setting up environment niceties for perforce user."
BASH_PROFILE=/tmp/.bash_profile.perforce
echo '[[ -f /etc/bashrc ]] && source /etc/bashrc' > $BASH_PROFILE
echo '[[ -f ~/.bashrc ]] && source ~/.bashrc' >> $BASH_PROFILE
sudo chown perforce:perforce $BASH_PROFILE
sudo mv -f $BASH_PROFILE ~perforce/.bash_profile

BASHRC=/tmp/.bashrc.perforce
echo '[[ -f /p4/common/bin/p4_vars ]] && source /p4/common/bin/p4_vars 1'> $BASHRC
echo "export PS1='\$USER@\${HOSTNAME%%.*}:\$PWD '" >> $BASHRC
echo "alias md='/bin/mkdir -p'" >> $BASHRC
echo "alias rd=/bin/rmdir" >> $BASHRC
echo "alias o='p4 opened ...'" >> $BASHRC
echo "alias go='cd /p4/common/bin/cbd/test && source manual_test_env.sh'" >> $BASHRC
echo 'set -o vi' >> $BASHRC
sudo chown perforce:perforce $BASHRC
sudo mv -f $BASHRC ~perforce/.bashrc

echo "Setting password for perforce user to: $Password"
echo "perforce:$Password" | sudo chpasswd

echo "Setting up environment niceties for vagrant user."
echo "alias go='sudo su - perforce'" >> ~/.bashrc
echo 'set -o vi' >> ~/.bashrc

exit 0
# Change User Description Committed
#1 21633 C. Thomas Tyler Populate -o //guest/perforce_software/cbd/main/...
//cbd/main/....
//guest/perforce_software/cbd/main/test/bootstrap-sdp-setup.sh
#7 19292 C. Thomas Tyler Copy Up from dev to main.

Released CBD/MultiArch/2016.1/19285 (2016/05/07).

* Added 'Version' file and Release Notes.
* Added test suite documentation.
* Tweaks to CBD logging, back to using append mode.
#6 16666 C. Thomas Tyler Adjusted password to the same value used for Battle School.
#5 15151 C. Thomas Tyler Partial Copy Up to main from ntx64 for CBD, using:
p4 copy -r -b perforce_software-cbd-ntx64

Then SSTemplateUpdate.py was reverted, as it has changes in the
ntx64 development branch not yet ready for general consumption.
#4 15022 C. Thomas Tyler Copy-Up to main from ntx64:
* Fixed Cbd.py issue with an exception handling bug for Host field.
* Rebased CbdDev.py to Cbd.py
* Simplified test operations.
* Fixed a cosmetic typo in test doc/data.
#3 15009 C. Thomas Tyler Promoted CBD development work to main from dev.
#2 11366 C. Thomas Tyler Promoted CBD from dev to main.
#1 11356 C. Thomas Tyler Promotion from Dev Branch.

       What's included:
       * CBD scripts for Streams as demonstrated at Merge 2014.
       * Deletion of files from the original PoC that aren't needed.

       What's coming later, still work in progress on the dev branch:
       * Documentation.
       * Test Suite with complete Vagrant-based Test Environment.
       * CBD scripts for Classic.
//guest/perforce_software/cbd/dev/test/bootstrap-sdp-setup.sh
#1 11354 C. Thomas Tyler Started work on Vagrant test harness.