Skip to content

Daily CI

Daily CI #527

Workflow file for this run

# This workflow runs every weekday at 16:00 UTC (9AM PDT)
name: Daily CI
permissions:
contents: read
id-token: write
on:
schedule:
- cron: "00 14 * * 1-5"
workflow_dispatch:
jobs:
getVersion:
permissions:
contents: read
pull-requests: write
id-token: write
# Don't run the cron builds on forks
if: github.event_name != 'schedule' || github.repository_owner == 'aws'
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/dafny_version.yml
with:
branch: ${{ matrix.branch }}
getVerifyVersion:
permissions:
contents: read
pull-requests: write
id-token: write
if: github.event_name != 'schedule' || github.repository_owner == 'aws'
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/dafny_verify_version.yml
with:
branch: ${{ matrix.branch }}
daily-ci-format:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
if: github.event_name != 'schedule' || github.repository_owner == 'aws'
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/library_format.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-codegen:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
if: github.event_name != 'schedule' || github.repository_owner == 'aws'
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_codegen.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-verification:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVerifyVersion
if: github.event_name != 'schedule' || github.repository_owner == 'aws'
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/library_dafny_verification.yml
with:
dafny: ${{needs.getVerifyVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-test-vector-verification:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVerifyVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/test_vector_verification.yml
with:
dafny: ${{needs.getVerifyVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-java:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_test_java.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-java-test-vectors:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_test_vector_java.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-java-examples:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_examples_java.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-net:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_test_net.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-rust:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/library_rust_tests.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-net-test-vectors:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_test_vector_net.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-ci-net-examples:
permissions:
contents: read
pull-requests: write
id-token: write
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_examples_net.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
daily-test-with-released-mpl:
permissions:
id-token: write
contents: read
needs: getVersion
strategy:
matrix:
branch: [main, v3.x-Java]
uses: ./.github/workflows/ci_test_latest_released_mpl_java.yml
with:
dafny: ${{needs.getVersion.outputs.version}}
branch: ${{ matrix.branch }}
run_test_vectors: true
strip_snapshot: true
notify:
permissions:
contents: read
pull-requests: write
id-token: write
needs:
[
getVersion,
getVerifyVersion,
daily-ci-format,
daily-ci-codegen,
daily-ci-verification,
daily-ci-test-vector-verification,
daily-ci-java,
daily-ci-java-test-vectors,
daily-ci-java-examples,
daily-ci-net,
daily-ci-rust,
daily-ci-net-test-vectors,
daily-ci-net-examples,
daily-test-with-released-mpl,
]
if: ${{ failure() && github.event_name == 'schedule'}}
uses: aws/aws-cryptographic-material-providers-library/.github/workflows/slack-notification.yml@main
with:
message: "Daily CI failed on `${{ github.repository }}`. View run: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
secrets:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL_CI }}