Skip to content

[core] Automated Trial #20

[core] Automated Trial

[core] Automated Trial #20

name: ci-distro-trial
on:
pull_request:
branches: [dev]
paths:
- 20*.*/*/passed/seed-environment-conda.yml
- 20*.*/*/released/seed-environment-conda.yml
concurrency:
group: ${{ github.head_ref }}
cancel-in-progress: true
jobs:
prepare:
uses: ./.github/workflows/ci-distro-trial_0-prepare.yaml
rebuild-0:
needs: [prepare]
if: ${{ fromJSON(needs.prepare.outputs.generation-matrix)[0] != null }}
uses: ./.github/workflows/ci-distro-trial_1-build-generation.yaml
with:
rev-deps-key: ${{ needs.prepare.outputs.rev-deps-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
matrix-key: ${{ needs.prepare.outputs.matrix-key }}
sibling-ref: ${{ needs.prepare.outputs.sibling-ref }}
matrix-index: 0
rebuild-1:
needs: [prepare, rebuild-0]
if: ${{ fromJSON(needs.prepare.outputs.generation-matrix)[1] != null }}
uses: ./.github/workflows/ci-distro-trial_1-build-generation.yaml
with:
rev-deps-key: ${{ needs.prepare.outputs.rev-deps-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
matrix-key: ${{ needs.prepare.outputs.matrix-key }}
sibling-ref: ${{ needs.prepare.outputs.sibling-ref }}
matrix-index: 1
rebuild-2:
needs: [prepare, rebuild-1]
if: ${{ fromJSON(needs.prepare.outputs.generation-matrix)[2] != null }}
uses: ./.github/workflows/ci-distro-trial_1-build-generation.yaml
with:
rev-deps-key: ${{ needs.prepare.outputs.rev-deps-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
matrix-key: ${{ needs.prepare.outputs.matrix-key }}
sibling-ref: ${{ needs.prepare.outputs.sibling-ref }}
matrix-index: 2
rebuild-3:
needs: [prepare, rebuild-2]
if: ${{ fromJSON(needs.prepare.outputs.generation-matrix)[3] != null }}
uses: ./.github/workflows/ci-distro-trial_1-build-generation.yaml
with:
rev-deps-key: ${{ needs.prepare.outputs.rev-deps-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
matrix-key: ${{ needs.prepare.outputs.matrix-key }}
sibling-ref: ${{ needs.prepare.outputs.sibling-ref }}
matrix-index: 3
rebuild-4:
needs: [prepare, rebuild-3]
if: ${{ fromJSON(needs.prepare.outputs.generation-matrix)[4] != null }}
uses: ./.github/workflows/ci-distro-trial_1-build-generation.yaml
with:
rev-deps-key: ${{ needs.prepare.outputs.rev-deps-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
matrix-key: ${{ needs.prepare.outputs.matrix-key }}
sibling-ref: ${{ needs.prepare.outputs.sibling-ref }}
matrix-index: 4
rebuild-5:
needs: [prepare, rebuild-4]
if: ${{ fromJSON(needs.prepare.outputs.generation-matrix)[5] != null }}
uses: ./.github/workflows/ci-distro-trial_1-build-generation.yaml
with:
rev-deps-key: ${{ needs.prepare.outputs.rev-deps-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
matrix-key: ${{ needs.prepare.outputs.matrix-key }}
sibling-ref: ${{ needs.prepare.outputs.sibling-ref }}
matrix-index: 5
build-metapackage:
needs: [prepare, rebuild-0, rebuild-1, rebuild-2, rebuild-3, rebuild-4, rebuild-5]
if: ${{ always() && !cancelled() && !contains(needs.*.result, 'failure') && !contains(needs.*.result, 'cancelled') }}
uses: ./.github/workflows/ci-distro-trial_2-build-metapackage.yaml
with:
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
solved-environment-key: ${{ needs.prepare.outputs.solved-environment-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
distro-name: qiime2-${{ needs.prepare.outputs.distro }}
test-metapackage:
needs: [prepare, build-metapackage]
if: ${{ always() && !cancelled() && !contains(needs.*.result, 'failure') && !contains(needs.*.result, 'cancelled') }}
uses: ./.github/workflows/ci-distro-trial_3-test-metapackage.yaml
with:
solved-environment-key: ${{ needs.prepare.outputs.solved-environment-key }}
matrix-key: ${{ needs.prepare.outputs.matrix-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}
patched-channel-key: ${{ needs.prepare.outputs.patched-channel-key }}
distro-name: qiime2-${{ needs.prepare.outputs.distro }}
upload-builds:
needs: [prepare, build-metapackage, test-metapackage]
if: ${{ always() && !cancelled() && !contains(needs.*.result, 'failure') && !contains(needs.*.result, 'cancelled') }}
uses: ./.github/workflows/ci-distro-trial_4-upload-builds.yaml
with:
epoch: ${{ needs.prepare.outputs.epoch }}
distro: ${{ needs.prepare.outputs.distro }}
distro-version: ${{ needs.build-metapackage.outputs.distro-version }}
is-release: ${{ needs.prepare.outputs.is-release }}
pr-ref: ${{ github.event.pull_request.head.ref }}
seed-environment-key: ${{ needs.prepare.outputs.seed-environment-key }}
solved-environment-key: ${{ needs.prepare.outputs.solved-environment-key }}
repodata-patches-key: ${{ needs.prepare.outputs.repodata-patches-key }}
rebuilt-channel-key: ${{ needs.prepare.outputs.rebuilt-channel-key }}