From a64df842753f7d34713737fd0ac76df2d300307c Mon Sep 17 00:00:00 2001 From: Thomas Sibley Date: Fri, 15 Sep 2023 14:25:19 -0700 Subject: [PATCH] =?UTF-8?q?dev:=20Routinely=20check=20that=20the=20latest?= =?UTF-8?q?=20package=20is=20initially=20installable=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit …to catch issues like the one in monkeypox CI¹ earlier. Since successful installation relies on external resources out of our control, we want to regularly test it to ensure we know when an external change breaks it. Resolves . ¹ e.g. --- .github/workflows/installation.yaml | 39 +++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/installation.yaml diff --git a/.github/workflows/installation.yaml b/.github/workflows/installation.yaml new file mode 100644 index 0000000..11eb46a --- /dev/null +++ b/.github/workflows/installation.yaml @@ -0,0 +1,39 @@ +name: Installation + +on: + # Routinely check that the latest package is initially installable, to catch + # issues like earlier. + schedule: + # Every day at 17:42 UTC / 9:42 Seattle (winter) / 10:42 Seattle (summer) + - cron: "42 17 * * *" + + workflow_dispatch: + +jobs: + # The goal here is to make sure installation continues to work successfully + # on a variety of OS versions. We're _not_ testing unreleased package builds + # here—the packages are downloaded from our Anaconda channel—which is why + # this isn't part of CI. + # -trs, 29 August 2022 + test: + name: test (os=${{ matrix.os }}) + strategy: + fail-fast: false + matrix: + os: + - ubuntu-20.04 + - ubuntu-22.04 + - macos-11 + - macos-12 + + runs-on: ${{matrix.os}} + steps: + - uses: nextstrain/.github/actions/setup-nextstrain-cli@master + with: + # First Nextstrain CLI version which explicitly installs the latest + # conda-base package version during `nextstrain setup` instead of + # letting Micromamba resolve the package to a potentially older + # version. + # -trs, 9 Oct 2023 + cli-version: ">=7.3.0.post1" + runtime: conda