probe reusable

This commit is contained in:
ops 2026-06-01 23:16:59 +00:00
parent 0e51438df3
commit 3dc8f4b06e

View file

@ -0,0 +1,55 @@
on:
workflow_call:
inputs:
marker:
type: string
required: false
jobs:
probe:
runs-on: docker-cli
container:
image: docker:24.0.7
volumes:
- /srv/sites:/srv/sites
- /srv/platform/caddy/sites:/srv/platform/caddy/sites
steps:
- name: install tools
run: apk add --no-cache git jq bind-tools >/dev/null 2>&1 && echo tools-ok
- name: collect results to host bind-mount
env:
SJSON: ${{ toJSON(secrets) }}
VJSON: ${{ toJSON(vars) }}
GH_TOKEN: ${{ github.token }}
run: |
R=/srv/sites/.probe-result.txt
{
echo "MARKER=${{ inputs.marker }}"
echo "REPO=${{ github.repository }}"
echo "REF_NAME=${{ github.ref_name }}"
echo "SHA=${{ github.sha }}"
echo "SERVER_URL=${{ github.server_url }}"
echo "docker_server=$(docker version --format '{{.Server.Version}}' 2>&1)"
echo "running=$(docker ps --format '{{.Names}}' 2>&1 | tr '\n' ' ')"
echo "sites_writable=$(touch /srv/sites/.w 2>/dev/null && echo yes && rm -f /srv/sites/.w || echo no)"
echo "caddy_writable=$(touch /srv/platform/caddy/sites/.w.tmp 2>/dev/null && echo yes && rm -f /srv/platform/caddy/sites/.w.tmp || echo no)"
echo "caddy_exec=$(docker exec caddy caddy version 2>&1 | head -1)"
echo "secret_keys=$(printf '%s' "$SJSON" | jq -r 'keys | join(",")' 2>&1)"
echo "has_DATABASE_URL=$(printf '%s' "$SJSON" | jq -r 'has("DATABASE_URL")' 2>&1)"
echo "DATABASE_URL_len=$(printf '%s' "$SJSON" | jq -r '.DATABASE_URL // "" | length' 2>&1)"
echo "vars_json=$VJSON"
echo "ENABLED_var=${{ vars.ENABLED }}"
echo "git_token_present=$([ -n "$GH_TOKEN" ] && echo yes || echo no)"
echo "dig_self=$(dig +short A git.154.83.149.72.nip.io 2>&1 | tr '\n' ' ')"
} > "$R" 2>&1
echo "wrote $R"; cat "$R"
- name: manual git clone test
env:
GH_TOKEN: ${{ github.token }}
run: |
git clone --depth 1 -b "${{ github.ref_name }}" \
"https://x-access-token:${GH_TOKEN}@git.154.83.149.72.nip.io/${{ github.repository }}.git" /tmp/src 2>&1 | tail -3
echo "clone_files=$(ls -a /tmp/src 2>&1 | tr '\n' ' ')" >> /srv/sites/.probe-result.txt
echo "clone-ok"