-
Notifications
You must be signed in to change notification settings - Fork 996
Reorganize CI jobs so they appear sensibly in the GitHub UI #3422
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
702c9a9
51db5ae
cd55b78
fc1a835
346a46d
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| name: "Docs build test" | ||
| # ensure the docs build still works | ||
| permissions: | ||
| contents: read | ||
|
|
||
| on: | ||
| pull_request: | ||
| branches: [main, release] | ||
|
|
||
| jobs: | ||
| check-docs: | ||
| name: runner / check docs | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - name: Install uv | ||
| uses: astral-sh/setup-uv@v6 | ||
| - name: Ensure docs build cleanly | ||
| # Setting `O` to pass extra options to the sphinx-build command. | ||
| run: O="-a -E -n -W --keep-going" make docs | ||
|
||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,52 @@ | ||||||
| name: Test MacOS | ||||||
| # Unknown. MacOS functionality test i guess, probably incomplete | ||||||
|
||||||
| # Unknown. MacOS functionality test i guess, probably incomplete | |
| # Tests installation and basic setup on macOS to ensure compatibility |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sgoggins do you know why this test is here, or if we still rely on it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@JohnStrunk created most of these adn they have been working. AFAIK these tests are part of what is keeping augur stable and easy to deploy ... which I think you know so I think I may not understand the question :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
given the definition of this test, im unsure what it is specifically testing - it seems to just install some python data processing toolkits and things. are we trying to ensure one of our dependencies can install on mac OS? it feels weird to be testing a dependency in one of our tests like this - IMO it would make more sense to make sure the unit tests run on MacOS (which I think its set up by this PR)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The "Go" and NLTK parts have been the most inconsistent historically.
@JohnStrunk's approach, as I understand it, was to create this test in the CI and then validate that, when the test succeeds, Augur runs on OSX. Successful installation of the toolkits cannot be assumed across OSX distros, Go, and Python distros on OSX, based on our long experience.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,80 @@ | ||
| name: Publish Docker Images | ||
| # Publish docker images to our registry | ||
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| - release | ||
| pull_request: | ||
| release: | ||
| types: | ||
| - published | ||
| workflow_dispatch: | ||
|
|
||
| permissions: {} | ||
|
|
||
| jobs: | ||
| push-image: | ||
| name: Push image | ||
| needs: test-e2e | ||
sgoggins marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| # We don't push images on pull requests | ||
| if: github.event_name != 'pull_request' | ||
| permissions: | ||
| contents: read # to fetch code (actions/checkout) | ||
| packages: write # to push docker image | ||
| strategy: | ||
| matrix: | ||
| image: | ||
| - backend | ||
| - database | ||
| - keyman | ||
| - rabbitmq | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Checkout repository | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Set up Docker Buildx | ||
| uses: docker/setup-buildx-action@v3 | ||
| id: setup-buildx | ||
|
|
||
| - name: Login to GitHub Container Registry | ||
| uses: docker/login-action@v3 | ||
| with: | ||
| registry: ghcr.io | ||
| username: ${{ github.repository_owner }} | ||
| password: ${{ secrets.GITHUB_TOKEN }} | ||
|
|
||
| - name: Set container metadata | ||
| uses: docker/metadata-action@v5 | ||
| id: meta | ||
| env: | ||
| DOCKER_METADATA_ANNOTATIONS_LEVELS: index,manifest | ||
| with: | ||
| annotations: | | ||
| org.opencontainers.image.title=augur_${{ matrix.image }} | ||
| labels: | | ||
| org.opencontainers.image.title=augur_${{ matrix.image }} | ||
| images: ghcr.io/${{ github.repository_owner }}/augur_${{ matrix.image }} | ||
| # Pushes to the main branch update the *:devel-latest tag | ||
| # Releases update the *:latest tag and the *:<version> tag | ||
| tags: | | ||
| type=raw,value=devel-latest,enable=${{ github.ref == 'refs/heads/main' }} | ||
| type=raw,value=latest,enable=${{ github.event_name == 'release' }} | ||
| type=raw,value=${{ github.event.release.tag_name }},enable=${{ github.event_name == 'release' }} | ||
|
|
||
| - name: Build and push | ||
| id: push | ||
| uses: docker/build-push-action@v6 | ||
| with: | ||
| annotations: ${{ steps.meta.outputs.annotations }} | ||
| context: . | ||
| file: ./docker/${{ matrix.image }}/Dockerfile | ||
| labels: ${{ steps.meta.outputs.labels }} | ||
| platforms: linux/amd64 | ||
| # Only push if we've tagged the image in the metadata step | ||
| push: ${{ steps.meta.outputs.tags != '' }} | ||
| tags: ${{ steps.meta.outputs.tags }} | ||
| # Use the same cache as the build step | ||
| cache-from: type=gha,scope=container-${{ matrix.image }} | ||
| cache-to: type=gha,scope=container-${{ matrix.image }},mode=min | ||
Uh oh!
There was an error while loading. Please reload this page.