| Version | Status | Target Timeframe | Key Features |
|---|---|---|---|
| 2026.1 | WIP | Q3 2026 | Rebranding+New Features: Implement hms update and hms upgrade options to initiate a site-wide global topology upgrade without the human admin needing much knowledge of the global topology. An admin with super access that inherited the Perforce server fleet just yesterday should be able to confidently upgrade the whole thing tomorrow. This is to include all P4 server products (p4d/p4broker/p4p) in the entire global topology. (Swarm management is being considered for a future release). Also: Failover Take 2. Leverage p4 failover. HMS manages DFM brokers and knows what machine in the topology to execute p4 failover on. HMS now lives in a new home, the //p4-hms stream depot. |
SDP "Tight Ship" Version Management - A necessary step on the path to successful automation across multiple machines is to solve basic version management challenges for the SDP itself. Essentially, P4 itself is used to version the SDP on all HMS hosts. An HMS host is any Perforce server process executes, be it a proxy, broker, master/commit server, replica, edge, Swarm, etc. The familiar SDP /p4/common structure is managed on all hosts from a single server, the p4hms server. That server in turn uses P4 native DVCS features to simplify the process of updating the SDP from The Workshop, taking advantage of merging power to merge updates to the stock/public SDP into the local environment, which will have local configuration and optional customizations versioned locally.
Topology Definition - HMS provides a data format to describe various aspects of P4 Server components in use.
Failover Support for ... - HMS will provide Scheduled and Unscheduled Failover for the managed P4 components.
HMS Product Road Map === Version | Status | Target Timeframe | Key Features ------- | -------- | ---------------- | --------------------------- 2026.1 | *WIP* | Q3 2026 | Rebranding+New Features: Implement `hms update` and `hms upgrade` options to initiate a site-wide global topology upgrade without the human admin needing much knowledge of the global topology. An admin with super access that inherited the Perforce server fleet just yesterday should be able to confidently upgrade the whole thing tomorrow. This is to include all P4 server products (p4d/p4broker/p4p) in the entire global topology. (Swarm management is being considered for a future release). Also: Failover Take 2. Leverage `p4 failover`. HMS manages DFM brokers and knows what machine in the topology to execute `p4 failover` on. HMS now lives in a new home, the //p4-hms stream depot. Feature Descriptions --- * **SDP "Tight Ship" Version Management** - A necessary step on the path to successful automation across multiple machines is to solve basic version management challenges for the SDP itself. Essentially, P4 itself is used to version the SDP on all HMS hosts. An HMS host is any Perforce server process executes, be it a proxy, broker, master/commit server, replica, edge, Swarm, etc. The familiar SDP `/p4/common` structure is managed on all hosts from a single server, the p4hms server. That server in turn uses P4 native DVCS features to simplify the process of updating the SDP from The Workshop, taking advantage of merging power to merge updates to the stock/public SDP into the local environment, which will have local configuration and optional customizations versioned locally. * **Topology Definition** - HMS provides a data format to describe various aspects of P4 Server components in use. * **Failover Support for ...** - HMS will provide Scheduled and Unscheduled Failover for the managed P4 components.
| # | 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 <223556219+Copilot@users.noreply.github.com> |