ops/devops: fix console runner build paths and log built image
This commit is contained in:
@@ -41,6 +41,7 @@
|
|||||||
## Execution Log
|
## Execution Log
|
||||||
| Date (UTC) | Update | Owner |
|
| Date (UTC) | Update | Owner |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
|
| 2025-12-07 | Built offline console runner image locally via `ops/devops/console/build-runner-image-ci.sh` (tag `stellaops/console-runner:offline-20251207T131911Z`, tarball at `ops/devops/artifacts/console-runner/console-runner-20251207T131911Z.tar`); ready for runner registration. | DevOps Guild |
|
||||||
| 2025-12-07 | Added console runner CI build workflow (`.gitea/workflows/console-runner-image.yml`) and CI wrapper (`ops/devops/console/build-runner-image-ci.sh`) to publish baked runner tarball + metadata. | DevOps Guild |
|
| 2025-12-07 | Added console runner CI build workflow (`.gitea/workflows/console-runner-image.yml`) and CI wrapper (`ops/devops/console/build-runner-image-ci.sh`) to publish baked runner tarball + metadata. | DevOps Guild |
|
||||||
| 2025-12-07 | Added console runner Dockerfile + build helper to bake npm/Playwright caches; README updated with runner image usage. | DevOps Guild |
|
| 2025-12-07 | Added console runner Dockerfile + build helper to bake npm/Playwright caches; README updated with runner image usage. | DevOps Guild |
|
||||||
| 2025-12-07 | Added console offline runner spec (`ops/devops/console/README.md`) and manual-only CI skeleton (`.gitea/workflows/console-ci.yml`); moved DEVOPS-CONSOLE-23-001 to DOING pending runner cache bake/approval. | DevOps Guild |
|
| 2025-12-07 | Added console offline runner spec (`ops/devops/console/README.md`) and manual-only CI skeleton (`.gitea/workflows/console-ci.yml`); moved DEVOPS-CONSOLE-23-001 to DOING pending runner cache bake/approval. | DevOps Guild |
|
||||||
|
|||||||
@@ -11,16 +11,14 @@ ENV DEBIAN_FRONTEND=noninteractive \
|
|||||||
NPM_CONFIG_AUDIT=false \
|
NPM_CONFIG_AUDIT=false \
|
||||||
NPM_CONFIG_PROGRESS=false \
|
NPM_CONFIG_PROGRESS=false \
|
||||||
SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \
|
SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \
|
||||||
PLAYWRIGHT_BROWSERS_PATH=/home/runner/.cache/ms-playwright \
|
PLAYWRIGHT_BROWSERS_PATH=/home/node/.cache/ms-playwright \
|
||||||
NPM_CONFIG_CACHE=/home/runner/.npm \
|
NPM_CONFIG_CACHE=/home/node/.npm \
|
||||||
CI=true
|
CI=true
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get install -y --no-install-recommends git ca-certificates dumb-init wget curl && \
|
apt-get install -y --no-install-recommends git ca-certificates dumb-init wget curl && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
RUN useradd -m -u 1000 runner
|
|
||||||
|
|
||||||
WORKDIR /tmp/console-seed
|
WORKDIR /tmp/console-seed
|
||||||
COPY ${APP_DIR}/package.json ${APP_DIR}/package-lock.json ./
|
COPY ${APP_DIR}/package.json ${APP_DIR}/package-lock.json ./
|
||||||
|
|
||||||
@@ -29,12 +27,12 @@ RUN npm ci --cache ${npm_config_cache} --prefer-offline --no-audit --progress=fa
|
|||||||
PLAYWRIGHT_BROWSERS_PATH=/tmp/ms-playwright npx playwright install chromium --with-deps && \
|
PLAYWRIGHT_BROWSERS_PATH=/tmp/ms-playwright npx playwright install chromium --with-deps && \
|
||||||
rm -rf node_modules
|
rm -rf node_modules
|
||||||
|
|
||||||
RUN install -d -o runner -g runner /home/runner/.npm /home/runner/.cache && \
|
RUN install -d -o node -g node /home/node/.npm /home/node/.cache && \
|
||||||
mv /tmp/npm-cache /home/runner/.npm && \
|
mv /tmp/npm-cache /home/node/.npm && \
|
||||||
mv /tmp/ms-playwright /home/runner/.cache/ms-playwright && \
|
mv /tmp/ms-playwright /home/node/.cache/ms-playwright && \
|
||||||
chown -R runner:runner /home/runner/.npm /home/runner/.cache
|
chown -R node:node /home/node/.npm /home/node/.cache
|
||||||
|
|
||||||
WORKDIR /workspace
|
WORKDIR /workspace
|
||||||
USER runner
|
USER node
|
||||||
ENTRYPOINT ["/usr/bin/dumb-init","--"]
|
ENTRYPOINT ["/usr/bin/dumb-init","--"]
|
||||||
CMD ["/bin/bash"]
|
CMD ["/bin/bash"]
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ set -euo pipefail
|
|||||||
# OUTPUT_TAR : optional override of tarball path (default: ops/devops/artifacts/console-runner/console-runner-$RUN_ID.tar)
|
# OUTPUT_TAR : optional override of tarball path (default: ops/devops/artifacts/console-runner/console-runner-$RUN_ID.tar)
|
||||||
# APP_DIR : optional override of app directory (default: src/Web/StellaOps.Web)
|
# APP_DIR : optional override of app directory (default: src/Web/StellaOps.Web)
|
||||||
|
|
||||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)"
|
||||||
RUN_ID="${RUN_ID:-${GITHUB_RUN_ID:-$(date -u +%Y%m%dT%H%M%SZ)}}"
|
RUN_ID="${RUN_ID:-${GITHUB_RUN_ID:-$(date -u +%Y%m%dT%H%M%SZ)}}"
|
||||||
APP_DIR="${APP_DIR:-src/Web/StellaOps.Web}"
|
APP_DIR="${APP_DIR:-src/Web/StellaOps.Web}"
|
||||||
IMAGE_TAG="${IMAGE_TAG:-stellaops/console-runner:offline-$RUN_ID}"
|
IMAGE_TAG="${IMAGE_TAG:-stellaops/console-runner:offline-$RUN_ID}"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ set -euo pipefail
|
|||||||
# IMAGE_TAG: docker tag to produce (default: stellaops/console-runner:offline)
|
# IMAGE_TAG: docker tag to produce (default: stellaops/console-runner:offline)
|
||||||
# OUTPUT_TAR: optional path to save the image tarball for airgap use.
|
# OUTPUT_TAR: optional path to save the image tarball for airgap use.
|
||||||
|
|
||||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)"
|
||||||
IMAGE_TAG=${IMAGE_TAG:-stellaops/console-runner:offline}
|
IMAGE_TAG=${IMAGE_TAG:-stellaops/console-runner:offline}
|
||||||
DOCKERFILE=${DOCKERFILE:-ops/devops/console/Dockerfile.runner}
|
DOCKERFILE=${DOCKERFILE:-ops/devops/console/Dockerfile.runner}
|
||||||
APP_DIR=${APP_DIR:-src/Web/StellaOps.Web}
|
APP_DIR=${APP_DIR:-src/Web/StellaOps.Web}
|
||||||
|
|||||||
Reference in New Issue
Block a user