Closed erjac77 closed 1 year ago
@erjac77 Can you provide the Pants version and run with RUST_BACKTRACE=1
as suggested above and report back?
Looking at the 4 possible src/main.rs
it could be:
1. [`scie-jump` | `ptex`]
2. -> `scie-pants`
3. (-> `pants native client`)
It looks like it can only be from phase 1, the scie-jump launch which uses ptex
which fails here:
https://github.com/a-scie/ptex/blob/v0.7.0/src/main.rs#L64-L68
The ptex
binary is embedded in scie-pants
, extracted under ~/.nce
and then used to fetch the Python Build Standalone CPython 3.9 distribution from GitHub Releases.
The BrokenPipe + Killed + exit code: 137 (128 + 9 = 137) => -9 => SIGKILL
And a process getting SIGKILLed on Linux when you weren't firing off kill -9
's willy-nilly means the OS did it (OOMKiller); so this is almost certainly the box / vm / container / what have you running out of memory. I am not seeing how the scie-jump change would lead to memory exhaustion, it actually does a very tiny bit less work now! (only decodes particular env vars instead of all of them). Is there any other variable you can think of @erjac77? In particular, upgrading scie-pants means any cache you have is blown away and PBS CPython 3.9 is re-downloaded, which is what is going on here. If the ~/.nce/
was / is cached, scie-pants 0.8.1 will pull from that cache but 0.8.2 will not (it will need to populate new cache entries. The failure is doing exactly that.
@erjac77 I'm going to tentatively label this question, since I think I've read enough tea leaves here to give good odds this is not actually the 0.8.1 -> 0.8.2 upgrade but something else that's been hidden bu the 0.8.1 cache hits. You could test that - if you dare - by blowing away the ~/.nce
cache and seeing if 0.8.1 fails in the same way. I'm betting it will.
Looking at that version of scie-pants
I find:
$ SCIE=inspect pants | jq '{scie_pants_version: .science.git_state, scie_jump_version: .scie.jump.version, files:.scie.lift.files[] | select(.key ==
"cpython39") | {name:.name, size:.size}}'
{
"scie_pants_version": "v0.8.2-0-g3fdd677",
"scie_jump_version": "0.11.1",
"files": {
"name": "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
"size": 25738357
}
}
So that's scie-pants
v0.8.2 using scie-jump
0.11.1 (the one with the utf8 env var fix) and the file it's trying to fetch for you is ~26MB.
Hi @jsirois , we don't use remote caching for now in Concourse, so it starts with a fresh install for each run. We use pants version 2.16.0rc4
.
I ran the pipeline with RUST_BACKTRACE=full
, but I don't see any useful messages.
#18 [build-stage 7/7] RUN ./get-pants.sh && pants --version
#18 0.605 Downloading and installing the pants launcher ...
#18 1.587 Installed the pants launcher from https://github.com/pantsbuild/scie-pants/releases/latest/download/scie-pants-linux-x86_64 to /root/bin/pants
#18 1.587
#18 1.587 Running `pants` in a Pants-enabled repo will use the version of Pants configured for that repo.
#18 1.587 In a repo not yet Pants-enabled, it will prompt you to set up Pants for that repo.
#18 2.199 thread 'main' panicked at 'Failed to write data to output: Os { code: 32, kind: BrokenPipe, message: "Broken pipe" }', src/main.rs:68:14
#18 2.199 stack backtrace:
#18 2.199 0: 0x7f2b0973b39c - <unknown>
#18 2.199 1: 0x7f2b096f620e - <unknown>
#18 2.199 2: 0x7f2b0971b4a4 - <unknown>
#18 2.199 3: 0x7f2b0973c877 - <unknown>
#18 2.199 4: 0x7f2b0973c5c5 - <unknown>
#18 2.199 5: 0x7f2b0973cbea - <unknown>
#18 2.199 6: 0x7f2b0973ca14 - <unknown>
#18 2.199 7: 0x7f2b0973c976 - <unknown>
#18 2.199 8: 0x7f2b0973c961 - <unknown>
#18 2.199 9: 0x7f2b096dfdd2 - <unknown>
#18 2.199 10: 0x7f2b096e0132 - <unknown>
#18 2.199 11: 0x7f2b096e6915 - <unknown>
#18 2.199 12: 0x7f2b0974ce62 - <unknown>
#18 2.199 13: 0x7f2b09753788 - <unknown>
#18 2.199 14: 0x7f2b0974af93 - <unknown>
#18 2.199 15: 0x7f2b0974b4b8 - <unknown>
#18 2.199 16: 0x7f2b0974403d - <unknown>
#18 2.199 17: 0x7f2b096e5cf5 - <unknown>
#18 2.199 18: 0x7f2b096eab7e - <unknown>
#18 2.199 19: 0x7f2b096ee009 - <unknown>
#18 2.199 20: 0x7f2b096e4373 - <unknown>
#18 2.199 21: 0x7f2b096efcc5 - <unknown>
#18 2.203 Killed
#18 ERROR: process "/bin/sh -c ./get-pants.sh && pants --version" did not complete successfully: exit code: 137
@erjac77 I don't mean remote caching, I mean local caching. I.E. saving the ~/.cache/nce
dir.
Thanks for the rust backtrace. If you read through my spewing above, I pretty quickly figured out where this had to be and dug down through to the OOMKiller being at play here. As I mentioned, there is nothing about 0.8.1 -> 0.8.2 that should be using more memory, but it seems like you're now confirming that your CI runs always start clean-slate - no saving / restoring of the ~/.cache/nce
directory - and simply toggling back and forth between scie-pants 0.8.1 <-> 0.8.2 toggles this OOMKiller. Is that correct? If so, what exactly are the specs of the host, vm or container the jobs run in? Presumably they have plenty more memory than needed by scie-pants to support Pants, which needs alot more.
Maybe you could get CI to run something like this in its bash script instead and share the results?:
$ bash -c '
set -euo pipefail
SCIE_BASE=$(mktemp -d) pants -V &
pid="$!"
while true; do
grep -E "^VmRSS" /proc/${pid}/status
sleep 1
done
'
VmRSS: 256 kB
Downloading https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz...
Downloading https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz...
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
Bootstrapping Pants 2.15.0 using cpython 3.9.16
Installing pantsbuild.pants==2.15.0 into a virtual environment at /tmp/tmp.SrJyadjrv2/c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d/bindings/venvs/2.15.0
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
VmRSS: 6796 kB
New virtual environment successfully created at /tmp/tmp.SrJyadjrv2/c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d/bindings/venvs/2.15.0.
VmRSS: 32008 kB
2.15.0
grep: /proc/582168/status: No such file or directory
N.B.: I used a mktemp -d
there to force a fresh nce cache and thus force a PBS download. In this example you can see that during the down ~no memory is used and then it spikes up after Pants is installed and launches in order to print our its version.
A bit more thorough example. I include VmPeak as well and start with 0.8.1 then switch to 0.8.2:
$ SCIE_BOOT=update pants 0.8.1
Successfully installed scie-pants 0.8.1 to /home/jsirois/bin/pants
$ bash -c '
set -euo pipefail
SCIE_BASE=$(mktemp -d) pants -V &
pid="$!"
while true; do
grep -E "^Vm(RSS|Peak)" /proc/${pid}/status >&2
sleep 1
done
'
VmPeak: 9972 kB
VmRSS: 260 kB
Downloading https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz...
[00:00:00] [####>-------------------------] 4.06 MiB/24.55 MiB (eta: 1.6s) VmPeak: 9524 kB
Downloading https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz...
[00:00:01] [######################>-------] 18.09 MiB/24.55 MiB (eta: 0.5s) VmPeak: 9524 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
Downloading https://binaries.pantsbuild.org/tags/pantsbuild.pants/release_2.15.0...
[00:00:00] [##############################] 0B/0B (eta: 0.0s) VmPeak: 9604 kB
Downloading https://binaries.pantsbuild.org?prefix=wheels/3rdparty/214abc14303f11f70b1588cc828ec4b409315d0d...
[00:00:00] [##############################] 16.69 KiB/0B (eta: 0.0s) VmPeak: 9604 kB
Bootstrapping Pants 2.15.0 using cpython 3.9.16
Installing pantsbuild.pants==2.15.0 into a virtual environment at /tmp/tmp.eTX9jFOyuk/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/venvs/2.15.0
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
VmPeak: 9604 kB
VmRSS: 6832 kB
New virtual environment successfully created at /tmp/tmp.eTX9jFOyuk/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/venvs/2.15.0.
2.15.0
grep: /proc/584092/status: No such file or directory
$ SCIE_BOOT=update pants 0.8.2
Successfully installed scie-pants 0.8.2 to /home/jsirois/bin/pants
$ bash -c '
set -euo pipefail
SCIE_BASE=$(mktemp -d) pants -V &
pid="$!"
while true; do
grep -E "^Vm(RSS|Peak)" /proc/${pid}/status >&2
sleep 1
done
'
VmPeak: 9972 kB
VmRSS: 256 kB
Downloading https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz...
[00:00:00] [#####>------------------------] 4.82 MiB/24.55 MiB (eta: 1.6s) VmPeak: 9604 kB
Downloading https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz...
[00:00:01] [#######################>------] 19.05 MiB/24.55 MiB (eta: 0.4s) VmPeak: 9604 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
Downloading https://binaries.pantsbuild.org/tags/pantsbuild.pants/release_2.15.0...
[00:00:00] [##############################] 0B/0B (eta: 0.0s) VmPeak: 9684 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
Bootstrapping Pants 2.15.0 using cpython 3.9.16
Installing pantsbuild.pants==2.15.0 into a virtual environment at /tmp/tmp.RTOovocBrj/c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d/bindings/venvs/2.15.0
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
VmPeak: 9684 kB
VmRSS: 6852 kB
New virtual environment successfully created at /tmp/tmp.RTOovocBrj/c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d/bindings/venvs/2.15.0.
2.15.0
grep: /proc/584333/status: No such file or directory
@jsirois I confirm that our CI runs always start with a clean state and using the latest version of scie-pants triggers the OOMKiller. We don't have the problem when we force back to 0.8.1.
I don't think the problem is due to a memory exhaustion, since we have plenty of ressources, and I even crank up the limits to the maximum under the Concourse task:
container_limits:
cpu: 384
memory: 20gb
Here the output with VmRSS/PEAK:
vmrss.sh
#!/usr/bin/env bash
set -euo pipefail
SCIE_BASE=$(mktemp -d) pants -V &
pid="$!"
while true; do
grep -E "^Vm(RSS|Peak)" /proc/${pid}/status >&2
sleep 1
done
#18 [build-stage 7/7] RUN chmod +x vmrss.sh && ./get-pants.sh && ./vmrss.sh && pants --version
#18 0.381 Downloading and installing the pants launcher ...
#18 0.996 Installed the pants launcher from https://github.com/pantsbuild/scie-pants/releases/latest/download/scie-pants-linux-x86_64 to /root/bin/pants
#18 0.997
#18 0.997 Running `pants` in a Pants-enabled repo will use the version of Pants configured for that repo.
#18 0.997 In a repo not yet Pants-enabled, it will prompt you to set up Pants for that repo.
#18 1.010 VmPeak: 5784 kB
#18 1.010 VmRSS: 2168 kB
#18 1.372 thread 'main' panicked at 'Failed to write data to output: Os { code: 32, kind: BrokenPipe, message: "Broken pipe" }', src/main.rs:68:14
#18 1.372 stack backtrace:
#18 1.372 0: 0x7faa2170639c - <unknown>
#18 1.372 1: 0x7faa216c120e - <unknown>
#18 1.372 2: 0x7faa216e64a4 - <unknown>
#18 1.372 3: 0x7faa21707877 - <unknown>
#18 1.372 4: 0x7faa217075c5 - <unknown>
#18 1.372 5: 0x7faa21707bea - <unknown>
#18 1.373 6: 0x7faa21707a14 - <unknown>
#18 1.373 7: 0x7faa21707976 - <unknown>
#18 1.373 8: 0x7faa21707961 - <unknown>
#18 1.373 9: 0x7faa216aadd2 - <unknown>
#18 1.373 10: 0x7faa216ab132 - <unknown>
#18 1.373 11: 0x7faa216b1915 - <unknown>
#18 1.373 12: 0x7faa21717e62 - <unknown>
#18 1.373 13: 0x7faa2171e788 - <unknown>
#18 1.373 14: 0x7faa21715f93 - <unknown>
#18 1.373 15: 0x7faa217164b8 - <unknown>
#18 1.373 16: 0x7faa2170f03d - <unknown>
#18 1.373 17: 0x7faa216b0cf5 - <unknown>
#18 1.373 18: 0x7faa216b5b7e - <unknown>
#18 1.373 19: 0x7faa216b9009 - <unknown>
#18 1.373 20: 0x7faa216af373 - <unknown>
#18 1.373 21: 0x7faa216bacc5 - <unknown>
#18 2.016 ./vmrss.sh: line 10: 28 Killed SCIE_BASE=$(mktemp -d) pants -V
#18 2.020 grep: /proc/28/status: No such file or directory
#18 ERROR: process "/bin/sh -c chmod +x vmrss.sh && ./get-pants.sh && ./vmrss.sh && pants --version" did not complete successfully: exit code: 2
Alrighty, thanks @erjac77 that is pretty crisp. You can remove the vmrss.sh
experiment from the debug stack.
If you can re-run though through CI with RUST_LOG=trace
in the environment and provide that output, I'd be grateful.
#18 [build-stage 7/7] RUN ./get-pants.sh && pants --version
#18 0.472 Downloading and installing the pants launcher ...
#18 1.297 Installed the pants launcher from https://github.com/pantsbuild/scie-pants/releases/latest/download/scie-pants-linux-x86_64 to /root/bin/pants
#18 1.297
#18 1.297 Running `pants` in a Pants-enabled repo will use the version of Pants configured for that repo.
#18 1.297 In a repo not yet Pants-enabled, it will prompt you to set up Pants for that repo.
#18 1.352 [DEBUG TimerFinished] lift::assemble(), Elapsed=5.7µs
#18 1.352 [DEBUG TimerFinished] fingerprint::digest(), Elapsed=51.5µs
#18 1.352 [DEBUG TimerFinished] lift::load_scie(), Elapsed=269.202µs
#18 1.352 [TRACE jump] Loaded lift manifest from /root/bin/pants:
#18 1.352 Lift {
#18 1.352 name: "scie-pants",
#18 1.352 description: Some(
#18 1.352 "Isolates your Pants from the elements.",
#18 1.352 ),
#18 1.352 base: None,
#18 1.352 load_dotenv: true,
#18 1.352 size: 5862,
#18 1.352 hash: "c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d",
#18 1.352 boot: Boot {
#18 1.352 commands: {
#18 1.352 "": Cmd {
#18 1.352 exe: "{scie-pants.bin}",
#18 1.352 args: [],
#18 1.352 env: {},
#18 1.352 description: None,
#18 1.352 },
#18 1.352 "bootstrap-tools": Cmd {
#18 1.352 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.352 args: [
#18 1.352 "{tools.pex}",
#18 1.352 "bootstrap-tools",
#18 1.352 "--python-distribution-hash",
#18 1.352 "{scie.files:hash.{scie.bindings.configure:PYTHON}}",
#18 1.352 "--pants-version",
#18 1.352 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.352 ],
#18 1.352 env: {
#18 1.352 Replace(
#18 1.352 "PEX_PYTHON_PATH",
#18 1.352 ): Some(
#18 1.352 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "PEX_ROOT",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings}/pex_root",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.352 ): Some(
#18 1.352 "python/bin/python3.8",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.352 ): Some(
#18 1.352 "python/bin/python3.9",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PEX_.*",
#18 1.352 ): None,
#18 1.352 },
#18 1.352 description: None,
#18 1.352 },
#18 1.352 "pants": Cmd {
#18 1.352 exe: "{scie.bindings.install:PANTS_CLIENT_EXE}",
#18 1.352 args: [
#18 1.352 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.352 ],
#18 1.352 env: {
#18 1.352 Replace(
#18 1.352 "PANTS_VERSION",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "_PANTS_SERVER_EXE",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings.install:PANTS_SERVER_EXE}",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PANTS_BUILDROOT_OVERRIDE",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.352 ),
#18 1.352 },
#18 1.352 description: None,
#18 1.352 },
#18 1.352 "pants-debug": Cmd {
#18 1.352 exe: "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.352 args: [
#18 1.352 "-c",
#18 1.352 "sys = __import__(\"sys\")\nsys.path.pop(0)\nprint(\n \"Launching debugpy server at '127.0.0.1:5678' and waiting for client connection.\",\n file=sys.stderr\n)\ndel sys\n__import__(\"debugpy.server.cli\").server.cli.main()\n",
#18 1.352 "--listen",
#18 1.352 "127.0.0.1:5678",
#18 1.352 "--wait-for-client",
#18 1.352 "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.352 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.352 ],
#18 1.352 env: {
#18 1.352 Replace(
#18 1.352 "PANTS_VERSION",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PANTS_BUILDROOT_OVERRIDE",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.352 ),
#18 1.352 },
#18 1.352 description: None,
#18 1.352 },
#18 1.352 "update": Cmd {
#18 1.352 exe: "{cpython39}/python/bin/python3.9",
#18 1.352 args: [
#18 1.352 "{tools.pex}",
#18 1.352 "update-scie-pants",
#18 1.352 "--ptex-path",
#18 1.352 "{ptex}",
#18 1.352 "--platform",
#18 1.352 "{scie.platform}",
#18 1.352 "--base-dir",
#18 1.352 "{scie.bindings}",
#18 1.352 "--scie",
#18 1.352 "{scie}",
#18 1.352 "--current-version",
#18 1.352 "{scie.bindings.scie-pants-info:VERSION}",
#18 1.352 "--github-api-bearer-token",
#18 1.352 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.352 ],
#18 1.352 env: {
#18 1.352 Replace(
#18 1.352 "PEX_PYTHON_PATH",
#18 1.352 ): Some(
#18 1.352 "{cpython39}/python/bin/python3.9",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "PEX_ROOT",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings}/pex_root",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PEX_.*",
#18 1.352 ): None,
#18 1.352 },
#18 1.352 description: None,
#18 1.352 },
#18 1.352 },
#18 1.352 bindings: {
#18 1.352 "configure": Cmd {
#18 1.352 exe: "{cpython39}/python/bin/python3.9",
#18 1.352 args: [
#18 1.352 "{tools.pex}",
#18 1.352 "configure-pants",
#18 1.352 "--ptex-path",
#18 1.352 "{ptex}",
#18 1.352 "--pants-version",
#18 1.352 "{scie.env.PANTS_VERSION}",
#18 1.352 "--pants-sha",
#18 1.352 "{scie.env.PANTS_SHA}",
#18 1.352 "--pants-config",
#18 1.352 "{scie.env.PANTS_TOML}",
#18 1.352 "--github-api-bearer-token",
#18 1.352 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.352 "{scie.bindings}",
#18 1.352 ],
#18 1.352 env: {
#18 1.352 Replace(
#18 1.352 "PEX_PYTHON_PATH",
#18 1.352 ): Some(
#18 1.352 "{cpython39}/python/bin/python3.9",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "PEX_ROOT",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings}/pex_root",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PANTS_VERSION_PROMPT_SALT",
#18 1.352 ): Some(
#18 1.352 "{scie.env.PANTS_VERSION_PROMPT_SALT}",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PEX_.*",
#18 1.352 ): None,
#18 1.352 },
#18 1.352 description: None,
#18 1.352 },
#18 1.352 "fetch": Cmd {
#18 1.352 exe: "{ptex}",
#18 1.352 args: [
#18 1.352 "{scie.env.PANTS_BOOTSTRAP_URLS={scie.lift}}",
#18 1.352 ],
#18 1.352 env: {},
#18 1.352 description: None,
#18 1.352 },
#18 1.352 "install": Cmd {
#18 1.352 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.352 args: [
#18 1.352 "{tools.pex}",
#18 1.352 "install-pants",
#18 1.352 "--pants-version",
#18 1.352 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.352 "--find-links",
#18 1.352 "{scie.bindings.configure:FIND_LINKS}",
#18 1.352 "--debug",
#18 1.352 "{scie.env.PANTS_DEBUG}",
#18 1.352 "--debugpy-requirement",
#18 1.352 "{scie.env.PANTS_DEBUGPY_VERSION}",
#18 1.352 "{scie.bindings}",
#18 1.352 ],
#18 1.352 env: {
#18 1.352 Replace(
#18 1.352 "PEX_PYTHON_PATH",
#18 1.352 ): Some(
#18 1.352 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "PEX_ROOT",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings}/pex_root",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.352 ): Some(
#18 1.352 "python/bin/python3.8",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.352 ): Some(
#18 1.352 "python/bin/python3.9",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PEX_.*",
#18 1.352 ): None,
#18 1.352 },
#18 1.352 description: None,
#18 1.352 },
#18 1.352 "scie-pants-info": Cmd {
#18 1.352 exe: "{cpython39}/python/bin/python3.9",
#18 1.352 args: [
#18 1.352 "{tools.pex}",
#18 1.352 "record-scie-pants-info",
#18 1.352 "--base-dir",
#18 1.352 "{scie.bindings}",
#18 1.352 "--scie",
#18 1.352 "{scie}",
#18 1.352 ],
#18 1.352 env: {
#18 1.352 Replace(
#18 1.352 "PEX_PYTHON_PATH",
#18 1.352 ): Some(
#18 1.352 "{cpython39}/python/bin/python3.9",
#18 1.352 ),
#18 1.352 Replace(
#18 1.352 "PEX_ROOT",
#18 1.352 ): Some(
#18 1.352 "{scie.bindings}/pex_root",
#18 1.352 ),
#18 1.352 Default(
#18 1.352 "PEX_.*",
#18 1.352 ): None,
#18 1.352 },
#18 1.352 description: None,
#18 1.352 },
#18 1.352 },
#18 1.352 },
#18 1.352 files: [
#18 1.352 File {
#18 1.352 name: "ptex-linux-x86_64",
#18 1.352 key: Some(
#18 1.352 "ptex",
#18 1.352 ),
#18 1.352 size: 3904904,
#18 1.352 hash: "22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb",
#18 1.352 file_type: Blob,
#18 1.352 executable: Some(
#18 1.352 true,
#18 1.352 ),
#18 1.352 eager_extract: false,
#18 1.352 source: Scie,
#18 1.352 },
#18 1.352 File {
#18 1.352 name: "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.352 key: Some(
#18 1.352 "cpython38",
#18 1.352 ),
#18 1.352 size: 25953194,
#18 1.352 hash: "8522b181c018e798ecb7dc54b5eedf7686cb258e6e33b3f7f0488ceb912a341e",
#18 1.352 file_type: Archive(
#18 1.352 CompressedTar(
#18 1.352 Gzip,
#18 1.352 ),
#18 1.352 ),
#18 1.352 executable: None,
#18 1.352 eager_extract: false,
#18 1.352 source: LoadBinding(
#18 1.352 "fetch",
#18 1.352 ),
#18 1.352 },
#18 1.352 File {
#18 1.352 name: "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.352 key: Some(
#18 1.352 "cpython39",
#18 1.352 ),
#18 1.352 size: 25738357,
#18 1.352 hash: "2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b",
#18 1.352 file_type: Archive(
#18 1.352 CompressedTar(
#18 1.352 Gzip,
#18 1.352 ),
#18 1.352 ),
#18 1.352 executable: None,
#18 1.352 eager_extract: false,
#18 1.352 source: LoadBinding(
#18 1.352 "fetch",
#18 1.352 ),
#18 1.352 },
#18 1.352 File {
#18 1.352 name: "scie-pants.bin",
#18 1.352 key: None,
#18 1.352 size: 759960,
#18 1.352 hash: "5a50ec9774acbbcb281fa6e51f5162a777d759e96ec375b8b9df120091c447eb",
#18 1.352 file_type: Blob,
#18 1.352 executable: Some(
#18 1.352 true,
#18 1.352 ),
#18 1.352 eager_extract: false,
#18 1.352 source: Scie,
#18 1.352 },
#18 1.352 File {
#18 1.352 name: "tools.pex",
#18 1.352 key: None,
#18 1.352 size: 1285047,
#18 1.352 hash: "5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb",
#18 1.352 file_type: Blob,
#18 1.352 executable: Some(
#18 1.352 true,
#18 1.352 ),
#18 1.352 eager_extract: false,
#18 1.352 source: Scie,
#18 1.352 },
#18 1.352 ],
#18 1.352 other: Some(
#18 1.352 Other {
#18 1.352 other: {
#18 1.352 "ptex": Object {
#18 1.352 "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.8.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.352 "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.352 },
#18 1.352 "science": Object {
#18 1.352 "app_info": Object {
#18 1.352 "repo": String("https://github.com/pantsbuild/scie-pants"),
#18 1.352 },
#18 1.352 "binary": Object {
#18 1.352 "hash": String("8e308fc8ee839d9bba6da1f7271c1b8b7c895fab97b8c57b0f837314fcc5a295"),
#18 1.352 "size": Number(6465489),
#18 1.352 "url": String("https://github.com/a-scie/lift/releases/download/v0.1.2/science-linux-x86_64"),
#18 1.352 "version": String("0.1.2"),
#18 1.352 },
#18 1.352 "git_state": String("v0.8.2-0-g3fdd677"),
#18 1.352 "manifest": Object {
#18 1.352 "hash": String("4a275dd4822a4da1455993d22c41e05eb7164ba7e07c69e6c7143dfaf3181b4a"),
#18 1.352 "size": Number(5300),
#18 1.352 "source": String("package/scie-pants.toml"),
#18 1.352 },
#18 1.352 "notes": Array [
#18 1.352 String("This scie lift JSON manifest was generated from a source lift toml manifest using the science binary."),
#18 1.352 String("Find out more here: https://github.com/a-scie/lift/blob/v0.1.2/README.md"),
#18 1.352 ],
#18 1.352 },
#18 1.352 },
#18 1.352 },
#18 1.352 ),
#18 1.352 }
#18 1.352 [DEBUG jump] Loaded env file from /app/.env
#18 1.352 [DEBUG TimerFinished] jump::load_dotenv, Elapsed=72.101µs
#18 1.352 [DEBUG TimerFinished] Context::new(), Elapsed=24.8µs
#18 1.358 [DEBUG TimerFinished] fingerprint::digest_reader(), Elapsed=5.244453ms
#18 1.358 [DEBUG jump::installer] The blob destination /root/.cache/nce/5a50ec9774acbbcb281fa6e51f5162a777d759e96ec375b8b9df120091c447eb/scie-pants.bin of size 759960 had expected hash
#18 1.364 [DEBUG TimerFinished] installer::unpack_blob(), Elapsed=11.474917ms
#18 1.364 [DEBUG TimerFinished] Installer::install(), Elapsed=11.494917ms
#18 1.364 [TRACE jump] Prepared Process {
#18 1.364 env: EnvVars {
#18 1.364 vars: [],
#18 1.364 },
#18 1.364 exe: "/root/.cache/nce/5a50ec9774acbbcb281fa6e51f5162a777d759e96ec375b8b9df120091c447eb/scie-pants.bin",
#18 1.364 args: [],
#18 1.364 }
#18 1.364 [DEBUG TimerFinished] jump::prepare_boot(), Elapsed=12.545728ms
#18 1.370 [DEBUG TimerFinished] BuildRoot::find(), Elapsed=17.3µs
#18 1.371 [DEBUG TimerFinished] PantsConfig::parse(), Elapsed=217.702µs
#18 1.371 [INFO scie_pants] Found Pants build root at Some("/app")
#18 1.371 [INFO scie_pants] The required Pants version is Some("2.16.0rc4")
#18 1.371 [DEBUG TimerFinished] scie-pants::get_pants_process(), Elapsed=299.103µs
#18 1.371 [TRACE scie_pants] Launching: Process {
#18 1.371 exe: "/root/bin/pants",
#18 1.371 args: [],
#18 1.371 env: [
#18 1.371 (
#18 1.371 "SCIE_BOOT",
#18 1.371 "pants",
#18 1.371 ),
#18 1.371 (
#18 1.371 "PANTS_BIN_NAME",
#18 1.371 "pants",
#18 1.371 ),
#18 1.371 (
#18 1.371 "PANTS_DEBUG",
#18 1.371 "",
#18 1.371 ),
#18 1.371 (
#18 1.371 "PANTS_BUILDROOT_OVERRIDE",
#18 1.371 "/app",
#18 1.371 ),
#18 1.371 (
#18 1.371 "PANTS_VERSION",
#18 1.371 "2.16.0rc4",
#18 1.371 ),
#18 1.371 ],
#18 1.371 }
#18 1.372 [DEBUG TimerFinished] lift::assemble(), Elapsed=3µs
#18 1.372 [DEBUG TimerFinished] fingerprint::digest(), Elapsed=42.001µs
#18 1.372 [DEBUG TimerFinished] lift::load_scie(), Elapsed=209.902µs
#18 1.373 [TRACE jump] Loaded lift manifest from /root/bin/pants:
#18 1.373 Lift {
#18 1.373 name: "scie-pants",
#18 1.373 description: Some(
#18 1.373 "Isolates your Pants from the elements.",
#18 1.373 ),
#18 1.373 base: None,
#18 1.373 load_dotenv: true,
#18 1.373 size: 5862,
#18 1.373 hash: "c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d",
#18 1.373 boot: Boot {
#18 1.373 commands: {
#18 1.373 "": Cmd {
#18 1.373 exe: "{scie-pants.bin}",
#18 1.373 args: [],
#18 1.373 env: {},
#18 1.373 description: None,
#18 1.373 },
#18 1.373 "bootstrap-tools": Cmd {
#18 1.373 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.373 args: [
#18 1.373 "{tools.pex}",
#18 1.373 "bootstrap-tools",
#18 1.373 "--python-distribution-hash",
#18 1.373 "{scie.files:hash.{scie.bindings.configure:PYTHON}}",
#18 1.373 "--pants-version",
#18 1.373 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.373 ],
#18 1.373 env: {
#18 1.373 Replace(
#18 1.373 "PEX_PYTHON_PATH",
#18 1.373 ): Some(
#18 1.373 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "PEX_ROOT",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings}/pex_root",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.373 ): Some(
#18 1.373 "python/bin/python3.8",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.373 ): Some(
#18 1.373 "python/bin/python3.9",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PEX_.*",
#18 1.373 ): None,
#18 1.373 },
#18 1.373 description: None,
#18 1.373 },
#18 1.373 "pants": Cmd {
#18 1.373 exe: "{scie.bindings.install:PANTS_CLIENT_EXE}",
#18 1.373 args: [
#18 1.373 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.373 ],
#18 1.373 env: {
#18 1.373 Replace(
#18 1.373 "PANTS_VERSION",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "_PANTS_SERVER_EXE",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings.install:PANTS_SERVER_EXE}",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PANTS_BUILDROOT_OVERRIDE",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.373 ),
#18 1.373 },
#18 1.373 description: None,
#18 1.373 },
#18 1.373 "pants-debug": Cmd {
#18 1.373 exe: "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.373 args: [
#18 1.373 "-c",
#18 1.373 "sys = __import__(\"sys\")\nsys.path.pop(0)\nprint(\n \"Launching debugpy server at '127.0.0.1:5678' and waiting for client connection.\",\n file=sys.stderr\n)\ndel sys\n__import__(\"debugpy.server.cli\").server.cli.main()\n",
#18 1.373 "--listen",
#18 1.373 "127.0.0.1:5678",
#18 1.373 "--wait-for-client",
#18 1.373 "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.373 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.373 ],
#18 1.373 env: {
#18 1.373 Replace(
#18 1.373 "PANTS_VERSION",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PANTS_BUILDROOT_OVERRIDE",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.373 ),
#18 1.373 },
#18 1.373 description: None,
#18 1.373 },
#18 1.373 "update": Cmd {
#18 1.373 exe: "{cpython39}/python/bin/python3.9",
#18 1.373 args: [
#18 1.373 "{tools.pex}",
#18 1.373 "update-scie-pants",
#18 1.373 "--ptex-path",
#18 1.373 "{ptex}",
#18 1.373 "--platform",
#18 1.373 "{scie.platform}",
#18 1.373 "--base-dir",
#18 1.373 "{scie.bindings}",
#18 1.373 "--scie",
#18 1.373 "{scie}",
#18 1.373 "--current-version",
#18 1.373 "{scie.bindings.scie-pants-info:VERSION}",
#18 1.373 "--github-api-bearer-token",
#18 1.373 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.373 ],
#18 1.373 env: {
#18 1.373 Replace(
#18 1.373 "PEX_PYTHON_PATH",
#18 1.373 ): Some(
#18 1.373 "{cpython39}/python/bin/python3.9",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "PEX_ROOT",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings}/pex_root",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PEX_.*",
#18 1.373 ): None,
#18 1.373 },
#18 1.373 description: None,
#18 1.373 },
#18 1.373 },
#18 1.373 bindings: {
#18 1.373 "configure": Cmd {
#18 1.373 exe: "{cpython39}/python/bin/python3.9",
#18 1.373 args: [
#18 1.373 "{tools.pex}",
#18 1.373 "configure-pants",
#18 1.373 "--ptex-path",
#18 1.373 "{ptex}",
#18 1.373 "--pants-version",
#18 1.373 "{scie.env.PANTS_VERSION}",
#18 1.373 "--pants-sha",
#18 1.373 "{scie.env.PANTS_SHA}",
#18 1.373 "--pants-config",
#18 1.373 "{scie.env.PANTS_TOML}",
#18 1.373 "--github-api-bearer-token",
#18 1.373 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.373 "{scie.bindings}",
#18 1.373 ],
#18 1.373 env: {
#18 1.373 Replace(
#18 1.373 "PEX_PYTHON_PATH",
#18 1.373 ): Some(
#18 1.373 "{cpython39}/python/bin/python3.9",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "PEX_ROOT",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings}/pex_root",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PANTS_VERSION_PROMPT_SALT",
#18 1.373 ): Some(
#18 1.373 "{scie.env.PANTS_VERSION_PROMPT_SALT}",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PEX_.*",
#18 1.373 ): None,
#18 1.373 },
#18 1.373 description: None,
#18 1.373 },
#18 1.373 "fetch": Cmd {
#18 1.373 exe: "{ptex}",
#18 1.373 args: [
#18 1.373 "{scie.env.PANTS_BOOTSTRAP_URLS={scie.lift}}",
#18 1.373 ],
#18 1.373 env: {},
#18 1.373 description: None,
#18 1.373 },
#18 1.373 "install": Cmd {
#18 1.373 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.373 args: [
#18 1.373 "{tools.pex}",
#18 1.373 "install-pants",
#18 1.373 "--pants-version",
#18 1.373 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.373 "--find-links",
#18 1.373 "{scie.bindings.configure:FIND_LINKS}",
#18 1.373 "--debug",
#18 1.373 "{scie.env.PANTS_DEBUG}",
#18 1.373 "--debugpy-requirement",
#18 1.373 "{scie.env.PANTS_DEBUGPY_VERSION}",
#18 1.373 "{scie.bindings}",
#18 1.373 ],
#18 1.373 env: {
#18 1.373 Replace(
#18 1.373 "PEX_PYTHON_PATH",
#18 1.373 ): Some(
#18 1.373 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "PEX_ROOT",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings}/pex_root",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.373 ): Some(
#18 1.373 "python/bin/python3.8",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.373 ): Some(
#18 1.373 "python/bin/python3.9",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PEX_.*",
#18 1.373 ): None,
#18 1.373 },
#18 1.373 description: None,
#18 1.373 },
#18 1.373 "scie-pants-info": Cmd {
#18 1.373 exe: "{cpython39}/python/bin/python3.9",
#18 1.373 args: [
#18 1.373 "{tools.pex}",
#18 1.373 "record-scie-pants-info",
#18 1.373 "--base-dir",
#18 1.373 "{scie.bindings}",
#18 1.373 "--scie",
#18 1.373 "{scie}",
#18 1.373 ],
#18 1.373 env: {
#18 1.373 Replace(
#18 1.373 "PEX_PYTHON_PATH",
#18 1.373 ): Some(
#18 1.373 "{cpython39}/python/bin/python3.9",
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 "PEX_ROOT",
#18 1.373 ): Some(
#18 1.373 "{scie.bindings}/pex_root",
#18 1.373 ),
#18 1.373 Default(
#18 1.373 "PEX_.*",
#18 1.373 ): None,
#18 1.373 },
#18 1.373 description: None,
#18 1.373 },
#18 1.373 },
#18 1.373 },
#18 1.373 files: [
#18 1.373 File {
#18 1.373 name: "ptex-linux-x86_64",
#18 1.373 key: Some(
#18 1.373 "ptex",
#18 1.373 ),
#18 1.373 size: 3904904,
#18 1.373 hash: "22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb",
#18 1.373 file_type: Blob,
#18 1.373 executable: Some(
#18 1.373 true,
#18 1.373 ),
#18 1.373 eager_extract: false,
#18 1.373 source: Scie,
#18 1.373 },
#18 1.373 File {
#18 1.373 name: "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.373 key: Some(
#18 1.373 "cpython38",
#18 1.373 ),
#18 1.373 size: 25953194,
#18 1.373 hash: "8522b181c018e798ecb7dc54b5eedf7686cb258e6e33b3f7f0488ceb912a341e",
#18 1.373 file_type: Archive(
#18 1.373 CompressedTar(
#18 1.373 Gzip,
#18 1.373 ),
#18 1.373 ),
#18 1.373 executable: None,
#18 1.373 eager_extract: false,
#18 1.373 source: LoadBinding(
#18 1.373 "fetch",
#18 1.373 ),
#18 1.373 },
#18 1.373 File {
#18 1.373 name: "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.373 key: Some(
#18 1.373 "cpython39",
#18 1.373 ),
#18 1.373 size: 25738357,
#18 1.373 hash: "2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b",
#18 1.373 file_type: Archive(
#18 1.373 CompressedTar(
#18 1.373 Gzip,
#18 1.373 ),
#18 1.373 ),
#18 1.373 executable: None,
#18 1.373 eager_extract: false,
#18 1.373 source: LoadBinding(
#18 1.373 "fetch",
#18 1.373 ),
#18 1.373 },
#18 1.373 File {
#18 1.373 name: "scie-pants.bin",
#18 1.373 key: None,
#18 1.373 size: 759960,
#18 1.373 hash: "5a50ec9774acbbcb281fa6e51f5162a777d759e96ec375b8b9df120091c447eb",
#18 1.373 file_type: Blob,
#18 1.373 executable: Some(
#18 1.373 true,
#18 1.373 ),
#18 1.373 eager_extract: false,
#18 1.373 source: Scie,
#18 1.373 },
#18 1.373 File {
#18 1.373 name: "tools.pex",
#18 1.373 key: None,
#18 1.373 size: 1285047,
#18 1.373 hash: "5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb",
#18 1.373 file_type: Blob,
#18 1.373 executable: Some(
#18 1.373 true,
#18 1.373 ),
#18 1.373 eager_extract: false,
#18 1.373 source: Scie,
#18 1.373 },
#18 1.373 ],
#18 1.373 other: Some(
#18 1.373 Other {
#18 1.373 other: {
#18 1.373 "ptex": Object {
#18 1.373 "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.8.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.373 "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.373 },
#18 1.373 "science": Object {
#18 1.373 "app_info": Object {
#18 1.373 "repo": String("https://github.com/pantsbuild/scie-pants"),
#18 1.373 },
#18 1.373 "binary": Object {
#18 1.373 "hash": String("8e308fc8ee839d9bba6da1f7271c1b8b7c895fab97b8c57b0f837314fcc5a295"),
#18 1.373 "size": Number(6465489),
#18 1.373 "url": String("https://github.com/a-scie/lift/releases/download/v0.1.2/science-linux-x86_64"),
#18 1.373 "version": String("0.1.2"),
#18 1.373 },
#18 1.373 "git_state": String("v0.8.2-0-g3fdd677"),
#18 1.373 "manifest": Object {
#18 1.373 "hash": String("4a275dd4822a4da1455993d22c41e05eb7164ba7e07c69e6c7143dfaf3181b4a"),
#18 1.373 "size": Number(5300),
#18 1.373 "source": String("package/scie-pants.toml"),
#18 1.373 },
#18 1.373 "notes": Array [
#18 1.373 String("This scie lift JSON manifest was generated from a source lift toml manifest using the science binary."),
#18 1.373 String("Find out more here: https://github.com/a-scie/lift/blob/v0.1.2/README.md"),
#18 1.373 ],
#18 1.373 },
#18 1.373 },
#18 1.373 },
#18 1.373 ),
#18 1.373 }
#18 1.373 [DEBUG jump] Loaded env file from /app/.env
#18 1.373 [DEBUG TimerFinished] jump::load_dotenv, Elapsed=53.5µs
#18 1.373 [DEBUG TimerFinished] Context::new(), Elapsed=19.501µs
#18 1.373 [DEBUG TimerFinished] Process::fingerprint(), Elapsed=41.4µs
#18 1.373 [TRACE jump::context] Installing boot binding Binding {
#18 1.373 target: "/root/.cache/nce/c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d/locks/configure-42befcfeb3c1560e96996adee76b9f8fa4dc3ab3bdb785d27b72071352eed6eb",
#18 1.373 process: Process {
#18 1.373 env: EnvVars {
#18 1.373 vars: [
#18 1.373 Replace(
#18 1.373 (
#18 1.373 "PEX_PYTHON_PATH",
#18 1.373 "/root/.cache/nce/2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b/cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz/python/bin/python3.9",
#18 1.373 ),
#18 1.373 ),
#18 1.373 Replace(
#18 1.373 (
#18 1.373 "PEX_ROOT",
#18 1.373 "/root/.cache/nce/c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d/bindings/pex_root",
#18 1.373 ),
#18 1.373 ),
#18 1.373 Default(
#18 1.373 (
#18 1.373 "PANTS_VERSION_PROMPT_SALT",
#18 1.373 "",
#18 1.373 ),
#18 1.373 ),
#18 1.373 RemoveMatching(
#18 1.373 ComparableRegex(
#18 1.373 PEX_.*,
#18 1.373 ),
#18 1.373 ),
#18 1.373 ],
#18 1.373 },
#18 1.373 exe: "/root/.cache/nce/2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b/cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz/python/bin/python3.9",
#18 1.373 args: [
#18 1.373 "/root/.cache/nce/5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb/tools.pex",
#18 1.373 "configure-pants",
#18 1.373 "--ptex-path",
#18 1.373 "/root/.cache/nce/22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb/ptex-linux-x86_64",
#18 1.373 "--pants-version",
#18 1.373 "2.16.0rc4",
#18 1.373 "--pants-sha",
#18 1.373 "",
#18 1.373 "--pants-config",
#18 1.373 "",
#18 1.373 "--github-api-bearer-token",
#18 1.373 "",
#18 1.373 "/root/.cache/nce/c55ee58a557d20bd4b109870e5a01b264c0d501ce817cce29502b2552903834d/bindings",
#18 1.373 ],
#18 1.373 },
#18 1.373 }
#18 1.403 [DEBUG TimerFinished] fingerprint::digest_reader(), Elapsed=29.498ms
#18 1.403 [DEBUG jump::installer] The blob destination /root/.cache/nce/22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb/ptex-linux-x86_64 of size 3904904 had expected hash
#18 1.435 [DEBUG TimerFinished] installer::unpack_blob(), Elapsed=61.191723ms
#18 1.444 [DEBUG TimerFinished] fingerprint::digest_reader(), Elapsed=8.770089ms
#18 1.444 [DEBUG jump::installer] The blob destination /root/.cache/nce/5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb/tools.pex of size 1285047 had expected hash
#18 1.453 [DEBUG TimerFinished] installer::unpack_blob(), Elapsed=18.819192ms
#18 1.454 [INFO jump::installer] Loading cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz via "/root/.cache/nce/22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb/ptex-linux-x86_64"...
#18 1.745 thread 'main' panicked at 'Failed to write data to output: Os { code: 32, kind: BrokenPipe, message: "Broken pipe" }', src/main.rs:68:14
#18 1.745 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
#18 1.747 Killed
#18 ERROR: process "/bin/sh -c ./get-pants.sh && pants --version" did not complete successfully: exit code: 137
Thanks. Unfortunately that only says what is already known. The last debug knob I can think of is adding PTEX_DUMP_HEADERS=1
to the environment.
#18 [build-stage 7/7] RUN ./get-pants.sh -V 0.8.1 && pants --version
#18 0.428 Downloading and installing the pants launcher ...
#18 1.319 Installed the pants launcher from https://github.com/pantsbuild/scie-pants/releases/download/v0.8.1/scie-pants-linux-x86_64 to /root/bin/pants
#18 1.319
#18 1.319 Running `pants` in a Pants-enabled repo will use the version of Pants configured for that repo.
#18 1.319 In a repo not yet Pants-enabled, it will prompt you to set up Pants for that repo.
#18 1.376 [DEBUG TimerFinished] lift::assemble(), Elapsed=4.101µs
#18 1.376 [DEBUG TimerFinished] fingerprint::digest(), Elapsed=46.301µs
#18 1.376 [DEBUG TimerFinished] lift::load_scie(), Elapsed=252.804µs
#18 1.376 [TRACE jump] Loaded lift manifest from /root/bin/pants:
#18 1.376 Lift {
#18 1.376 name: "scie-pants",
#18 1.376 description: Some(
#18 1.376 "Isolates your Pants from the elements.",
#18 1.376 ),
#18 1.376 base: None,
#18 1.376 load_dotenv: true,
#18 1.376 size: 5862,
#18 1.376 hash: "11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed",
#18 1.376 boot: Boot {
#18 1.376 commands: {
#18 1.376 "": Cmd {
#18 1.376 exe: "{scie-pants.bin}",
#18 1.376 args: [],
#18 1.376 env: {},
#18 1.376 description: None,
#18 1.376 },
#18 1.376 "bootstrap-tools": Cmd {
#18 1.376 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.376 args: [
#18 1.376 "{tools.pex}",
#18 1.376 "bootstrap-tools",
#18 1.376 "--python-distribution-hash",
#18 1.376 "{scie.files:hash.{scie.bindings.configure:PYTHON}}",
#18 1.376 "--pants-version",
#18 1.376 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.376 ],
#18 1.376 env: {
#18 1.376 Replace(
#18 1.376 "PEX_PYTHON_PATH",
#18 1.376 ): Some(
#18 1.376 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "PEX_ROOT",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings}/pex_root",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.376 ): Some(
#18 1.376 "python/bin/python3.8",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.376 ): Some(
#18 1.376 "python/bin/python3.9",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PEX_.*",
#18 1.376 ): None,
#18 1.376 },
#18 1.376 description: None,
#18 1.376 },
#18 1.376 "pants": Cmd {
#18 1.376 exe: "{scie.bindings.install:PANTS_CLIENT_EXE}",
#18 1.376 args: [
#18 1.376 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.376 ],
#18 1.376 env: {
#18 1.376 Replace(
#18 1.376 "PANTS_VERSION",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "_PANTS_SERVER_EXE",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings.install:PANTS_SERVER_EXE}",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PANTS_BUILDROOT_OVERRIDE",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.376 ),
#18 1.376 },
#18 1.376 description: None,
#18 1.376 },
#18 1.376 "pants-debug": Cmd {
#18 1.376 exe: "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.376 args: [
#18 1.376 "-c",
#18 1.376 "sys = __import__(\"sys\")\nsys.path.pop(0)\nprint(\n \"Launching debugpy server at '127.0.0.1:5678' and waiting for client connection.\",\n file=sys.stderr\n)\ndel sys\n__import__(\"debugpy.server.cli\").server.cli.main()\n",
#18 1.376 "--listen",
#18 1.376 "127.0.0.1:5678",
#18 1.376 "--wait-for-client",
#18 1.376 "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.376 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.376 ],
#18 1.376 env: {
#18 1.376 Replace(
#18 1.376 "PANTS_VERSION",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PANTS_BUILDROOT_OVERRIDE",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.376 ),
#18 1.376 },
#18 1.376 description: None,
#18 1.376 },
#18 1.376 "update": Cmd {
#18 1.376 exe: "{cpython39}/python/bin/python3.9",
#18 1.376 args: [
#18 1.376 "{tools.pex}",
#18 1.376 "update-scie-pants",
#18 1.376 "--ptex-path",
#18 1.376 "{ptex}",
#18 1.376 "--platform",
#18 1.376 "{scie.platform}",
#18 1.376 "--base-dir",
#18 1.376 "{scie.bindings}",
#18 1.376 "--scie",
#18 1.376 "{scie}",
#18 1.376 "--current-version",
#18 1.376 "{scie.bindings.scie-pants-info:VERSION}",
#18 1.376 "--github-api-bearer-token",
#18 1.376 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.376 ],
#18 1.376 env: {
#18 1.376 Replace(
#18 1.376 "PEX_PYTHON_PATH",
#18 1.376 ): Some(
#18 1.376 "{cpython39}/python/bin/python3.9",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "PEX_ROOT",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings}/pex_root",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PEX_.*",
#18 1.376 ): None,
#18 1.376 },
#18 1.376 description: None,
#18 1.376 },
#18 1.376 },
#18 1.376 bindings: {
#18 1.376 "configure": Cmd {
#18 1.376 exe: "{cpython39}/python/bin/python3.9",
#18 1.376 args: [
#18 1.376 "{tools.pex}",
#18 1.376 "configure-pants",
#18 1.376 "--ptex-path",
#18 1.376 "{ptex}",
#18 1.376 "--pants-version",
#18 1.376 "{scie.env.PANTS_VERSION}",
#18 1.376 "--pants-sha",
#18 1.376 "{scie.env.PANTS_SHA}",
#18 1.376 "--pants-config",
#18 1.376 "{scie.env.PANTS_TOML}",
#18 1.376 "--github-api-bearer-token",
#18 1.376 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.376 "{scie.bindings}",
#18 1.376 ],
#18 1.376 env: {
#18 1.376 Replace(
#18 1.376 "PEX_PYTHON_PATH",
#18 1.376 ): Some(
#18 1.376 "{cpython39}/python/bin/python3.9",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "PEX_ROOT",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings}/pex_root",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PANTS_VERSION_PROMPT_SALT",
#18 1.376 ): Some(
#18 1.376 "{scie.env.PANTS_VERSION_PROMPT_SALT}",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PEX_.*",
#18 1.376 ): None,
#18 1.376 },
#18 1.376 description: None,
#18 1.376 },
#18 1.376 "fetch": Cmd {
#18 1.376 exe: "{ptex}",
#18 1.376 args: [
#18 1.376 "{scie.env.PANTS_BOOTSTRAP_URLS={scie.lift}}",
#18 1.376 ],
#18 1.376 env: {},
#18 1.376 description: None,
#18 1.376 },
#18 1.376 "install": Cmd {
#18 1.376 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.376 args: [
#18 1.376 "{tools.pex}",
#18 1.376 "install-pants",
#18 1.376 "--pants-version",
#18 1.376 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.376 "--find-links",
#18 1.376 "{scie.bindings.configure:FIND_LINKS}",
#18 1.376 "--debug",
#18 1.376 "{scie.env.PANTS_DEBUG}",
#18 1.376 "--debugpy-requirement",
#18 1.376 "{scie.env.PANTS_DEBUGPY_VERSION}",
#18 1.376 "{scie.bindings}",
#18 1.376 ],
#18 1.376 env: {
#18 1.376 Replace(
#18 1.376 "PEX_PYTHON_PATH",
#18 1.376 ): Some(
#18 1.376 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "PEX_ROOT",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings}/pex_root",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.376 ): Some(
#18 1.376 "python/bin/python3.8",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.376 ): Some(
#18 1.376 "python/bin/python3.9",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PEX_.*",
#18 1.376 ): None,
#18 1.376 },
#18 1.376 description: None,
#18 1.376 },
#18 1.376 "scie-pants-info": Cmd {
#18 1.376 exe: "{cpython39}/python/bin/python3.9",
#18 1.376 args: [
#18 1.376 "{tools.pex}",
#18 1.376 "record-scie-pants-info",
#18 1.376 "--base-dir",
#18 1.376 "{scie.bindings}",
#18 1.376 "--scie",
#18 1.376 "{scie}",
#18 1.376 ],
#18 1.376 env: {
#18 1.376 Replace(
#18 1.376 "PEX_PYTHON_PATH",
#18 1.376 ): Some(
#18 1.376 "{cpython39}/python/bin/python3.9",
#18 1.376 ),
#18 1.376 Replace(
#18 1.376 "PEX_ROOT",
#18 1.376 ): Some(
#18 1.376 "{scie.bindings}/pex_root",
#18 1.376 ),
#18 1.376 Default(
#18 1.376 "PEX_.*",
#18 1.376 ): None,
#18 1.376 },
#18 1.376 description: None,
#18 1.376 },
#18 1.376 },
#18 1.376 },
#18 1.376 files: [
#18 1.376 File {
#18 1.376 name: "ptex-linux-x86_64",
#18 1.376 key: Some(
#18 1.376 "ptex",
#18 1.376 ),
#18 1.376 size: 3904904,
#18 1.376 hash: "22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb",
#18 1.376 file_type: Blob,
#18 1.376 executable: Some(
#18 1.376 true,
#18 1.376 ),
#18 1.376 eager_extract: false,
#18 1.376 source: Scie,
#18 1.376 },
#18 1.376 File {
#18 1.376 name: "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.376 key: Some(
#18 1.376 "cpython38",
#18 1.376 ),
#18 1.376 size: 25953194,
#18 1.376 hash: "8522b181c018e798ecb7dc54b5eedf7686cb258e6e33b3f7f0488ceb912a341e",
#18 1.376 file_type: Archive(
#18 1.376 CompressedTar(
#18 1.376 Gzip,
#18 1.376 ),
#18 1.376 ),
#18 1.376 executable: None,
#18 1.376 eager_extract: false,
#18 1.376 source: LoadBinding(
#18 1.376 "fetch",
#18 1.376 ),
#18 1.376 },
#18 1.376 File {
#18 1.376 name: "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.376 key: Some(
#18 1.376 "cpython39",
#18 1.376 ),
#18 1.376 size: 25738357,
#18 1.376 hash: "2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b",
#18 1.376 file_type: Archive(
#18 1.376 CompressedTar(
#18 1.376 Gzip,
#18 1.376 ),
#18 1.376 ),
#18 1.376 executable: None,
#18 1.376 eager_extract: false,
#18 1.376 source: LoadBinding(
#18 1.376 "fetch",
#18 1.376 ),
#18 1.376 },
#18 1.376 File {
#18 1.376 name: "scie-pants.bin",
#18 1.376 key: None,
#18 1.376 size: 759960,
#18 1.376 hash: "3e38bf89774a7108031fc6dd7fad2e7c1e4c833a69e2f906356a410b3d90efab",
#18 1.376 file_type: Blob,
#18 1.376 executable: Some(
#18 1.376 true,
#18 1.376 ),
#18 1.376 eager_extract: false,
#18 1.376 source: Scie,
#18 1.376 },
#18 1.376 File {
#18 1.376 name: "tools.pex",
#18 1.376 key: None,
#18 1.376 size: 1285047,
#18 1.376 hash: "5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb",
#18 1.376 file_type: Blob,
#18 1.376 executable: Some(
#18 1.376 true,
#18 1.376 ),
#18 1.376 eager_extract: false,
#18 1.376 source: Scie,
#18 1.376 },
#18 1.376 ],
#18 1.376 other: Some(
#18 1.376 Other {
#18 1.376 other: {
#18 1.376 "ptex": Object {
#18 1.376 "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.8.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.376 "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.376 },
#18 1.376 "science": Object {
#18 1.376 "app_info": Object {
#18 1.376 "repo": String("https://github.com/pantsbuild/scie-pants"),
#18 1.376 },
#18 1.376 "binary": Object {
#18 1.376 "hash": String("8e308fc8ee839d9bba6da1f7271c1b8b7c895fab97b8c57b0f837314fcc5a295"),
#18 1.376 "size": Number(6465489),
#18 1.376 "url": String("https://github.com/a-scie/lift/releases/download/v0.1.2/science-linux-x86_64"),
#18 1.376 "version": String("0.1.2"),
#18 1.376 },
#18 1.376 "git_state": String("v0.8.1-0-g0b8204e"),
#18 1.376 "manifest": Object {
#18 1.376 "hash": String("5b79b2d2055380116e8cbf684f230f3af1f816894d16765a8b5bde8ddd19b379"),
#18 1.376 "size": Number(5300),
#18 1.376 "source": String("package/scie-pants.toml"),
#18 1.376 },
#18 1.376 "notes": Array [
#18 1.376 String("This scie lift JSON manifest was generated from a source lift toml manifest using the science binary."),
#18 1.376 String("Find out more here: https://github.com/a-scie/lift/blob/v0.1.2/README.md"),
#18 1.376 ],
#18 1.376 },
#18 1.376 },
#18 1.376 },
#18 1.376 ),
#18 1.376 }
#18 1.376 [DEBUG jump] Loaded env file from /app/.env
#18 1.376 [DEBUG TimerFinished] jump::load_dotenv, Elapsed=68.701µs
#18 1.376 [DEBUG TimerFinished] Context::new(), Elapsed=26.101µs
#18 1.382 [DEBUG TimerFinished] fingerprint::digest_reader(), Elapsed=5.198593ms
#18 1.382 [DEBUG jump::installer] The blob destination /root/.cache/nce/3e38bf89774a7108031fc6dd7fad2e7c1e4c833a69e2f906356a410b3d90efab/scie-pants.bin of size 759960 had expected hash
#18 1.389 [DEBUG TimerFinished] installer::unpack_blob(), Elapsed=12.023116ms
#18 1.389 [DEBUG TimerFinished] Installer::install(), Elapsed=12.053016ms
#18 1.389 [TRACE jump] Prepared Process {
#18 1.389 env: EnvVars {
#18 1.389 vars: [],
#18 1.389 },
#18 1.389 exe: "/root/.cache/nce/3e38bf89774a7108031fc6dd7fad2e7c1e4c833a69e2f906356a410b3d90efab/scie-pants.bin",
#18 1.389 args: [],
#18 1.389 }
#18 1.389 [DEBUG TimerFinished] jump::prepare_boot(), Elapsed=13.055534ms
#18 1.397 [DEBUG TimerFinished] BuildRoot::find(), Elapsed=30.2µs
#18 1.397 [DEBUG TimerFinished] PantsConfig::parse(), Elapsed=233.904µs
#18 1.397 [INFO scie_pants] Found Pants build root at Some("/app")
#18 1.397 [INFO scie_pants] The required Pants version is Some("2.16.0rc4")
#18 1.397 [DEBUG TimerFinished] scie-pants::get_pants_process(), Elapsed=341.206µs
#18 1.397 [TRACE scie_pants] Launching: Process {
#18 1.397 exe: "/root/bin/pants",
#18 1.397 args: [],
#18 1.397 env: [
#18 1.397 (
#18 1.397 "SCIE_BOOT",
#18 1.397 "pants",
#18 1.397 ),
#18 1.397 (
#18 1.397 "PANTS_BIN_NAME",
#18 1.397 "pants",
#18 1.397 ),
#18 1.397 (
#18 1.397 "PANTS_DEBUG",
#18 1.397 "",
#18 1.397 ),
#18 1.397 (
#18 1.397 "PANTS_BUILDROOT_OVERRIDE",
#18 1.397 "/app",
#18 1.397 ),
#18 1.397 (
#18 1.397 "PANTS_VERSION",
#18 1.397 "2.16.0rc4",
#18 1.397 ),
#18 1.397 ],
#18 1.397 }
#18 1.398 [DEBUG TimerFinished] lift::assemble(), Elapsed=4.5µs
#18 1.398 [DEBUG TimerFinished] fingerprint::digest(), Elapsed=45.6µs
#18 1.399 [DEBUG TimerFinished] lift::load_scie(), Elapsed=226.904µs
#18 1.399 [TRACE jump] Loaded lift manifest from /root/bin/pants:
#18 1.399 Lift {
#18 1.399 name: "scie-pants",
#18 1.399 description: Some(
#18 1.399 "Isolates your Pants from the elements.",
#18 1.399 ),
#18 1.399 base: None,
#18 1.399 load_dotenv: true,
#18 1.399 size: 5862,
#18 1.399 hash: "11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed",
#18 1.399 boot: Boot {
#18 1.399 commands: {
#18 1.399 "": Cmd {
#18 1.399 exe: "{scie-pants.bin}",
#18 1.399 args: [],
#18 1.399 env: {},
#18 1.399 description: None,
#18 1.399 },
#18 1.399 "bootstrap-tools": Cmd {
#18 1.399 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.399 args: [
#18 1.399 "{tools.pex}",
#18 1.399 "bootstrap-tools",
#18 1.399 "--python-distribution-hash",
#18 1.399 "{scie.files:hash.{scie.bindings.configure:PYTHON}}",
#18 1.399 "--pants-version",
#18 1.399 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.399 ],
#18 1.399 env: {
#18 1.399 Replace(
#18 1.399 "PEX_PYTHON_PATH",
#18 1.399 ): Some(
#18 1.399 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "PEX_ROOT",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings}/pex_root",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.399 ): Some(
#18 1.399 "python/bin/python3.8",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.399 ): Some(
#18 1.399 "python/bin/python3.9",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PEX_.*",
#18 1.399 ): None,
#18 1.399 },
#18 1.399 description: None,
#18 1.399 },
#18 1.399 "pants": Cmd {
#18 1.399 exe: "{scie.bindings.install:PANTS_CLIENT_EXE}",
#18 1.399 args: [
#18 1.399 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.399 ],
#18 1.399 env: {
#18 1.399 Replace(
#18 1.399 "PANTS_VERSION",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "_PANTS_SERVER_EXE",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings.install:PANTS_SERVER_EXE}",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PANTS_BUILDROOT_OVERRIDE",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.399 ),
#18 1.399 },
#18 1.399 description: None,
#18 1.399 },
#18 1.399 "pants-debug": Cmd {
#18 1.399 exe: "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.399 args: [
#18 1.399 "-c",
#18 1.399 "sys = __import__(\"sys\")\nsys.path.pop(0)\nprint(\n \"Launching debugpy server at '127.0.0.1:5678' and waiting for client connection.\",\n file=sys.stderr\n)\ndel sys\n__import__(\"debugpy.server.cli\").server.cli.main()\n",
#18 1.399 "--listen",
#18 1.399 "127.0.0.1:5678",
#18 1.399 "--wait-for-client",
#18 1.399 "{scie.bindings.install:VIRTUAL_ENV}/bin/pants",
#18 1.399 "{scie.bindings.configure:PANTS_SHA_FIND_LINKS}",
#18 1.399 ],
#18 1.399 env: {
#18 1.399 Replace(
#18 1.399 "PANTS_VERSION",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PANTS_BUILDROOT_OVERRIDE",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings.configure:PANTS_BUILDROOT_OVERRIDE}",
#18 1.399 ),
#18 1.399 },
#18 1.399 description: None,
#18 1.399 },
#18 1.399 "update": Cmd {
#18 1.399 exe: "{cpython39}/python/bin/python3.9",
#18 1.399 args: [
#18 1.399 "{tools.pex}",
#18 1.399 "update-scie-pants",
#18 1.399 "--ptex-path",
#18 1.399 "{ptex}",
#18 1.399 "--platform",
#18 1.399 "{scie.platform}",
#18 1.399 "--base-dir",
#18 1.399 "{scie.bindings}",
#18 1.399 "--scie",
#18 1.399 "{scie}",
#18 1.399 "--current-version",
#18 1.399 "{scie.bindings.scie-pants-info:VERSION}",
#18 1.399 "--github-api-bearer-token",
#18 1.399 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.399 ],
#18 1.399 env: {
#18 1.399 Replace(
#18 1.399 "PEX_PYTHON_PATH",
#18 1.399 ): Some(
#18 1.399 "{cpython39}/python/bin/python3.9",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "PEX_ROOT",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings}/pex_root",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PEX_.*",
#18 1.399 ): None,
#18 1.399 },
#18 1.399 description: None,
#18 1.399 },
#18 1.399 },
#18 1.399 bindings: {
#18 1.399 "configure": Cmd {
#18 1.399 exe: "{cpython39}/python/bin/python3.9",
#18 1.399 args: [
#18 1.399 "{tools.pex}",
#18 1.399 "configure-pants",
#18 1.399 "--ptex-path",
#18 1.399 "{ptex}",
#18 1.399 "--pants-version",
#18 1.399 "{scie.env.PANTS_VERSION}",
#18 1.399 "--pants-sha",
#18 1.399 "{scie.env.PANTS_SHA}",
#18 1.399 "--pants-config",
#18 1.399 "{scie.env.PANTS_TOML}",
#18 1.399 "--github-api-bearer-token",
#18 1.399 "{scie.env.PANTS_BOOTSTRAP_GITHUB_API_BEARER_TOKEN}",
#18 1.399 "{scie.bindings}",
#18 1.399 ],
#18 1.399 env: {
#18 1.399 Replace(
#18 1.399 "PEX_PYTHON_PATH",
#18 1.399 ): Some(
#18 1.399 "{cpython39}/python/bin/python3.9",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "PEX_ROOT",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings}/pex_root",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PANTS_VERSION_PROMPT_SALT",
#18 1.399 ): Some(
#18 1.399 "{scie.env.PANTS_VERSION_PROMPT_SALT}",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PEX_.*",
#18 1.399 ): None,
#18 1.399 },
#18 1.399 description: None,
#18 1.399 },
#18 1.399 "fetch": Cmd {
#18 1.399 exe: "{ptex}",
#18 1.399 args: [
#18 1.399 "{scie.env.PANTS_BOOTSTRAP_URLS={scie.lift}}",
#18 1.399 ],
#18 1.399 env: {},
#18 1.399 description: None,
#18 1.399 },
#18 1.399 "install": Cmd {
#18 1.399 exe: "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.399 args: [
#18 1.399 "{tools.pex}",
#18 1.399 "install-pants",
#18 1.399 "--pants-version",
#18 1.399 "{scie.bindings.configure:PANTS_VERSION}",
#18 1.399 "--find-links",
#18 1.399 "{scie.bindings.configure:FIND_LINKS}",
#18 1.399 "--debug",
#18 1.399 "{scie.env.PANTS_DEBUG}",
#18 1.399 "--debugpy-requirement",
#18 1.399 "{scie.env.PANTS_DEBUGPY_VERSION}",
#18 1.399 "{scie.bindings}",
#18 1.399 ],
#18 1.399 env: {
#18 1.399 Replace(
#18 1.399 "PEX_PYTHON_PATH",
#18 1.399 ): Some(
#18 1.399 "{scie.files.{scie.bindings.configure:PYTHON}}/{scie.env._SCIENCE_IG_cpython_python_{scie.bindings.configure:PYTHON}}",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "PEX_ROOT",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings}/pex_root",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "_SCIENCE_IG_cpython_python_cpython38",
#18 1.399 ): Some(
#18 1.399 "python/bin/python3.8",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "_SCIENCE_IG_cpython_python_cpython39",
#18 1.399 ): Some(
#18 1.399 "python/bin/python3.9",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PEX_.*",
#18 1.399 ): None,
#18 1.399 },
#18 1.399 description: None,
#18 1.399 },
#18 1.399 "scie-pants-info": Cmd {
#18 1.399 exe: "{cpython39}/python/bin/python3.9",
#18 1.399 args: [
#18 1.399 "{tools.pex}",
#18 1.399 "record-scie-pants-info",
#18 1.399 "--base-dir",
#18 1.399 "{scie.bindings}",
#18 1.399 "--scie",
#18 1.399 "{scie}",
#18 1.399 ],
#18 1.399 env: {
#18 1.399 Replace(
#18 1.399 "PEX_PYTHON_PATH",
#18 1.399 ): Some(
#18 1.399 "{cpython39}/python/bin/python3.9",
#18 1.399 ),
#18 1.399 Replace(
#18 1.399 "PEX_ROOT",
#18 1.399 ): Some(
#18 1.399 "{scie.bindings}/pex_root",
#18 1.399 ),
#18 1.399 Default(
#18 1.399 "PEX_.*",
#18 1.399 ): None,
#18 1.399 },
#18 1.399 description: None,
#18 1.399 },
#18 1.399 },
#18 1.399 },
#18 1.399 files: [
#18 1.399 File {
#18 1.399 name: "ptex-linux-x86_64",
#18 1.399 key: Some(
#18 1.399 "ptex",
#18 1.399 ),
#18 1.399 size: 3904904,
#18 1.399 hash: "22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb",
#18 1.399 file_type: Blob,
#18 1.399 executable: Some(
#18 1.399 true,
#18 1.399 ),
#18 1.399 eager_extract: false,
#18 1.399 source: Scie,
#18 1.399 },
#18 1.399 File {
#18 1.399 name: "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.399 key: Some(
#18 1.399 "cpython38",
#18 1.399 ),
#18 1.399 size: 25953194,
#18 1.399 hash: "8522b181c018e798ecb7dc54b5eedf7686cb258e6e33b3f7f0488ceb912a341e",
#18 1.399 file_type: Archive(
#18 1.399 CompressedTar(
#18 1.399 Gzip,
#18 1.399 ),
#18 1.399 ),
#18 1.399 executable: None,
#18 1.399 eager_extract: false,
#18 1.399 source: LoadBinding(
#18 1.399 "fetch",
#18 1.399 ),
#18 1.399 },
#18 1.399 File {
#18 1.399 name: "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz",
#18 1.399 key: Some(
#18 1.399 "cpython39",
#18 1.399 ),
#18 1.399 size: 25738357,
#18 1.399 hash: "2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b",
#18 1.399 file_type: Archive(
#18 1.399 CompressedTar(
#18 1.399 Gzip,
#18 1.399 ),
#18 1.399 ),
#18 1.399 executable: None,
#18 1.399 eager_extract: false,
#18 1.399 source: LoadBinding(
#18 1.399 "fetch",
#18 1.399 ),
#18 1.399 },
#18 1.399 File {
#18 1.399 name: "scie-pants.bin",
#18 1.399 key: None,
#18 1.399 size: 759960,
#18 1.399 hash: "3e38bf89774a7108031fc6dd7fad2e7c1e4c833a69e2f906356a410b3d90efab",
#18 1.399 file_type: Blob,
#18 1.399 executable: Some(
#18 1.399 true,
#18 1.399 ),
#18 1.399 eager_extract: false,
#18 1.399 source: Scie,
#18 1.399 },
#18 1.399 File {
#18 1.399 name: "tools.pex",
#18 1.399 key: None,
#18 1.399 size: 1285047,
#18 1.399 hash: "5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb",
#18 1.399 file_type: Blob,
#18 1.399 executable: Some(
#18 1.399 true,
#18 1.399 ),
#18 1.399 eager_extract: false,
#18 1.399 source: Scie,
#18 1.399 },
#18 1.399 ],
#18 1.399 other: Some(
#18 1.399 Other {
#18 1.399 other: {
#18 1.399 "ptex": Object {
#18 1.399 "cpython-3.8.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.8.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.399 "cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz": String("https://github.com/indygreg/python-build-standalone/releases/download/20230507/cpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz"),
#18 1.399 },
#18 1.399 "science": Object {
#18 1.399 "app_info": Object {
#18 1.399 "repo": String("https://github.com/pantsbuild/scie-pants"),
#18 1.399 },
#18 1.399 "binary": Object {
#18 1.399 "hash": String("8e308fc8ee839d9bba6da1f7271c1b8b7c895fab97b8c57b0f837314fcc5a295"),
#18 1.399 "size": Number(6465489),
#18 1.399 "url": String("https://github.com/a-scie/lift/releases/download/v0.1.2/science-linux-x86_64"),
#18 1.399 "version": String("0.1.2"),
#18 1.399 },
#18 1.399 "git_state": String("v0.8.1-0-g0b8204e"),
#18 1.399 "manifest": Object {
#18 1.399 "hash": String("5b79b2d2055380116e8cbf684f230f3af1f816894d16765a8b5bde8ddd19b379"),
#18 1.399 "size": Number(5300),
#18 1.399 "source": String("package/scie-pants.toml"),
#18 1.399 },
#18 1.399 "notes": Array [
#18 1.399 String("This scie lift JSON manifest was generated from a source lift toml manifest using the science binary."),
#18 1.399 String("Find out more here: https://github.com/a-scie/lift/blob/v0.1.2/README.md"),
#18 1.399 ],
#18 1.399 },
#18 1.399 },
#18 1.399 },
#18 1.399 ),
#18 1.399 }
#18 1.399 [DEBUG jump] Loaded env file from /app/.env
#18 1.399 [DEBUG TimerFinished] jump::load_dotenv, Elapsed=49.101µs
#18 1.399 [DEBUG TimerFinished] Context::new(), Elapsed=16.8µs
#18 1.399 [DEBUG TimerFinished] Process::fingerprint(), Elapsed=35.201µs
#18 1.400 [TRACE jump::context] Installing boot binding Binding {
#18 1.400 target: "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/locks/configure-b58dece752db7157f9122f0dbb0d713c00f97e12b655e8ee0ff6ddfefc730bcd",
#18 1.400 process: Process {
#18 1.400 env: EnvVars {
#18 1.400 vars: [
#18 1.400 Replace(
#18 1.400 (
#18 1.400 "PEX_PYTHON_PATH",
#18 1.400 "/root/.cache/nce/2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b/cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz/python/bin/python3.9",
#18 1.400 ),
#18 1.400 ),
#18 1.400 Replace(
#18 1.400 (
#18 1.400 "PEX_ROOT",
#18 1.400 "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/pex_root",
#18 1.400 ),
#18 1.400 ),
#18 1.400 Default(
#18 1.400 (
#18 1.400 "PANTS_VERSION_PROMPT_SALT",
#18 1.400 "",
#18 1.400 ),
#18 1.400 ),
#18 1.400 RemoveMatching(
#18 1.400 ComparableRegex(
#18 1.400 PEX_.*,
#18 1.400 ),
#18 1.400 ),
#18 1.400 ],
#18 1.400 },
#18 1.400 exe: "/root/.cache/nce/2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b/cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz/python/bin/python3.9",
#18 1.400 args: [
#18 1.400 "/root/.cache/nce/5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb/tools.pex",
#18 1.400 "configure-pants",
#18 1.400 "--ptex-path",
#18 1.400 "/root/.cache/nce/22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb/ptex-linux-x86_64",
#18 1.400 "--pants-version",
#18 1.400 "2.16.0rc4",
#18 1.400 "--pants-sha",
#18 1.400 "",
#18 1.400 "--pants-config",
#18 1.400 "",
#18 1.400 "--github-api-bearer-token",
#18 1.400 "",
#18 1.400 "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings",
#18 1.400 ],
#18 1.400 },
#18 1.400 }
#18 1.426 [DEBUG TimerFinished] fingerprint::digest_reader(), Elapsed=26.507474ms
#18 1.426 [DEBUG jump::installer] The blob destination /root/.cache/nce/22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb/ptex-linux-x86_64 of size 3904904 had expected hash
#18 1.456 [DEBUG TimerFinished] installer::unpack_blob(), Elapsed=56.42911ms
#18 1.465 [DEBUG TimerFinished] fingerprint::digest_reader(), Elapsed=8.735957ms
#18 1.465 [DEBUG jump::installer] The blob destination /root/.cache/nce/5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb/tools.pex of size 1285047 had expected hash
#18 1.475 [DEBUG TimerFinished] installer::unpack_blob(), Elapsed=19.110442ms
#18 1.475 [INFO jump::installer] Loading cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz via "/root/.cache/nce/22652cf60b12e7a187ea0cf21d7bc9d8234bbb630fa94ca6f9c28655bd6a81fb/ptex-linux-x86_64"...
#18 2.305 [DEBUG TimerFinished] fingerprint::digest_reader(), Elapsed=180.347227ms
#18 2.305 [DEBUG jump::installer] The tar.gz destination /root/.cache/nce/2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b/cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz of size 25738357 had expected hash
#18 3.285 [DEBUG TimerFinished] installer::unpack_tar(), Elapsed=979.787331ms
#18 3.285 [DEBUG TimerFinished] installer::unpack_archive(), Elapsed=1.809615279s
#18 3.285 [DEBUG TimerFinished] Installer::install(), Elapsed=1.885272733s
#18 6.343 [DEBUG TimerFinished] Process::fingerprint(), Elapsed=42.401µs
#18 6.343 [TRACE jump::context] Installing boot binding Binding {
#18 6.343 target: "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/locks/install-e87f50988fa3d8ed1570628dd32d9fc6f3c10d8e6ead4011d814cf2d3f3939eb",
#18 6.343 process: Process {
#18 6.343 env: EnvVars {
#18 6.343 vars: [
#18 6.343 Replace(
#18 6.343 (
#18 6.343 "PEX_PYTHON_PATH",
#18 6.343 "/root/.cache/nce/2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b/cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz/python/bin/python3.9",
#18 6.343 ),
#18 6.343 ),
#18 6.343 Replace(
#18 6.343 (
#18 6.343 "PEX_ROOT",
#18 6.343 "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/pex_root",
#18 6.343 ),
#18 6.343 ),
#18 6.343 Replace(
#18 6.343 (
#18 6.343 "_SCIENCE_IG_cpython_python_cpython38",
#18 6.343 "python/bin/python3.8",
#18 6.343 ),
#18 6.343 ),
#18 6.343 Replace(
#18 6.343 (
#18 6.343 "_SCIENCE_IG_cpython_python_cpython39",
#18 6.343 "python/bin/python3.9",
#18 6.343 ),
#18 6.343 ),
#18 6.343 RemoveMatching(
#18 6.343 ComparableRegex(
#18 6.343 PEX_.*,
#18 6.343 ),
#18 6.343 ),
#18 6.343 ],
#18 6.343 },
#18 6.343 exe: "/root/.cache/nce/2b6e146234a4ef2a8946081fc3fbfffe0765b80b690425a49ebe40b47c33445b/cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz/python/bin/python3.9",
#18 6.343 args: [
#18 6.343 "/root/.cache/nce/5b7e43d9b857d76bdfaa946b6b58c47c04d02fb5b087532e0f7f403bffe5eddb/tools.pex",
#18 6.343 "install-pants",
#18 6.343 "--pants-version",
#18 6.343 "2.16.0rc4",
#18 6.343 "--find-links",
#18 6.343 "file:///root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/find_links/2.16.0rc4/920d0b88/index.html",
#18 6.343 "--debug",
#18 6.343 "",
#18 6.343 "--debugpy-requirement",
#18 6.343 "",
#18 6.343 "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings",
#18 6.343 ],
#18 6.343 },
#18 6.343 }
#18 6.343 [DEBUG TimerFinished] Installer::install(), Elapsed=1µs
#18 6.609 Bootstrapping Pants 2.16.0rc4 using cpython 3.9.16
#18 6.609 Installing pantsbuild.pants==2.16.0rc4 into a virtual environment at /root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/venvs/2.16.0rc4
#18 11.40 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 33.5 MB/s eta 0:00:00
#18 11.87 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 819.3/819.3 KB 45.8 MB/s eta 0:00:00
#18 11.97 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 64.5/64.5 KB 7.0 MB/s eta 0:00:00
#18 29.61 New virtual environment successfully created at /root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/venvs/2.16.0rc4.
#18 29.63 [DEBUG TimerFinished] Installer::install(), Elapsed=1.1µs
#18 29.63 [TRACE jump] Prepared Process {
#18 29.63 env: EnvVars {
#18 29.63 vars: [
#18 29.63 Replace(
#18 29.63 (
#18 29.63 "PANTS_VERSION",
#18 29.63 "2.16.0rc4",
#18 29.63 ),
#18 29.63 ),
#18 29.63 Replace(
#18 29.63 (
#18 29.63 "_PANTS_SERVER_EXE",
#18 29.63 "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/venvs/2.16.0rc4/bin/pants",
#18 29.63 ),
#18 29.63 ),
#18 29.63 Default(
#18 29.63 (
#18 29.63 "PANTS_BUILDROOT_OVERRIDE",
#18 29.63 "",
#18 29.63 ),
#18 29.63 ),
#18 29.63 ],
#18 29.63 },
#18 29.63 exe: "/root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/venvs/2.16.0rc4/bin/pants",
#18 29.63 args: [
#18 29.63 "--python-repos-find-links=-[\'file:///root/.cache/nce/11d6ad82783fcc43d94fc1252a886950375d9f311a16b9d6b51d766a86a097ed/bindings/find_links/2.16.0rc4/920d0b88/index.html\']",
#18 29.63 ],
#18 29.63 }
#18 29.63 [DEBUG TimerFinished] jump::prepare_boot(), Elapsed=28.230433926s
#18 35.46 23:11:11.17 [INFO] waiting for pantsd to start...
#18 40.47 23:11:16.19 [INFO] waiting for pantsd to start...
#18 43.28 23:11:18.99 [INFO] pantsd started
#18 43.73 23:11:19.45 [INFO] Initializing scheduler...
#18 59.54 23:11:35.25 [INFO] Scheduler initialized.
#18 59.81 2.16.0rc4
#18 DONE 60.3s
#18 [build-stage 7/7] RUN ./get-pants.sh && pants --version
#18 0.296 Downloading and installing the pants launcher ...
#18 0.917 Installed the pants launcher from https://github.com/pantsbuild/scie-pants/releases/latest/download/scie-pants-linux-x86_64 to /root/bin/pants
#18 0.917
#18 0.917 Running `pants` in a Pants-enabled repo will use the version of Pants configured for that repo.
#18 0.917 In a repo not yet Pants-enabled, it will prompt you to set up Pants for that repo.
#18 1.264 HTTP/2 302
#18 1.264 server: GitHub.com
#18 1.264 date: Tue, 06 Jun 2023 23:21:34 GMT
#18 1.264 content-type: text/html; charset=utf-8
#18 1.264 vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With
#18 1.264 location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/162334160/a9867b44-5cac-4071-a632-a2e6e9ab00ca?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230606%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230606T232134Z&X-Amz-Expires=300&X-Amz-Signature=1c8096fd982b13b12aea162245879b5648e8ef13955c07b1f10e9913bf5967e3&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=162334160&response-content-disposition=attachment%3B%20filename%3Dcpython-3.9.16%2B20230507-x86_64-unknown-linux-gnu-install_only.tar.gz&response-content-type=application%2Foctet-stream
#18 1.264 cache-control: no-cache
#18 1.264 strict-transport-security: max-age=31536000; includeSubdomains; preload
#18 1.264 x-frame-options: deny
#18 1.264 x-content-type-options: nosniff
#18 1.264 x-xss-protection: 0
#18 1.264 referrer-policy: no-referrer-when-downgrade
#18 1.264 content-security-policy: default-src 'none'; base-uri 'self'; block-all-mixed-content; child-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com objects-origin.githubusercontent.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com cdn.optimizely.com logx.optimizely.com/v1/events *.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ wss://*.actions.githubusercontent.com github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com objects-origin.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; worker-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/
#18 1.264 content-length: 0
#18 1.264 x-github-request-id: B993:156A:1420A:1BF37:647FBF7E
#18 1.264
#18 1.354 HTTP/2 200
#18 1.354 content-type: application/octet-stream
#18 1.354 content-md5: 3LqINOUXtCk8u1zrnFvCEw==
#18 1.354 last-modified: Sun, 14 May 2023 17:35:11 GMT
#18 1.354 etag: "0x8DB54A19186E55D"
#18 1.354 server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
#18 1.354 x-ms-request-id: d8b29e33-f01e-005c-1ccd-98b40d000000
#18 1.354 x-ms-version: 2020-04-08
#18 1.354 x-ms-creation-time: Sun, 14 May 2023 17:35:11 GMT
#18 1.354 x-ms-lease-status: unlocked
#18 1.354 x-ms-lease-state: available
#18 1.354 x-ms-blob-type: BlockBlob
#18 1.354 content-disposition: attachment; filename=cpython-3.9.16+20230507-x86_64-unknown-linux-gnu-install_only.tar.gz
#18 1.354 x-ms-server-encrypted: true
#18 1.354 via: 1.1 varnish, 1.1 varnish
#18 1.354 fastly-restarts: 1
#18 1.354 accept-ranges: bytes
#18 1.354 age: 0
#18 1.354 date: Tue, 06 Jun 2023 23:21:34 GMT
#18 1.354 x-served-by: cache-iad-kcgs7200126-IAD, cache-yul12830-YUL
#18 1.354 x-cache: MISS, MISS
#18 1.354 x-cache-hits: 0, 0
#18 1.354 x-timer: S1686093695.623819,VS0,VE68
#18 1.354 content-length: 25738357
#18 1.354
#18 1.474 thread 'main' panicked at 'Failed to write data to output: Os { code: 32, kind: BrokenPipe, message: "Broken pipe" }', src/main.rs:68:14
#18 1.474 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
#18 1.479 Killed
#18 ERROR: process "/bin/sh -c ./get-pants.sh && pants --version" did not complete successfully: exit code: 137
Well damn. Thanks @erjac77 that still reveals ~nothing. The ptex
(it's just a static curl binary really) subprocess launched by scie-jump
starts the download and content-length: 25738357
looks right and then about 100ms later scie-jump appears to die which closes the stdout pipe it has connected between the ptex
subprocess and a tmp file. So the why is still totally missing.
I'm baffled. @erjac77 thanks for continuing to play along - this is hard to figure out without a repro I can lay my hands on. Is there anything suspicious in the env
of that shell? The only change in scie-jump
0.11.0 -> 0.11.1 (which was what scie-pants 0.8.2 picked up as its only change in turn) was in preparation of env vars to launch subprocesses with. Here it's already successfully launched the ptex
subprocess; so I'm not seeing how the env var fix is in-play, but I have nothing else to grasp at at the moment.
@jsirois Thx for your help. I'm also baffled by all this.
The only others env
vars we have are for the CA Certificates and the ~/bin
directory, which must be on the PATH as per Pants documentation.
ENV CERT_PATH=/etc/ssl/certs/ca-certificates.crt
ENV SSL_CERT_FILE=$CERT_PATH \
REQUESTS_CA_BUNDLE=$CERT_PATH
ENV PATH=$PATH:/root/bin:/root/.local/bin
For now, we will run scie-pants
0.8.1 by passing the version to the get-pants
script in the Dockerfile as follow:
RUN ./get-pants.sh -V 0.8.1 && pants --version
@erjac77 can you provide any details about the Docker image / build tool / command line args (is it docker, podman, something else, etc)? Ideally I'd be able to try to build the same image / have access to the Dockerfile(s).
@erjac77 as an aside - those docs are sugarcoated for ease of use. If you dig a bit / read the script before running it, you'll see ~/bin
is absolutely not a requirement at all - you could say -d /usr/bin
and not have to muddle with PATH
:
$ curl --proto '=https' --tlsv1.2 -fsSL https://static.pantsbuild.org/setup/get-pants.sh -O
$ bash get-pants.sh --help
Usage: get-pants.sh
Installs the pants launcher binary.
You only need to run this once on a machine when you do not have "pants"
available to run yet.
The pants binary takes care of managing and running the underlying
Pants version configured in "pants.toml" in the surrounding Pants-using
project.
Once installed, if you want to update your "pants" launcher binary, use
"SCIE_BOOT=update pants" to get the latest release or
"SCIE_BOOT=update pants --help" to learn more options.
-h | --help: Print this help message.
-d | --bin-dir:
The directory to install the scie-pants binary in, "~/bin" by default.
-b | --base-name:
The name to use for the scie-pants binary, "pants" by default.
-V | --version:
The version of the scie-pants binary to install, the latest version by default.
The available versions can be seen at:
https://github.com/pantsbuild/scie-pants/releases
Here a minimal Dockerfile:
FROM docker.io/python:3.9.16-slim AS build-stage
# Install prerequisites
RUN apt-get update \
&& apt-get install --no-install-recommends -y curl openssl \
&& apt-get autoremove -y \
&& apt-get clean all \
&& rm -rf /var/lib/apt/lists/*
# Make 'app' folder the current working directory
WORKDIR /app
ENV PATH=$PATH:/root/bin:/root/.local/bin
COPY . ./
RUN ./get-pants.sh \
&& pants --version
But as I said before, I'm not able to reproduce the problem locally :( The issue only occurs in Concourse CI.
I've got a local concourse set up. Can you share your pipeline yaml or the relevant bits? Or when you say you couldn't repro locally had you gone to this length already?
No, not that far ;) When I build the image locally, I use the Docker build command.
Unfortunately, I can't share the pipeline, but we use the oci-build task
to build images. The problematic part of the pipeline is very similar to the example in the README.
https://github.com/concourse/oci-build-task#migrating-from-the-docker-image-resource
Ok, thanks. Unfortunately that works fine too. I used the quick start docker-compose setup outlined here: https://concourse-ci.org/quick-start.html
This is the test rig repo: https://github.com/jsirois/scie-pants-issue-205 And the pipeline run looks like:
I think the only good news here is not much news: the specific setup of the Pipeline you have and the worker it runs on is crucial to the error.
@jsirois Thank you for your thorough investigation, it is much appreciated. We will continue on our side.
We updated our Concourse instances and the issue is gone. Thank you.
Well, I don't like mysteries, but I'm glad you found a reasonable path forward. Thanks for circling back and letting me know @erjac77 .
Hi,
Since upgrading to scie-pants 0.8.2, we are getting exit code 137 in our CI (Concourse) for all pipelines using Pants to build docker images.
If we downgrade to 0.8.1 using the following command in our Dockerfile, it works again :
Seems related to the environment variables and the fix to handle non-utf8 vars. Take note that we can build the image locally without error.
Thank you.