# This is a master configuration ini file for SDP - Server Deployment Package # It is parsed by a python script and used to write the basic sdp_config.ini files # which can be parsed by SDP-Functions.ps1::Parse-SDPConfigFile (called by p4env.bat) # # See below for naming conventions regarding Section names. # The default section contains global values which are used in other sections (unless overridden # in those sections) [DEFAULT] # This is the Perforce superuser for this instance SDP_P4SUPERUSER=perforce # This is the Perforce superuser password - will be written to the adminpass.txt file SDP_P4SUPERUSER_PASSWORD=perforce # The following file should contain the password for the perforce user - it is stored in config dir ADMIN_PASS_FILENAME=adminpass.txt # The following define email addresses for sending of automated reports via SMTP firstname.lastname@example.org # maillist specifies who emails are sent to, and can take multiple comma separated values email@example.com # mailhost is typically in the local network to avoid open relay issues mailhost=mail.example.com # mailhostport will default to 25. For use with gmail value is 587 (in which case SSL will be turned on) mailhostport=25 # The following file should contain the password for logging in to the mailhost - if required - can be left blank if not needed EMAIL_PASS_FILENAME=emailpass.txt # And if required the email password - can be blank if not required. EMAIL_PASSWORD= # Set KEEPCKPS to the number of checkpoint & journal files and their # corresponding log files to keep. Checkpoints and their log file are # numbered with the same journal counter number. Checkpoints/journals # and their logs are removed when daily_backup.bat or weekly_backup.bat # are run. The live_checkpoint.bat script does not remove. # Set KEEPCKPS=0 to avoid automated cleanup of checkpoints and logs. KEEPCKPS=10 # Set KEEPLOGS to the number of server logs to keep, counting back from # the most recent. Server logs are numbered with their corresponding # journal counter number, since server logs are rotated when checkpoint # logs are rotated. Keep in mind that if scripts are set to run # more than once per day, this will not correspond to the number # of days, just the number of iterations of script calls. # KEEPLOGS affects all log files other than checkpoint logs, which are # governed by KEEPCKPS. # Set KEEPLOGS=0 to avoid automated cleanup of old server logs. KEEPLOGS=20 # If LIMIT_ONE_DAILY_CHECKPOINT is set, daily_backup.bat will create # no more than one offline checkpoint per day, regardless of the # number of times it is called. It may be desirable to run the # daily_backup.bat script multiple times per day to get the benefit # of doing 'p4d -jj', creating more frequent journal files for the # DR site, without unduly taxing the primary server hardware by making # more than one full offline checkpoint per day. Setting # LIMIT_ONE_DAILY_CHECKPOINT does *not* affect live_checkpoint.bat; it # will always create a full checkpoint. However, if live_checkpoint.bat # is run, setting LIMIT_ONE_DAILY_CHECKPOINT will prevent subsequent # runs of daily_backup.bat from creating additional checkpoints. LIMIT_ONE_DAILY_CHECKPOINT=false # Global root drive/directory - this directory will contain links (using 'mklink') to # other drives/directories on the machine (e.g. under METADATA_ROOT). # The default value is "c:" and implies c:\p4 is used as standard root. # Don't change without good reason - for consistency between sites! # Use the METADATA_ROOT and other variables to put real directories (not links) on different disks. SDP_GLOBAL_ROOT=c: # ------------------------------------------------------------------------------ # Note that the name of the section is of the format [<SDP_INSTANCE>:<HOSTNAME>] # Use the output of "hostname" command (not IP address) for the hostname part. # Each SDP_INSTANCE must be unique on a particular host machine, and should be # unique within an organization. This allows for the same instance name/number # to be used on different hosts (e.g. a master and its replica). You may also # wish to use alphanumeric values for SDP_INSTANCE. # For example, the SDP_INSTANCE name might be '1' (the default), or 'fgs' where # 'fgs' is an arbitraty tag to refer to a given set of Helix Core users, files, # changelist numbers, and other metadata. If that logical data set is replicated # to other machines, it is still referred to as the same instance name on those # other machines. So you might have C:\p4\fgs\root and a master server machine # and a replica machine, and also have C:\p4\fgs\cache on a proxy server for # the same instance. Any givem machinemight also have multiple instances, i.e. # logically independnet Helix Core data sets with differs users, files, # changelist numbers, and a different topology. The settings below are # configurable on a per-SDP_INSTANCE/per-machine basis. # # The SDP_INSTANCE should be a short name, as it will become part of the service # name and directory structure. For example, an instance name might be '1' or # 'fgs', resulting in structures like C:\p4\1\root or C:\p4\fgs\depots. [1:__OUTPUT_OF_HOSTNAME_COMMAND_ON_SERVER_PLEASE_UPDATE__] # The name of this instance is separate from the ServerID. The master server spec # incorporates the instance name, so it should look like master.1, or master.fgs. # SDP_SERVERID must be unique for all servers with the same master server. SDP_SERVERID=master.__SPD_INSTANCE__ # The value of the Services field in "p4 server", one of: # standard, replica, forwarding-replica, build-server, # commit-server, edge-server, standby, forwarding-standby SDP_SERVICE_TYPE=standard # The port number - must be numeric and unique on the machine SDP_P4PORT_NUMBER=1666 # Service user not required/used on a Master (standard/commit) server, but is required for a replica. # Recommended naming convention: svc_<SDP_INSTANCE> or svc_<SDP_SERVERID> # This keeps it unique per replica for tracking/monitoring. SDP_P4SERVICEUSER= # These next 3 are the root drive/directory values # Often these are separate drives, but they can be on the same drive and all be the # same value (note that the first directory underneath with be "p4". # Examples: # DEPOTDATA_ROOT=S: # DEPOTDATA_ROOT=S:\p4assets METADATA_ROOT=M: DEPOTDATA_ROOT=S: LOGDATA_ROOT=J: # The following is not required for master servers or where there is no replica. # This is used by replicas to access the root directory of DEPOTDATA_ROOT above. # Value might be: # \\server-machine\d$ # Which is then used by replica to copy the checkpoint files in sync_replica.ps1 REMOTE_DEPOTDATA_ROOT= # ------------------------------------------------------------------ # REMOVE THIS SECTION IF NO REPLICA IS USED. # Duplicate this section for each replica. # Note that the name of the section is of the format [<sdp_instance>:<hostname>] # Use the output of "hostname" command (not IP address) for the hostname part. # Each SDP_INSTANCE must be unique on a particular host machine # This allows for the same instance number to be used on different hosts (e.g. a master and # a replica). You may also wish to use alphabetic values for sdp_instance, e.g. MASTER and REPLICA1 # The SDP_INSTANCE will become part of the service name and also directory structure # E.g. p4_<SDP_INSTANCE> so p4_1 or p4_Master # c:\p4\<SDP_INSTANCE> so c:\p4\1 or c:\p4\Master [Replica1:__OUTPUT_OF_HOSTNAME_COMMAND_ON_SERVER_PLEASE_UPDATE__] # The name of this instance also used as the serverid - it can be the same as SDP_INSTANCE, though typically # isn't if SDP_INSTANCE is just numeric. # SDP_SERVERID must be unique for all servers with the same master (standard) server. SDP_SERVERID=Replica1 # The value of the Services field in "p4 server", e.g. one of: # standard, replica, forwarding-replica, build-server, # commit-server, edge-server, standby, forwarding-standby SDP_SERVICE_TYPE=forwarding-replica # The port number - must be numeric (and unique on the machine) SDP_P4PORT_NUMBER=1888 # Service user not required on a Master (standard) server, but is required for a replica. # Recommended naming convention: svc_<SDP_INSTANCE> or svc_<SDP_SERVERID> # Good to have unique per replica for tracking/monitoring. # Note service users must have super privilege and be in a group with a long password timeout. SDP_P4SERVICEUSER=svc_Replica1 # These next 3 are the root drive/directory values # Often these are separate drives, but they can be on the same drive and all be the # same value. # Examples: # DEPOTDATA_ROOT=E: # DEPOTDATA_ROOT=C:\p4assets METADATA_ROOT=M: DEPOTDATA_ROOT=S: LOGDATA_ROOT=J: # The following are not required for master servers or where there is no replica. # This is used by replicas to access the root directory of DEPOTDATA_ROOT above. # Used by sync-replica script # It is assume to be a network accessible fileshare accessible on the master for use on # the replica machine. REMOTE_DEPOTDATA_ROOT=\\__MASTER_SERVER_HOSTNAME__\S$
Implement p4login.bat properly with powershell.
Fix to @27817
Clarified SDP_INSTANCE name meaning and examples in the sdp_master_config.ini.
Changed sample drive letters to what I would recommend in a real-world environment.
Removing out-of-date files and ancient utilities.
Updating SDP Guide for Windows with includes to various .ps1 scripts
Add new sync-replica.ps1 and call it from sync_replica.bat
|#7||26119||robert_cowham||Add comments for different replica types|
|#6||26109||robert_cowham||Handle new replica types: standby, forwarding-standby, edge-server, commit-server|
|#5||20541||robert_cowham||Add new values for sending email: mailhostport and email_pass_filename|
Routine Merge Down to dev from main using:
p4 merge -b perforce_software-sdp-dev
Routine Merge Down to dev from main using:
p4 merge -b perforce_software-sdp-dev
|#2||15701||tom_tyler||Routine merge down using 'p4 merge -b perforce_software-sdp-dev'.|
|#1||10961||tom_tyler||Merge down from main.|
Added Windows SDP into The Workshop:
* Combined (back) into Unix SDP structure.
* Avoided adding duplicate files p4verify.pl, p4review.(py,cfg).
* Upgraded 'dist.sh' utility to produce both Unix and Windows
packages (*.tgz and *.zip), adjusting line endings on text
files to be appropriate for Windows prior to packaging.
* Resolve duplication of [template_]configure_new_server.bat.
* Merge test suites for Windows and Unix into a cohesive set.