|
|
|
@@ -523,6 +523,8 @@ targets:
|
|
|
|
|
filename: hwlab-ci-node-tools.public.Dockerfile
|
|
|
|
|
lines:
|
|
|
|
|
- FROM docker.io/library/golang:1.24-bookworm AS golang-toolchain
|
|
|
|
|
- FROM docker.io/docker:29-cli AS docker-cli
|
|
|
|
|
- RUN apk add --no-cache kubectl
|
|
|
|
|
- FROM 127.0.0.1:5000/hwlab/hwlab-ci-node-tools:node22-alpine-bun-v1
|
|
|
|
|
- ARG HTTP_PROXY
|
|
|
|
|
- ARG HTTPS_PROXY
|
|
|
|
@@ -533,11 +535,12 @@ targets:
|
|
|
|
|
- ARG all_proxy
|
|
|
|
|
- ARG no_proxy
|
|
|
|
|
- COPY --from=golang-toolchain /usr/local/go /usr/local/go
|
|
|
|
|
- COPY --from=docker-cli /usr/bin/kubectl /usr/local/bin/kubectl
|
|
|
|
|
- ENV PATH=/usr/local/go/bin:$PATH
|
|
|
|
|
- RUN ln -sf /usr/local/bin/bun /usr/local/bin/bunx
|
|
|
|
|
- ENV HWLAB_CI_NODE_DEPS=/opt/hwlab-ci-node-deps/node_modules
|
|
|
|
|
- RUN set -eu; export HTTP_PROXY="${HTTP_PROXY:-${http_proxy:-}}"; export HTTPS_PROXY="${HTTPS_PROXY:-${https_proxy:-$HTTP_PROXY}}"; export ALL_PROXY="${ALL_PROXY:-${all_proxy:-}}"; export NO_PROXY="${NO_PROXY:-${no_proxy:-}}"; export http_proxy="$HTTP_PROXY"; export https_proxy="$HTTPS_PROXY"; export all_proxy="$ALL_PROXY"; export no_proxy="$NO_PROXY"; export npm_config_registry="https://registry.npmmirror.com/"; export BUN_CONFIG_REGISTRY="https://registry.npmmirror.com/"; export npm_config_noproxy="$NO_PROXY"; if [ -n "$HTTP_PROXY" ]; then export npm_config_proxy="$HTTP_PROXY"; fi; if [ -n "$HTTPS_PROXY" ]; then export npm_config_https_proxy="$HTTPS_PROXY"; fi; export npm_config_fetch_retries=2; export npm_config_fetch_retry_mintimeout=2000; export npm_config_fetch_retry_maxtimeout=16000; export npm_config_fetch_timeout=120000; proxy_label="${HTTP_PROXY:+HTTP_PROXY}"; proxy_label="${proxy_label:-none}"; mkdir -p /opt/hwlab-ci-node-deps; cd /opt/hwlab-ci-node-deps; printf '{"private":true,"dependencies":{}}\n' > package.json; ok=0; delay=2; for attempt in 1 2 3 4 5; do echo "{\"event\":\"tools-yaml-node-npm-install\",\"attempt\":\"$attempt/5\",\"registry\":\"$npm_config_registry\",\"proxy\":\"$proxy_label\"}" >&2; if timeout 180s npm install --package-lock=false --no-save --ignore-scripts --no-audit --no-fund --omit=dev yaml@2.8.3; then ok=1; break; fi; if [ "$attempt" = 5 ]; then break; fi; echo "{\"event\":\"tools-yaml-node-npm-install\",\"status\":\"retrying\",\"attempt\":\"$attempt/5\",\"sleepSeconds\":$delay}" >&2; sleep "$delay"; delay=$((delay * 2)); done; test "$ok" = 1; node --input-type=module -e 'import("/opt/hwlab-ci-node-deps/node_modules/yaml/browser/dist/index.js").then((yaml)=>console.log("yaml-ok", typeof yaml.parse))'
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && ssh -V && go version
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && kubectl version --client=true && ssh -V && go version
|
|
|
|
|
buildArgs: {}
|
|
|
|
|
buildNetwork: host
|
|
|
|
|
publicBaseImages:
|
|
|
|
@@ -729,6 +732,7 @@ targets:
|
|
|
|
|
lines:
|
|
|
|
|
- FROM docker.io/oven/bun:1.3.13 AS bun-runtime
|
|
|
|
|
- FROM docker.io/docker:29-cli AS docker-cli
|
|
|
|
|
- RUN apk add --no-cache kubectl
|
|
|
|
|
- FROM docker.io/library/golang:1.24-bookworm AS golang-toolchain
|
|
|
|
|
- FROM docker.io/library/node:22-bookworm-slim AS node-runtime
|
|
|
|
|
- FROM docker.io/library/python:3.12-bookworm
|
|
|
|
@@ -745,12 +749,13 @@ targets:
|
|
|
|
|
- COPY --from=node-runtime /usr/local/lib/node_modules /usr/local/lib/node_modules
|
|
|
|
|
- COPY --from=bun-runtime /usr/local/bin/bun /usr/local/bin/bun
|
|
|
|
|
- COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker
|
|
|
|
|
- COPY --from=docker-cli /usr/bin/kubectl /usr/local/bin/kubectl
|
|
|
|
|
- ENV PATH=/usr/local/go/bin:$PATH
|
|
|
|
|
- RUN ln -sf /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm && ln -sf /usr/local/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx
|
|
|
|
|
- RUN ln -sf /usr/local/bin/bun /usr/local/bin/bunx
|
|
|
|
|
- ENV HWLAB_CI_NODE_DEPS=/opt/hwlab-ci-node-deps/node_modules
|
|
|
|
|
- RUN set -eu; export HTTP_PROXY="${HTTP_PROXY:-${http_proxy:-}}"; export HTTPS_PROXY="${HTTPS_PROXY:-${https_proxy:-$HTTP_PROXY}}"; export ALL_PROXY="${ALL_PROXY:-${all_proxy:-}}"; export NO_PROXY="${NO_PROXY:-${no_proxy:-}}"; export http_proxy="$HTTP_PROXY"; export https_proxy="$HTTPS_PROXY"; export all_proxy="$ALL_PROXY"; export no_proxy="$NO_PROXY"; export npm_config_registry="https://registry.npmmirror.com/"; export BUN_CONFIG_REGISTRY="https://registry.npmmirror.com/"; export npm_config_noproxy="$NO_PROXY"; if [ -n "$HTTP_PROXY" ]; then export npm_config_proxy="$HTTP_PROXY"; fi; if [ -n "$HTTPS_PROXY" ]; then export npm_config_https_proxy="$HTTPS_PROXY"; fi; export npm_config_fetch_retries=2; export npm_config_fetch_retry_mintimeout=2000; export npm_config_fetch_retry_maxtimeout=16000; export npm_config_fetch_timeout=120000; proxy_label="${HTTP_PROXY:+HTTP_PROXY}"; proxy_label="${proxy_label:-none}"; mkdir -p /opt/hwlab-ci-node-deps; cd /opt/hwlab-ci-node-deps; printf '{"private":true,"dependencies":{}}\n' > package.json; ok=0; delay=2; for attempt in 1 2 3 4 5; do echo "{\"event\":\"tools-yaml-node-npm-install\",\"attempt\":\"$attempt/5\",\"registry\":\"$npm_config_registry\",\"proxy\":\"$proxy_label\"}" >&2; if timeout 180s npm install --package-lock=false --no-save --ignore-scripts --no-audit --no-fund --omit=dev yaml@2.8.3; then ok=1; break; fi; if [ "$attempt" = 5 ]; then break; fi; echo "{\"event\":\"tools-yaml-node-npm-install\",\"status\":\"retrying\",\"attempt\":\"$attempt/5\",\"sleepSeconds\":$delay}" >&2; sleep "$delay"; delay=$((delay * 2)); done; test "$ok" = 1; node --input-type=module -e 'import("/opt/hwlab-ci-node-deps/node_modules/yaml/browser/dist/index.js").then((yaml)=>console.log("yaml-ok", typeof yaml.parse))'
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && ssh -V && go version
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && kubectl version --client=true && ssh -V && go version
|
|
|
|
|
buildArgs: {}
|
|
|
|
|
buildNetwork: host
|
|
|
|
|
publicBaseImages:
|
|
|
|
@@ -947,6 +952,7 @@ targets:
|
|
|
|
|
lines:
|
|
|
|
|
- FROM docker.io/oven/bun:1.3.13 AS bun-runtime
|
|
|
|
|
- FROM docker.io/docker:29-cli AS docker-cli
|
|
|
|
|
- RUN apk add --no-cache kubectl
|
|
|
|
|
- FROM docker.io/library/golang:1.24-bookworm AS golang-toolchain
|
|
|
|
|
- FROM docker.io/library/node:22-bookworm-slim AS node-runtime
|
|
|
|
|
- FROM docker.io/library/python:3.12-bookworm
|
|
|
|
@@ -963,12 +969,13 @@ targets:
|
|
|
|
|
- COPY --from=node-runtime /usr/local/lib/node_modules /usr/local/lib/node_modules
|
|
|
|
|
- COPY --from=bun-runtime /usr/local/bin/bun /usr/local/bin/bun
|
|
|
|
|
- COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker
|
|
|
|
|
- COPY --from=docker-cli /usr/bin/kubectl /usr/local/bin/kubectl
|
|
|
|
|
- ENV PATH=/usr/local/go/bin:$PATH
|
|
|
|
|
- RUN ln -sf /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm && ln -sf /usr/local/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx
|
|
|
|
|
- RUN ln -sf /usr/local/bin/bun /usr/local/bin/bunx
|
|
|
|
|
- ENV HWLAB_CI_NODE_DEPS=/opt/hwlab-ci-node-deps/node_modules
|
|
|
|
|
- RUN set -eu; export HTTP_PROXY="${HTTP_PROXY:-${http_proxy:-}}"; export HTTPS_PROXY="${HTTPS_PROXY:-${https_proxy:-$HTTP_PROXY}}"; export ALL_PROXY="${ALL_PROXY:-${all_proxy:-}}"; export NO_PROXY="${NO_PROXY:-${no_proxy:-}}"; export http_proxy="$HTTP_PROXY"; export https_proxy="$HTTPS_PROXY"; export all_proxy="$ALL_PROXY"; export no_proxy="$NO_PROXY"; export npm_config_registry="https://registry.npmmirror.com/"; export BUN_CONFIG_REGISTRY="https://registry.npmmirror.com/"; export npm_config_noproxy="$NO_PROXY"; if [ -n "$HTTP_PROXY" ]; then export npm_config_proxy="$HTTP_PROXY"; fi; if [ -n "$HTTPS_PROXY" ]; then export npm_config_https_proxy="$HTTPS_PROXY"; fi; export npm_config_fetch_retries=2; export npm_config_fetch_retry_mintimeout=2000; export npm_config_fetch_retry_maxtimeout=16000; export npm_config_fetch_timeout=120000; proxy_label="${HTTP_PROXY:+HTTP_PROXY}"; proxy_label="${proxy_label:-none}"; mkdir -p /opt/hwlab-ci-node-deps; cd /opt/hwlab-ci-node-deps; printf '{"private":true,"dependencies":{}}\n' > package.json; ok=0; delay=2; for attempt in 1 2 3 4 5; do echo "{\"event\":\"tools-yaml-node-npm-install\",\"attempt\":\"$attempt/5\",\"registry\":\"$npm_config_registry\",\"proxy\":\"$proxy_label\"}" >&2; if timeout 180s npm install --package-lock=false --no-save --ignore-scripts --no-audit --no-fund --omit=dev yaml@2.8.3; then ok=1; break; fi; if [ "$attempt" = 5 ]; then break; fi; echo "{\"event\":\"tools-yaml-node-npm-install\",\"status\":\"retrying\",\"attempt\":\"$attempt/5\",\"sleepSeconds\":$delay}" >&2; sleep "$delay"; delay=$((delay * 2)); done; test "$ok" = 1; node --input-type=module -e 'import("/opt/hwlab-ci-node-deps/node_modules/yaml/browser/dist/index.js").then((yaml)=>console.log("yaml-ok", typeof yaml.parse))'
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && ssh -V && go version
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && kubectl version --client=true && ssh -V && go version
|
|
|
|
|
buildArgs: {}
|
|
|
|
|
buildNetwork: host
|
|
|
|
|
publicBaseImages:
|
|
|
|
@@ -1206,6 +1213,7 @@ targets:
|
|
|
|
|
lines:
|
|
|
|
|
- FROM docker.io/oven/bun:1.3.13 AS bun-runtime
|
|
|
|
|
- FROM docker.io/docker:29-cli AS docker-cli
|
|
|
|
|
- RUN apk add --no-cache kubectl
|
|
|
|
|
- FROM docker.io/library/golang:1.24-bookworm AS golang-toolchain
|
|
|
|
|
- FROM docker.io/library/node:22-bookworm-slim AS node-runtime
|
|
|
|
|
- FROM docker.io/library/python:3.12-bookworm
|
|
|
|
@@ -1222,12 +1230,13 @@ targets:
|
|
|
|
|
- COPY --from=node-runtime /usr/local/lib/node_modules /usr/local/lib/node_modules
|
|
|
|
|
- COPY --from=bun-runtime /usr/local/bin/bun /usr/local/bin/bun
|
|
|
|
|
- COPY --from=docker-cli /usr/local/bin/docker /usr/local/bin/docker
|
|
|
|
|
- COPY --from=docker-cli /usr/bin/kubectl /usr/local/bin/kubectl
|
|
|
|
|
- ENV PATH=/usr/local/go/bin:$PATH
|
|
|
|
|
- RUN ln -sf /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm && ln -sf /usr/local/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx
|
|
|
|
|
- RUN ln -sf /usr/local/bin/bun /usr/local/bin/bunx
|
|
|
|
|
- ENV HWLAB_CI_NODE_DEPS=/opt/hwlab-ci-node-deps/node_modules
|
|
|
|
|
- RUN set -eu; unset HTTP_PROXY HTTPS_PROXY ALL_PROXY http_proxy https_proxy all_proxy; export npm_config_registry="https://registry.npmmirror.com/"; export BUN_CONFIG_REGISTRY="https://registry.npmmirror.com/"; export npm_config_fetch_retries=2; export npm_config_fetch_retry_mintimeout=2000; export npm_config_fetch_retry_maxtimeout=16000; export npm_config_fetch_timeout=120000; mkdir -p /opt/hwlab-ci-node-deps; cd /opt/hwlab-ci-node-deps; printf '{"private":true,"dependencies":{}}\n' > package.json; ok=0; delay=2; for attempt in 1 2 3 4 5; do echo "{\"event\":\"tools-yaml-node-npm-install\",\"attempt\":\"$attempt/5\",\"registry\":\"$npm_config_registry\",\"proxy\":\"none\"}" >&2; if timeout 180s npm install --package-lock=false --no-save --ignore-scripts --no-audit --no-fund --omit=dev yaml@2.8.3; then ok=1; break; fi; if [ "$attempt" = 5 ]; then break; fi; echo "{\"event\":\"tools-yaml-node-npm-install\",\"status\":\"retrying\",\"attempt\":\"$attempt/5\",\"sleepSeconds\":$delay}" >&2; sleep "$delay"; delay=$((delay * 2)); done; test "$ok" = 1; node --input-type=module -e 'import("/opt/hwlab-ci-node-deps/node_modules/yaml/browser/dist/index.js").then((yaml)=>console.log("yaml-ok", typeof yaml.parse))'
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && ssh -V && go version
|
|
|
|
|
- RUN node --version && npm --version && bun --version && git --version && python3 --version && docker --version && kubectl version --client=true && ssh -V && go version
|
|
|
|
|
buildArgs: {}
|
|
|
|
|
buildNetwork: host
|
|
|
|
|
publicBaseImages:
|
|
|
|
|