proxy_rotate.sh #3

  • //
  • p4-sdp/
  • dev_rebrand/
  • Server/
  • Unix/
  • p4/
  • common/
  • bin/
  • proxy_rotate.sh
  • View
  • Commits
  • Open Download .zip Download (1 KB)
#!/bin/bash
#==============================================================================
# Copyright and license info is available in the LICENSE file included with
# the Server Deployment Package (SDP), and also available online:
# https://workshop.perforce.com/view/p4-sdp/main/LICENSE
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Version ID Block. Relies on +k filetype modifier.
# VersionID='$Id: //p4-sdp/dev_rebrand/Server/Unix/p4/common/bin/proxy_rotate.sh#3 $ $Change: 31617 $'

# This script rotates the proxy log file on an instance that only has the proxy running.
export SDP_INSTANCE=${SDP_INSTANCE:-Undefined}
export SDP_INSTANCE=${1:-$SDP_INSTANCE}
if [[ $SDP_INSTANCE == Undefined ]]; then
   echo "Instance parameter not supplied."
   echo "You must supply the Perforce instance as a parameter to this script."
   exit 1
fi

# shellcheck disable=SC1091
source /p4/common/bin/p4_vars "$SDP_INSTANCE"
# shellcheck disable=SC1091
source /p4/common/bin/backup_functions.sh
export LOGFILE="${LOGS}/rotate_proxy.log"

######### Start of Script ##########

check_vars
set_vars
rotate_last_run_logs
log "Start $P4SERVER proxy log rotation."
check_uid
check_dirs 2
"$P4CBIN"/p4login
remove_old_logs
log "End $P4SERVER proxy log rotation."
mail_log_file "$HOSTNAME $P4SERVER Daily broker log rotation."

# Change User Description Committed
#3 31617 C. Thomas Tyler Merged work from dev_c2s (development) stream to sibling dev_rebrand (sparsedev) stream.
#2 31615 C. Thomas Tyler First pass at rebranding changes, including:
* Changes to remove 'swarm.' from Workshop URLS, so swarm.workshop -> workshop.
* Changed URL for Copyright.
* Renamed get_helix_binaries.sh -> get_p4_binaries.sh, with associated directory and doc changes.
* Accounted for rename of HAS -> P4AS.
* Changed HMS references to P4MS.
* Replaced "Helix" and "Helix Core" references.
* Renamed variables to reduce tech debt buildup induced by rebranding.
* Changed default mount points:
/hxdepots[-1,N] -> /p4depots[-1,N]
/hxmetadata[1,2] -> /p4db[-1,2]
/hxlogs -> /p4logs

Also made some changes related to rebranding going out with r25.1.
#1 31591 C. Thomas Tyler Populate stream //p4-sdp/dev_rebrand from //p4-sdp/dev.
//p4-sdp/dev/Server/Unix/p4/common/bin/proxy_rotate.sh
#1 31397 C. Thomas Tyler Populate -b SDP_Classic_to_Streams -s //guest/perforce_software/sdp/...@31368.
//guest/perforce_software/sdp/dev/Server/Unix/p4/common/bin/proxy_rotate.sh
#4 30183 C. Thomas Tyler Corrected log file to a name that is handled by remove_old_logs() in
backup_functions.sh.

#review-30184
#3 29804 C. Thomas Tyler The proxy_rotate.sh and broker_rotate.sh scripts are intended for standalone
proxy or broker server machines. As such, logic related to doing things on
a p4d server has been removed.

#review-29805
#2 29795 C. Thomas Tyler Fixed bug where proxy_rotate.sh and broker_rotate.sh called check_dirs() looking
for p4d directories, reporting errors.

Fixed by adding optional ServerType parameter:
1 (default) - check for dirs for a p4d server
2 - check for dirs for a standalone proxy or broker

Also addressed style issues to achieve compliance with ShellCheck v0.9.0.

#review @robert_cowham @karl_wirth
#1 29099 C. Thomas Tyler Added log rotation for proxy-only host.