Skip to content

another merge queue setup attempt #1005

another merge queue setup attempt

another merge queue setup attempt #1005

Workflow file for this run

name: CI
on:
pull_request:
merge_group:
push:
branches: ['master']
schedule:
- cron: '00 2 * * *' # At 02:00 UTC every day (like rustup-components-history).
jobs:
test-core:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup environment
run: bash ./ci-setup.sh
- name: Test
run: bash ./ci-test.sh core
test-alloc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup environment
run: bash ./ci-setup.sh
- name: Test
run: bash ./ci-test.sh alloc
test-std:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup environment
run: bash ./ci-setup.sh
- name: Test
run: bash ./ci-test.sh std
test-simd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup environment
run: bash ./ci-setup.sh
- name: Test
run: bash ./ci-test.sh simd
test-stdarch:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup environment
run: bash ./ci-setup.sh
- name: Test
run: bash ./ci-test.sh stdarch
# One job that "summarizes" the success state of this pipeline. This can then be added to branch
# protection, rather than having to add each job separately.
success:
name: Success
runs-on: ubuntu-latest
needs: [test-core, test-alloc, test-std, test-simd, test-stdarch]
# Github branch protection is exceedingly silly and treats "jobs skipped because a dependency
# failed" as success. So we have to do some contortions to ensure the job fails if any of its
# dependencies fails.
if: always() # make sure this is never "skipped"
steps:
- name: fail if any dependency failed
run: exit 1
if: failure()
# Send a Zulip notification when a cron job fails
cron-fail-notify:
name: cronjob failure notification
runs-on: ubuntu-latest
needs: [success]
if: github.event_name == 'schedule' && failure()
steps:
- name: Install zulip-send
run: pip3 install zulip
- name: Send Zulip notification
shell: bash
env:
ZULIP_BOT_EMAIL: ${{ secrets.ZULIP_BOT_EMAIL }}
ZULIP_API_TOKEN: ${{ secrets.ZULIP_API_TOKEN }}
run: |
~/.local/bin/zulip-send --stream miri --subject "Cron Job Failure (miri-test-libstd, $(date -u +%Y-%m))" \
--message 'Dear @*T-miri*,
The standard library test suite is [failing under Miri]('"/~https://github.com/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID"'). Would you mind investigating this issue?
Thanks in advance!
Sincerely,
The Miri Cronjobs Bot' \
--user $ZULIP_BOT_EMAIL --api-key $ZULIP_API_TOKEN --site https://rust-lang.zulipchat.com