diff --git a/scripts/offinfra-onboard b/scripts/offinfra-onboard index f152b913..ae811685 100755 --- a/scripts/offinfra-onboard +++ b/scripts/offinfra-onboard @@ -16,7 +16,7 @@ # Usage: # offinfra-onboard --clone --visibility private|public \ # --namespace --deploy "=[,...]" \ -# [--image ] [--context ] \ +# [--image ] [--context ] [--dockerfile ] \ # [--test-steps ] [--dry-run] # # --deploy is repeatable. --test-steps points at a YAML fragment of extra @@ -32,7 +32,7 @@ FORGEJO_LB="10.0.20.203" WP_API="https://ci.viktorbarzin.me/api" NAME=${1:?usage: offinfra-onboard [flags]}; shift -CLONE="" VISIBILITY="" NAMESPACE="" IMAGE="" CONTEXT="." TEST_STEPS_FILE="" DRY_RUN=0 NO_DEPLOY=0 +CLONE="" VISIBILITY="" NAMESPACE="" IMAGE="" CONTEXT="." DOCKERFILE="Dockerfile" TEST_STEPS_FILE="" DRY_RUN=0 NO_DEPLOY=0 DEPLOYS=() while [ $# -gt 0 ]; do case "$1" in @@ -41,6 +41,7 @@ while [ $# -gt 0 ]; do --namespace) NAMESPACE=$2; shift 2;; --image) IMAGE=$2; shift 2;; --context) CONTEXT=$2; shift 2;; + --dockerfile) DOCKERFILE=$2; shift 2;; --deploy) DEPLOYS+=("$2"); shift 2;; --test-steps) TEST_STEPS_FILE=$2; shift 2;; --no-deploy) NO_DEPLOY=1; shift;; @@ -172,7 +173,7 @@ else TEST_STEPS=' - run: echo "no test steps configured"' fi -export T_NAME=$NAME T_IMAGE=$IMAGE T_CONTEXT=$CONTEXT T_WPID=$WP_REPO_ID T_TEST="$TEST_STEPS" T_DEPLOY="$DEPLOY_CMDS" +export T_NAME=$NAME T_IMAGE=$IMAGE T_CONTEXT=$CONTEXT T_DOCKERFILE=$DOCKERFILE T_WPID=$WP_REPO_ID T_TEST="$TEST_STEPS" T_DEPLOY="$DEPLOY_CMDS" render() { # $1=template $2=dest python3 - "$1" "$2" <<'PYEOF' import os, sys @@ -181,6 +182,7 @@ s = open(src).read() s = s.replace('{{NAME}}', os.environ['T_NAME']) s = s.replace('{{IMAGE}}', os.environ['T_IMAGE']) s = s.replace('{{CONTEXT}}', os.environ['T_CONTEXT']) +s = s.replace('{{DOCKERFILE}}', os.environ['T_DOCKERFILE']) s = s.replace('{{WP_REPO_ID}}', os.environ['T_WPID']) s = s.replace('{{TEST_STEPS}}', os.environ['T_TEST']) s = s.replace('{{DEPLOY_CMDS}}', os.environ['T_DEPLOY'].replace('\\n', '\n').rstrip('\n')) diff --git a/scripts/offinfra-templates/build.yml.tmpl b/scripts/offinfra-templates/build.yml.tmpl index cacdd153..ff6712e7 100644 --- a/scripts/offinfra-templates/build.yml.tmpl +++ b/scripts/offinfra-templates/build.yml.tmpl @@ -63,6 +63,7 @@ jobs: - uses: docker/build-push-action@v7 with: context: {{CONTEXT}} + file: {{DOCKERFILE}} push: true platforms: linux/amd64 # Single-manifest images (no provenance/SBOM attestation children) so