aboutsummaryrefslogtreecommitdiff
path: root/ci
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2024-01-26 08:10:34 -0800
committerFranck Cuny <franck@fcuny.net>2024-01-26 08:10:34 -0800
commite8fc52950e7b8a79770addeb134d278d25a1521b (patch)
treeae91bf06be70c578a0e8a1c96b2271c6a1dabe87 /ci
parentfail if the token is missing (diff)
downloadinfra-e8fc52950e7b8a79770addeb134d278d25a1521b.tar.gz
print various environments variable from CI
CI is currently failing with the following error: ``` go: errors parsing go.mod: /home/runner/work/world/world/go.mod:3: invalid go version '1.21.4': must match format 1.23 ``` From [1]: > Before Go 1.21, the initial release of a Go toolchain was version 1.N, not 1.N.0 which makes me think that I'm CI is running with a version of go older than 1.21, while I specify 1.21 in my nix config. If that's the case, something is not correct in the CI environment and I should fix it. Hopefully the script will give me the information I need to debug this. [1] https://go.dev/doc/toolchain#version
Diffstat (limited to 'ci')
-rwxr-xr-xci/build-environment.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/ci/build-environment.py b/ci/build-environment.py
new file mode 100755
index 0000000..64a827a
--- /dev/null
+++ b/ci/build-environment.py
@@ -0,0 +1,25 @@
+#!/usr/bin/env python3
+
+from shutil import which
+import subprocess
+
+
+def go_version():
+ print("go information:")
+
+ path = which("go")
+ print(f" path={path}")
+
+ cmd = subprocess.run([path, "version"], capture_output=True, text=True)
+ # output is `go version go1.21.5 darwin/arm64`, we want the version and architecture
+ version = cmd.stdout.rstrip().split()
+ print(f" version={version[2]}")
+ print(f" architecture={version[3]}")
+
+
+def main():
+ go_version()
+
+
+if __name__ == "__main__":
+ main()