Update build failure list #594
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Update build failure list | |
on: | |
schedule: | |
- cron: 5 5 * * * | |
push: | |
branches: | |
- master | |
- bulk | |
paths: | |
- "**build_failure.*.yaml" | |
jobs: | |
update-build-failure-page: | |
name: Update build failure page | |
if: ${{ github.repository == 'bioconda/bioconda-recipes' && !contains(github.event.head_commit.message, '[ci skip]') }} | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: set path | |
run: echo "/opt/mambaforge/bin" >> $GITHUB_PATH | |
- name: Fetch conda install script | |
run: | | |
wget https://raw.githubusercontent.com/bioconda/bioconda-common/master/{common,install-and-set-up-conda,configure-conda}.sh | |
- name: Restore cache | |
id: cache | |
uses: actions/cache@v4 | |
with: | |
path: /opt/mambaforge | |
key: ${{ runner.os }}--master--${{ hashFiles('install-and-set-up-conda.sh', 'common.sh', 'configure-conda.sh') }} | |
- name: Set up bioconda-utils | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: bash install-and-set-up-conda.sh | |
# This script can be used to reconfigure conda to use the right channel setup. | |
# This has to be done after the cache is restored, because | |
# the channel setup is not cached as it resides in the home directory. | |
# We could use a system-wide (and therefore cached) channel setup, | |
# but mamba does not support that at the time of implementation | |
# (it ignores settings made with --system). | |
- name: Configure conda | |
run: bash configure-conda.sh | |
- name: Generate build failure table | |
run: | | |
set -e | |
eval "$(conda shell.bash hook)" | |
conda activate bioconda | |
branch=${{ github.ref_name }} | |
mkdir build-failures | |
if [[ -z $branch || $branch == "master" ]] ; then | |
md=build-failures/build-failures.md | |
echo "# Build failures" > $md | |
echo "Automatically updated (nightly) list of build failures that currently block builds from the listed recipes. Please help with fixing them!" >> $md | |
bioconda-utils list-build-failures recipes --output-format markdown --link-prefix https://github.com/bioconda/bioconda-recipes/blob/master >> $md | |
else | |
if [ -z "$GITHUB_BASE_REF" ] ; then | |
export GITHUB_BASE_REF="master" | |
fi | |
git fetch origin "$GITHUB_BASE_REF" | |
md="build-failures/build-failures-${branch}.md" | |
echo "# Build failures on \`${branch}\`" > $md | |
echo "Automatically updated list of build failures that currently block builds from the listed recipes on the \`${branch}\` branch." >> $md | |
bioconda-utils list-build-failures recipes --git-range origin/"$GITHUB_BASE_REF" HEAD --output-format markdown --link-prefix https://github.com/bioconda/bioconda-recipes/blob/$branch >> $md | |
fi | |
- name: Upload build failure to wiki | |
uses: docker://decathlon/wiki-page-creator-action:latest | |
env: | |
GH_PAT: ${{secrets.BIOCONDA_BOT_REPO_TOKEN}} | |
ACTION_MAIL: [email protected] | |
ACTION_NAME: BiocondaBot | |
OWNER: bioconda | |
REPO_NAME: bioconda-recipes | |
MD_FOLDER: build-failures |