Files
computer-playbook/.github/workflows/test-deploy.yml
Kevin Veen-Birkenbach f2ace362bc Refactor container deploy pipeline:
- Replace inline shell scripts with Python-driven orchestration
- Introduce inner dockerd started via detached docker run
- Add docker exec–based inventory creation and dedicated deploy execution
- Add automatic vault password generation for CI
- Update GitHub Actions workflow to use new container deploy wrapper
- Add complete unit test suite for container deploy behavior
- Fix CLI argument forwarding and ensure single docker run call

Conversation reference:
https://chatgpt.com/share/6931c45d-4e40-800f-852f-6c9b1f7dc281
2025-12-04 18:27:15 +01:00

69 lines
1.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# .github/workflows/test-deploy.yml
name: Build & Test Infinito.Nexus CLI in Docker Container
on:
push:
branches:
- main
- master
- develop
- "*"
pull_request:
jobs:
test-deploy:
runs-on: ubuntu-latest
timeout-minutes: 240
env:
EXCLUDED_ROLES: >
drv-lid-switch,
svc-net-wireguard-core,
svc-net-wireguard-firewalled,
svc-net-wireguard-plain,
svc-opt-keyboard-color,
svc-opt-ssd-hdd,
web-app-bridgy-fed,
web-app-oauth2-proxy,
web-app-postmarks,
web-app-elk,
web-app-syncope,
web-app-socialhome,
web-svc-xmpp,
INFINITO_IMAGE: infinito:latest
steps:
- name: Main Checkout repository
uses: actions/checkout@v4
- name: Show Docker version
run: docker version
# First deploy: normal + debug
- name: First deploy (normal + debug)
run: |
python -m cli.deploy.container --build --exclude "$EXCLUDED_ROLES" -- \
-T server \
--debug \
--skip-cleanup \
--skip-tests
# Second deploy: reset + debug
- name: Second deploy (--reset --debug)
run: |
python -m cli.deploy.container --exclude "$EXCLUDED_ROLES" -- \
-T server \
--reset \
--debug \
--skip-cleanup \
--skip-tests
# Third deploy: async, no debug
- name: Third deploy (async deploy no debug)
run: |
python -m cli.deploy.container --exclude "$EXCLUDED_ROLES" -- \
-T server \
--skip-cleanup \
--skip-tests