Skip to content

Commit

Permalink
Refactor pathogen-repo-ci to be smarter [#89]
Browse files Browse the repository at this point in the history
  • Loading branch information
genehack committed May 31, 2024
1 parent 6d8f901 commit d60bfb0
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 10 deletions.
21 changes: 11 additions & 10 deletions .github/workflows/pathogen-repo-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -232,16 +232,17 @@ jobs:
with:
runtime: ${{ matrix.runtime }}

- name: Run ingest
uses: nextstrain/.github/actions/run-nextstrain-build@update-ci-89
with:
step: ingest

- run: nextstrain build . ${{ inputs.build-args }}
- name: Run phylogenetic
uses: nextstrain/.github/actions/run-nextstrain-build@update-ci-89
with:
step: phylogenetic

- if: always()
uses: actions/upload-artifact@v4
- name: Run nextclade
uses: nextstrain/.github/actions/run-nextstrain-build@update-ci-89
with:
name: ${{ inputs.artifact-name }}-${{ matrix.runtime }}
path: |
auspice/
results/
benchmarks/
logs/
.snakemake/log/
step: nextclade
39 changes: 39 additions & 0 deletions actions/run-nextstrain-build/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: run-nextstrain-build
description: >-
Runs a single `nextstrain build` command in a given sub-directory of
a pathogen repo. Must be provided with the name of the
sub-directory.
inputs:
step:
description: The name of the sub-directory to run the build from
type: string
required: true

runs:
using: "composite"
steps:
- id: Run ${{ inputs.step }}
env:
STEP: ${{ inputs.step }}
run: |
if [[ -f nextstrain-pathogen.yaml && -f $STEP/Snakefile && -f $STEP/build-configs/ci/config.yaml ]]; then
nextstrain build $STEP --configfile build-configs/ci/config.yaml
else
echo "Skipping $STEP build due to one or more missing files."
for i in nextstrain-pathogen.yaml $STEP/Snakefile $STEP/build-configs/ci/config.yaml; do
! test -f $i && echo missing $i
done
fi
shell: bash

- id: Upload ${{ inputs.step }} artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{inputs.step }}-outputs-${{ matrix.runtime }}
path: |
${{ inputs.step }}/results/
${{ inputs.step }}/benchmarks/
${{ inputs.step }}/logs/
${{ inputs.step }}/.snakemake/log/

0 comments on commit d60bfb0

Please sign in to comment.