From fb4e2230e6ef604f94a02af8e4e272e4f045f78a Mon Sep 17 00:00:00 2001 From: Wes Bonelli Date: Thu, 19 Oct 2023 08:30:13 -0400 Subject: [PATCH] refactor: schedule warning outages, drop branch filters from push trigger --- .github/workflows/ci.yml | 5 ++--- .github/workflows/integration.yml | 5 ++--- README.md | 9 ++++++++- action.yml | 17 ++++++++++++++--- 4 files changed, 26 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 16c61ca..79d44e4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,9 +1,6 @@ name: CI on: push: - branches: - - main - - develop* paths-ignore: - '**.md' pull_request: @@ -67,12 +64,14 @@ jobs: with: path: ${{ env.TEST_BINDIR }} setvars: ${{ matrix.setvars }} + ignore: true - name: Install compilers if: matrix.path == 'default' uses: ./ with: setvars: ${{ matrix.setvars }} + ignore: true - name: Set environment variables if: runner.os != 'Windows' && matrix.setvars != 'true' diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index ab2a302..cf860d0 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -1,9 +1,6 @@ name: Integration testing on: push: - branches: - - main - - develop* paths-ignore: - '**.md' pull_request: @@ -70,6 +67,7 @@ jobs: uses: ./ with: path: ${{ runner.os != 'Windows' && 'bin' || 'C:\Program Files (x86)\Intel\oneAPI' }} + ignore: true - name: Build modflow6 (Linux & Mac) if: runner.os != 'Windows' && matrix.env == 'pip' @@ -171,6 +169,7 @@ jobs: uses: ./ with: path: ${{ runner.os != 'Windows' && 'bin' || 'C:\Program Files (x86)\Intel\oneAPI' }} + ignore: true - name: Download examples working-directory: pymake diff --git a/README.md b/README.md index 3cfdf0e..21e6398 100644 --- a/README.md +++ b/README.md @@ -6,11 +6,12 @@ An action to install and cache [Intel OneAPI](https://www.intel.com/content/www/us/en/developer/tools/oneapi/fortran-compiler.html#gs.bksc2p) Fortran and C/C++ compilers via the [HPC Toolkit](https://www.intel.com/content/www/us/en/developer/tools/oneapi/hpc-toolkit.html#gs.g10hgy). -**Note:** [`awvwgk/setup-fortran`](https://github.com/awvwgk/setup-fortran) is recommended. Maintenance of this action will cease in 2024. +**Note:** Maintenance of this action will cease in 2024. [`fortran-lang/setup-fortran`](https://github.com/fortran-lang/setup-fortran) is recommended instead. This action will disable itself 10% of the time until then — set `ignore: true` to avoid this. + - [Overview](#overview) - [Usage](#usage) - [Environment variables](#environment-variables) @@ -20,6 +21,7 @@ An action to install and cache [Intel OneAPI](https://www.intel.com/content/www/ - [Setting oneAPI variables on Linux/macOS](#setting-oneapi-variables-on-linuxmacos) - [Setting oneAPI variables on Windows](#setting-oneapi-variables-on-windows) - [`cache`](#cache) + - [`ignore`](#ignore) - [Outputs](#outputs) - [`cache-hit`](#cache-hit) - [Windows caveats](#windows-caveats) @@ -67,6 +69,7 @@ Besides oneAPI environment variables configured by `setvars` scripts (whose name - `path` - `setvars` - `cache` +- `ignore` ### `path` @@ -106,6 +109,10 @@ The `cache` input is a boolean that controls whether the action caches the oneAP **Note:** installation on Windows can take a long time (~30 minutes) so caching is recommended, however an [outstanding cache reservation bug in `actions/cache`](https://github.com/actions/cache/issues/144) can cause the cache to [fail to restore while simultaneously rejecting new saves](https://github.com/MODFLOW-USGS/modflow6/actions/runs/3624583228/jobs/6111766806#step:6:152). The [GitHub-endorsed workaround for this issue](https://github.com/actions/cache/issues/144#issuecomment-579323937) is currently to change keys, so this action rotates the cache key once daily. You may want to run a job in the early hours of the morning to warm up the cache on your repository's default branch, so PR/feature branches can restore from it throughout the day. +### `ignore` + +Set to `true` to disable impending archival warning brownouts. The default is `false`. + ## Outputs The action has the following outputs: diff --git a/action.yml b/action.yml index a9476ba..e39f2df 100644 --- a/action.yml +++ b/action.yml @@ -13,6 +13,10 @@ inputs: description: Whether to cache the installation required: false default: 'true' + ignore: + description: Whether to disable archival/migration brownouts + required: false + default: 'false' outputs: cache-hit: description: Whether the installation was restored from cache @@ -21,11 +25,18 @@ runs: using: composite steps: - - name: Deprecation warning + - name: Migration warning shell: bash run: | - echo "WARNING: This action will be archived on 01/01/24 in light of better alternatives." - echo "Please use awvwgk/setup-fortran instead (https://github.com/awvwgk/setup-fortran)." + echo "WARNING: This action will be archived on 01/01/24." + echo "Use fortran-lang/setup-fortran instead (https://github.com/fortran-lang/setup-fortran)." + + - name: Migration brownout + if: inputs.ignore == 'false' + uses: wpbonelli/schedule-outage@v1 + with: + probability: 0.1 + message: "This action will be archived on 01/01/24. Use fortran-lang/setup-fortran instead (https://github.com/fortran-lang/setup-fortran)." - name: Set install path if: runner.os != 'Windows'