P4Proxy.json #1

  • //
  • guest/
  • perforce_software/
  • sdp/
  • main/
  • helix_binaries/
  • P4Proxy.json
  • View
  • Commits
  • Open Download .zip Download (10 KB)
{
   "versions" : [
      {
         "platform" : "darwin90x86",
         "minor" : "2",
         "major" : "2016",
         "build" : "1677381"
      },
      {
         "platform" : "darwin90x86_64",
         "minor" : "2",
         "major" : "2016",
         "build" : "1677381"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2016",
         "build" : "1677381"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2016",
         "build" : "1677381"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2016",
         "build" : "1677381"
      },
      {
         "platform" : "ntx86",
         "minor" : "2",
         "major" : "2016",
         "build" : "1677381"
      },
      {
         "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" : "ntx86",
         "minor" : "1",
         "major" : "2022",
         "build" : "2409226"
      },
      {
         "platform" : "linux26x86",
         "minor" : "2",
         "major" : "2022",
         "build" : "2531894"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2022",
         "build" : "2531894"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "2",
         "major" : "2022",
         "build" : "2531894"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2022",
         "build" : "2531894"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2023",
         "build" : "2576871"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "1",
         "major" : "2023",
         "build" : "2576871"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2023",
         "build" : "2576871"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2578891"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2578891"
      },
      {
         "platform" : "macosx12arm64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2578891"
      },
      {
         "platform" : "ntx64",
         "minor" : "2",
         "major" : "2023",
         "build" : "2578891"
      },
      {
         "platform" : "linux26aarch64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2596294"
      },
      {
         "platform" : "linux26x86_64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2596294"
      },
      {
         "platform" : "macosx1015x86_64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2596294"
      },
      {
         "platform" : "macosx12arm64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2596294"
      },
      {
         "platform" : "ntx64",
         "minor" : "1",
         "major" : "2024",
         "build" : "2596294"
      }
   ]
}
# Change User Description Committed
#3 31677 C. Thomas Tyler Released SDP 2025.1.31674 (2025/06/04).
Copy Up using 'p4 copy -r -b perforce_software-sdp-dev'.
#2 31077 C. Thomas Tyler Released SDP 2024.2.31075 (2024/12/20).
Copy Up using 'p4 copy -r -b perforce_software-sdp-dev'.
#1 30388 C. Thomas Tyler Released SDP 2024.1.30385 (2024/06/11).
Copy Up using 'p4 copy -r -b perforce_software-sdp-dev'.
//guest/perforce_software/sdp/dev/helix_binaries/P4Proxy.json
#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