Skip to content

Debusine Daily

Debusine Daily #10

# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
# SPDX-License-Identifier: BSD-3-Clause-Clear
# SEE README.debusine.md BEFORE CHANGING THIS FILE
name: Debusine Daily
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
jobs:
# For scheduled runs, determine which target branches exist
check-branches:
name: Check branches
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- id: set-matrix
name: Set matrix
run: |
# Define candidate branches
candidates='["qli/debian/latest", "qli/debian/trixie", "qli-staging/debian/latest", "qli-staging/debian/trixie", "qcom/debian/latest", "qcom/debian/trixie"]'
# Filter to branches that exist
existing=()
for branch in $(echo "$candidates" | jq -r '.[]'); do
if git rev-parse --verify "origin/$branch" >/dev/null 2>&1; then
existing+=("\"$branch\"")
fi
done
# Create JSON array
matrix="[$(IFS=,; echo "${existing[*]}")]"
echo "matrix=$matrix" >> "$GITHUB_OUTPUT"
echo "Existing branches: $matrix"
# For scheduled runs, call the workflow once per existing branch
debusine-scheduled:
name: Debusine (${{ matrix.target_branch }})
needs: check-branches
strategy:
fail-fast: false
matrix:
target_branch: ${{ fromJson(needs.check-branches.outputs.matrix) }}
uses: qualcomm-linux/debusine-action/.github/workflows/debusine.yml@main
with:
target_branch: ${{ matrix.target_branch }}
source_ref: refs/heads/${{ matrix.target_branch }}
release: false
debusine-action-ref: main
debusine-parent-workspace: ${{ vars.DEBUSINE_PARENT_WORKSPACE || 'qli-ci' }}
job_index: ${{ strategy.job-index }}
permissions:
contents: write
deployments: write
packages: read
secrets:
DEBUSINE_USER: ${{ secrets.DEBUSINE_USER }}
DEBUSINE_TOKEN: ${{ secrets.DEBUSINE_TOKEN }}
DEBUSINE_RELEASE_TOKEN: ${{ secrets.DEBUSINE_RELEASE_TOKEN }}