P4Broker.json #2

  • //
  • p4-sdp/
  • dev_rebrand/
  • p4_binaries/
  • P4Broker.json
  • View
  • Commits
  • Open Download .zip Download (11 KB)
{
   "versions" : [
      {
         "platform" : "darwin90x86",
         "minor" : "2",
         "major" : "2016",
         "build" : "1598668"
      },
      {
         "platform" : "darwin90x86_64",
         "minor" : "2",
         "major" : "2016",
         "build" : "1598668"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2016",
         "build" : "1598668"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2016",
         "build" : "1598668"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2016",
         "build" : "1598668"
      },
      {
         "platform" : "ntx86",
         "minor" : "2",
         "major" : "2016",
         "build" : "1598668"
      },
      {
         "platform" : "darwin90x86",
         "minor" : "1",
         "major" : "2017",
         "build" : "1738874"
      },
      {
         "platform" : "darwin90x86_64",
         "minor" : "1",
         "major" : "2017",
         "build" : "1738874"
      },
      {
         "platform" : "linux26x86",
         "minor" : "1",
         "major" : "2017",
         "build" : "1738874"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2017",
         "build" : "1738874"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2017",
         "build" : "1738874"
      },
      {
         "platform" : "ntx86",
         "minor" : "1",
         "major" : "2017",
         "build" : "1738874"
      },
      {
         "platform" : "darwin90x86",
         "minor" : "2",
         "major" : "2017",
         "build" : "1856030"
      },
      {
         "platform" : "darwin90x86_64",
         "minor" : "2",
         "major" : "2017",
         "build" : "1856030"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2017",
         "build" : "1856030"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2017",
         "build" : "1856030"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2017",
         "build" : "1856030"
      },
      {
         "platform" : "ntx86",
         "minor" : "2",
         "major" : "2017",
         "build" : "1856030"
      },
      {
         "platform" : "darwin90x86",
         "minor" : "1",
         "major" : "2018",
         "build" : "1957529"
      },
      {
         "platform" : "darwin90x86_64",
         "minor" : "1",
         "major" : "2018",
         "build" : "1957529"
      },
      {
         "platform" : "linux26x86",
         "minor" : "1",
         "major" : "2018",
         "build" : "1957529"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2018",
         "build" : "1957529"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2018",
         "build" : "1957529"
      },
      {
         "platform" : "ntx86",
         "minor" : "1",
         "major" : "2018",
         "build" : "1957529"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2018",
         "build" : "2055532"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2018",
         "build" : "2055532"
      },
      {
         "platform" : "macosx1010x86_64",
         "minor" : "2",
         "major" : "2018",
         "build" : "2055532"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2018",
         "build" : "2055532"
      },
      {
         "platform" : "ntx86",
         "minor" : "2",
         "major" : "2018",
         "build" : "2055532"
      },
      {
         "platform" : "linux26x86",
         "minor" : "1",
         "major" : "2019",
         "build" : "2135798"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2019",
         "build" : "2135798"
      },
      {
         "platform" : "macosx1010x86_64",
         "minor" : "1",
         "major" : "2019",
         "build" : "2135798"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2019",
         "build" : "2135798"
      },
      {
         "platform" : "ntx86",
         "minor" : "1",
         "major" : "2019",
         "build" : "2135798"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2019",
         "build" : "2224541"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2019",
         "build" : "2224541"
      },
      {
         "platform" : "macosx1010x86_64",
         "minor" : "2",
         "major" : "2019",
         "build" : "2224541"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2019",
         "build" : "2224541"
      },
      {
         "platform" : "ntx86",
         "minor" : "2",
         "major" : "2019",
         "build" : "2224541"
      },
      {
         "platform" : "linux26x86",
         "minor" : "1",
         "major" : "2020",
         "build" : "2298664"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2020",
         "build" : "2298664"
      },
      {
         "platform" : "macosx1010x86_64",
         "minor" : "1",
         "major" : "2020",
         "build" : "1953492"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "1",
         "major" : "2020",
         "build" : "2298664"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2020",
         "build" : "2298664"
      },
      {
         "platform" : "ntx86",
         "minor" : "1",
         "major" : "2020",
         "build" : "2298664"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2020",
         "build" : "2387343"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2020",
         "build" : "2387343"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "2",
         "major" : "2020",
         "build" : "2387343"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2020",
         "build" : "2387343"
      },
      {
         "platform" : "ntx86",
         "minor" : "2",
         "major" : "2020",
         "build" : "2387343"
      },
      {
         "platform" : "linux26x86",
         "minor" : "1",
         "major" : "2021",
         "build" : "2452965"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2021",
         "build" : "2452965"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "1",
         "major" : "2021",
         "build" : "2452965"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2021",
         "build" : "2452965"
      },
      {
         "platform" : "ntx86",
         "minor" : "1",
         "major" : "2021",
         "build" : "2452965"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2021",
         "build" : "2536545"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2021",
         "build" : "2536545"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "2",
         "major" : "2021",
         "build" : "2536545"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2021",
         "build" : "2536545"
      },
      {
         "platform" : "ntx86",
         "minor" : "2",
         "major" : "2021",
         "build" : "2410559"
      },
      {
         "platform" : "linux26x86",
         "minor" : "1",
         "major" : "2022",
         "build" : "2617865"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2022",
         "build" : "2617865"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "1",
         "major" : "2022",
         "build" : "2617865"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2022",
         "build" : "2617865"
      },
      {
         "platform" : "ntx86",
         "minor" : "1",
         "major" : "2022",
         "build" : "2409226"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2022",
         "build" : "2693782"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2022",
         "build" : "2693782"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "2",
         "major" : "2022",
         "build" : "2693782"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2022",
         "build" : "2693782"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2023",
         "build" : "2722319"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "1",
         "major" : "2023",
         "build" : "2722319"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2023",
         "build" : "2722319"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2723144"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2723144"
      },
      {
         "platform" : "macosx12arm64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2723144"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2723144"
      },
      {
         "platform" : "linux26aarch64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2724746"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2724746"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2724746"
      },
      {
         "platform" : "macosx12arm64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2724746"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2724746"
      },
      {
         "platform" : "linux26aarch64",
         "minor" : "2",
         "major" : "2024",
         "build" : "2726408"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2024",
         "build" : "2726408"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "2",
         "major" : "2024",
         "build" : "2726408"
      },
      {
         "platform" : "macosx12arm64",
         "minor" : "2",
         "major" : "2024",
         "build" : "2726408"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2024",
         "build" : "2726408"
      }
   ]
}
# Change User Description Committed
#2 31689 C. Thomas Tyler Merge Down in //p4-sdp dev -> dev_rebrand.
#1 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.
//p4-sdp/dev_rebrand/helix_binaries/P4Broker.json
#1 31593 C. Thomas Tyler Populate stream //p4-sdp/dev_rebrand from //p4-sdp/dev.
//p4-sdp/dev/helix_binaries/P4Broker.json
#1 31397 C. Thomas Tyler Populate -b SDP_Classic_to_Streams -s //guest/perforce_software/sdp/...@31368.
//guest/perforce_software/sdp/dev/helix_binaries/P4Broker.json
#2 31057 C. Thomas Tyler Updated JSON files
#1 30320 C. Thomas Tyler Added multi-platform support to include aarch64, and some modern OSX
variants.

Updated default Helix binary version to r24.1, which adds aarch64 builds.

Design Goals (achieved):
* No operational procedure changes requied, so users on existing platforms
don't need to learn new tricks.
* Changes to support multiple platforms/OS architectures are contained
entirely within the /p4/sdp/helix_binaries directory. The rest of the
SDP can remain blissfully unaware of platform specifics.

New capabilities:
* Uses 'uname' to detect current OS platform, mapping it to available Helix
builds for each binary.
* Uses 'jq' if available to parse P4*.json release list files to determine
if a build is available for the detected platform.
* Adds fallback logic.  For example, there is an aarch64 build for OSX 12+, but
not for x86_64. So if on OSX 12+ on x86_64, use the older-but-compatible
OSX 10.15 build for x86_64.
* Adds a new '-d' debug mode option, as the script gets complex.

New Files:
* Added P4*.json release list files to SDP package in /p4/sdp/helix_binaries.

These *.json files are updated as part of the Helix Core release process
for p4, p4d, p4broker, and p4p (and also P4V and others not relevant to
this script).

Bonus Content:
* Silently/harmlessly introduces as-yet-unused SDP_INSTALL_ROOT variable,
a prelude to future SDP refactoring.

Tested Platforms:
* linux26x86_64
* linux26aarch64
* macosx12arm64
* macosx12x86_64; exercises fallback to maxosx1015x86_64

#review-30313 @robert_cowham @mark_zinthefer @will_kreitzmann