Files
computer-playbook/.github/workflows/test-deploy-single-node.yml
T
kevinveenbirkenbachandClaude Opus 4.8 120096bccf fix(ci): drop compose-covered roles from the host line of the same run
When a run deploys both single-node modes, the host discovery redeployed roles the compose line already covers (e.g. web-svc-html in both matrices). The single-node workflow now signals a co-running compose line via INFINITO_HOST_EXCLUDE_COMPOSE (a run-context registry key like INFINITO_DEPLOY_MODE), and the host query excludes the compose line's actually-triggered selection before its own budget cut, so freed host slots go to roles compose does not cover. Priority and regular lines each filter against their own compose counterpart through the identical whitelist/blacklist pass-through; host-only runs stay unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 01:38:05 +02:00

63 lines
1.8 KiB
YAML

name: "🏝️ Test: Deploy (single-node)"
on:
workflow_call:
inputs:
distros:
description: "Space-separated distro list"
required: true
type: string
whitelist:
description: "Optional space-separated whitelist of app ids"
required: false
type: string
default: ""
lifecycles:
description: "Lifecycle envelope for discovery (comma/space-separated)."
required: false
type: string
default: ""
modes:
description: "Single-node deploy modes to run (space-separated subset of 'compose host')."
required: false
type: string
default: "compose host"
blacklist:
description: "Optional space-separated app ids to drop from discovery"
required: false
type: string
default: ""
marker:
description: "Optional suffix appended to the discover job names (e.g. ' ⭐' for the priority line)"
required: false
type: string
default: ""
permissions:
contents: read
packages: read
jobs:
compose:
name: 📦 Compose
if: ${{ contains(inputs.modes, 'compose') }}
uses: ./.github/workflows/test-deploy-compose.yml
with:
distros: ${{ inputs.distros }}
whitelist: ${{ inputs.whitelist }}
lifecycles: ${{ inputs.lifecycles }}
blacklist: ${{ inputs.blacklist }}
marker: ${{ inputs.marker }}
host:
name: 💻 Host
if: ${{ contains(inputs.modes, 'host') }}
uses: ./.github/workflows/test-deploy-host.yml
with:
distros: ${{ inputs.distros }}
whitelist: ${{ inputs.whitelist }}
lifecycles: ${{ inputs.lifecycles }}
blacklist: ${{ inputs.blacklist }}
marker: ${{ inputs.marker }}
exclude_compose_covered: ${{ contains(inputs.modes, 'compose') && 'true' || 'false' }}