USAGE for hms_ts_setup.sh v3.2.0:
hms_ts_setup.sh -i <instance1>[,<instance2>...] [-y] [-L <log>] [-n] [-debug|-D]
or
hms_ts_setup.sh [-h|-man|-V]
DESCRIPTION:
The HMS "Tight Ship" setup script installs
HMS server, or adds an 'hms' SDP instance to an existing SDP
installation. into a tight-ship style installation on the master
server machine.
This is best done immediately after a running the SDP install_sdp.sh
script to initialize the hms instance on a dedicated p4hms machine
with no data.
A tight ship installation is one in which:
* The key SDP folders, e.g. /p4/common and /p4/N/bin (for
each instance) are versioned locally using SDP.<hostname>
workspaces in a local HMS instance, /p4/hms, which this script
creates and initializes.
* The crontab for the Perforce user is versioned.
* Any local configuration and/or customizations of the SDP
are versioned.
* The HMS instance is aware of The Workshop, a public
P4 Server hosted by Perforce Software. It fetches SDP
updates from The Workshop into the local hms instance using
P4 native DVCS features.
This simplifies future updates of the SDP, allowing them
to be done with a 'p4 fetch' followed by a 'p4 merge'
on your local server (if the server can reach The
Workshop directly; if not an alternative
approach using an interim personal repo can be used to
bridge 'air gap' networks).
PRE-REQUISITES:
The following are pre-requisites to running hms_ts_setup.sh:
1. The SDP install_sdp.sh script must have been run to create
the hms instance.
ADDITIONAL SETUP:
The following setup is necessary before operating in a tight
ship environment, but are not necessary before running this
script.
1. The SSH keys must be configured enabling the 'perforce' user
to ssh without a password to all machines listed in sdp_hosts.cfg
configured above, including the current host (i.e. it must be
able to ssh to itself using the current hostname).
OPTIONS:
-i <instance1>[,<instance2>...]
Specify a comma-delimited list of SDP instances to manage.
-y Continue past the preflight without an interactive prompt.
-d <sdp_dir>
Specify the root of the directory tree where the SDP package
is available. The default is:
The version of the SDP installed must be recent enough to
contain the 'hms' setup directory:
/Server/Unix/setup/hms.
-s Specify '-s' if sudo access is available. If sudo access
is available, HMS can manage more things than it can without
sudo access, e.g. Swarm.
Adding '-s' adds a preflight check to verify sudo access.
-d Set debug verbosity.
-L <log>
Specify the path to a log file, or the special value 'off' to disable
logging. By default, all output (stdout and stderr) goes to:
/Users/ttyler/hms_ts_setup.<timestamp>.log
NOTE: This script is self-logging. That is, output displayed on the screen
is simultaneously captured in the log file. Do not run this script with
redirection operators like '> log' or '2>&1', and do not use 'tee.'
-n No-Op. Prints commands instead of running them.
-D Use bash 'set -x' extreme debugging verbosity. Implies -d.
HELP OPTIONS:
-h Display short help message
-man Display man-style help message
-V Dispay version info for this script and its libraries.
FILES:
EXAMPLES:
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #1 | 33516 | C. Thomas Tyler |
Consistency pass: fix absolute URLs, p4ms->hms renames, script/doc typos and bugs - Convert absolute workshop.perforce.com URLs to relative paths in dlp/ReadMe.md - Fix case-mismatch link to HMS_Product_Roadmap.md in README.md - Rename reset_p4ms.sh -> reset_hms.sh and p4broker_p4ms_test -> p4broker_hms_test - Fix .sh-suffix bugs: bin/hms calling global_replica_status.sh (should be no ext), and matching SEE ALSO / doc references for sdp_sync and global_replica_status - Add missing scripts (gtu, hrun, irun, global_replica_status) to gen_script_man_pages.sh - Add stub scripts: nj_help.sh, broker_njob.pl, broker_mkproj.pl, broker_jr.pl - Remove dangling absolute symlinks HostCM/p4 and HostCM/p4d (cruft) - Rename test/b -> test/broker_ctl.sh for clarity - Fix real bugs: broker_imply-u.pl broken regex match, gen_dlp_broker_cfg.sh and gen_nj_broker_cfg.sh copy-pasted Version-file existence check, garbled comment in broker_must_be_owner.pl, unclosed quote in tools/gsr.sh usage(), missing 'h' in HMS_SystemComponents.md broker command example (^ms$ -> ^hms$) - Fix broken sed command and incomplete sentence in HMS_Install_Notes.md and SDP_and_HMS_Update_Process.md - Fix broken markdown table in HMS_Product_Roadmap.md - Fix unclosed parenthesis, missing verb, and FKA Swarm mislabel in HMSDeploymentPlanning.adoc - Standardize //streams/main/... naming in HostCM/ReadMe.md - Numerous typo fixes across README.md, HMS_SystemComponents.md, SDP_and_HMS_Update_Process.md, HMS_TightShipManagement.adoc, HMSDeploymentPlanning.adoc, HostCM/ReadMe.md, and various scripts Co-authored-by: Copilot <[email protected]> |