Fix whitespace #218
Workflow file for this run
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: CI | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
paths-ignore: | |
- "README.md" | |
pull_request: | |
merge_group: # GitHub Merge Queue | |
concurrency: | |
# Skip intermediate builds: all builds except for builds on the `master` branch | |
# Cancel intermediate builds: only pull request builds | |
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/main' || github.run_number }} | |
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} | |
permissions: | |
contents: read | |
actions: write # Needed for `julia-actions/cache` to clear old caches | |
env: | |
aws_region: us-east-1 | |
s3_bucket: julialang2 | |
jobs: | |
package-tests: | |
name: Package tests | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: false | |
matrix: | |
version: | |
- "1.6" | |
os: | |
- ubuntu-latest | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
- uses: julia-actions/setup-julia@5c9647d97b78a5debe5164e9eec09d653d29bd71 | |
with: | |
version: ${{ matrix.version }} | |
- uses: julia-actions/cache@2b1bf4d8a138668ac719ea7ca149b53ed8d8401e # v2.0.7 | |
- name: Install dependencies | |
run: julia --color=yes --project -e "using Pkg; Pkg.instantiate()" | |
- uses: julia-actions/julia-runtest@678da69444cd5f13d7e674a90cb4f534639a14f9 # v1.11.2 | |
full-test: | |
name: Full test | |
# This job takes a long time (1+ hours). | |
# So we intentionally skip this job on PR runs. | |
# But we still run this job on Merge Queue jobs. | |
if: github.event_name != 'pull_request' | |
runs-on: ubuntu-latest | |
timeout-minutes: 360 | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
- uses: julia-actions/setup-julia@5c9647d97b78a5debe5164e9eec09d653d29bd71 | |
with: | |
version: "1.6" | |
- uses: julia-actions/cache@2b1bf4d8a138668ac719ea7ca149b53ed8d8401e # v2.0.7 | |
- name: Install dependencies | |
run: julia --color=yes --project -e "using Pkg; Pkg.instantiate()" | |
- run: rm -f versions.json | |
- name: Build versions.json | |
run: | | |
using VersionsJSONUtil | |
VersionsJSONUtil.main("versions.json") | |
shell: julia --project {0} | |
- name: Validate versions.json against schema | |
run: npx -p ajv-cli@3.3.0 ajv -s schema.json -d versions.json | |
- name: Upload versions.json as workflow artifact | |
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0 | |
with: | |
name: versions | |
path: versions.json | |
if-no-files-found: error | |
upload-to-s3: | |
needs: [package-tests, full-test] | |
if: github.event_name == 'workflow_dispatch' && github.ref == 'refs/heads/main' | |
runs-on: ubuntu-latest | |
timeout-minutes: 60 | |
steps: | |
- name: Download versions.json from previous job | |
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 | |
with: | |
name: versions | |
- name: Configure AWS credentials | |
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 | |
with: | |
aws-access-key-id: ${{ secrets.AWS_DEPLOY_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.AWS_DEPLOY_SECRET_ACCESS_KEY }} | |
aws-region: ${{ env.aws_region }} | |
- name: Upload versions.json to S3 | |
run: aws s3 cp versions.json s3://${{ env.s3_bucket }}/bin/versions.json --acl public-read --no-progress | |
- name: Purge cache | |
run: curl -X PURGE https://julialang-s3.julialang.org/bin/versions.json |