Skip to content
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

Release process improvements #1176

Merged
merged 18 commits into from
Jun 4, 2021
Merged

Conversation

lisanna-dettwyler
Copy link
Contributor

@lisanna-dettwyler lisanna-dettwyler commented Apr 23, 2021

  • Remove setup skip branches in .github/ci.sh
  • Set nightly to cron: "0 10 * * *" # 10am UTC -> 2/3am PST
  • Standardize config parameters and logic
  • Implement release conditions:
    • release branch and project versions match: [[ "refs/heads/release-$(.github/ci.sh ver)" == "${{ github.event.ref }}" ]]
    • release branch and most recent tag match: [[ "refs/heads/release-$(git describe --tags --abbrev=0)" == "${{ github.event.ref }}" ]]
  • Don't have a separate bundle step - put those in the build jobs
  • Container image push logic
     - if: needs.config.outputs.event-schedule == 'true'
       name: ${{ matrix.image }}:nightly
       run: |
         docker tag ${{ matrix.image }}:$COMMON_TAG ${{ matrix.image }}:nightly
         docker push ${{ matrix.image }}:nightly
     - if: needs.config.outputs.release == 'true'
       name: ${{ matrix.image }}:${{ needs.config.outputs.version }}
       run: |
         docker tag ${{ matrix.image }}:$COMMON_TAG ${{ matrix.image }}:${{ needs.config.outputs.version }}
         docker push ${{ matrix.image }}:${{ needs.config.outputs.version }}
         docker tag ${{ matrix.image }}:$COMMON_TAG ${{ matrix.image }}:latest
         docker push ${{ matrix.image }}:latest
  • Runnable container images are published to ghcr.io/galoisinc/cache-cryptol and ghcr.io/galoisinc/cache-cryptol-remote-api for each CI ref. This makes the images instantly runnable by the developer on their local machine. Example:
    $ docker run --rm ghcr.io/galoisinc/cache-cryptol:1176-merge --version
    Unable to find image 'ghcr.io/galoisinc/cache-cryptol:1176-merge' locally
    1176-merge: Pulling from galoisinc/cache-cryptol
    f7ec5a41d630: Already exists 
    daf0556132fa: Pull complete 
    031374c57dea: Pull complete 
    a8c434afeb3e: Pull complete 
    b0a1b341d58b: Pull complete 
    Digest: sha256:3be5a66def658919031361f23aa75cdbe7e30a8ffd31af41ecac959ebf5ab7a6
    Status: Downloaded newer image for ghcr.io/galoisinc/cache-cryptol:1176-merge
    Cryptol 2.11.0.99
    Git commit UNKNOWN
        branch UNKNOWN
    

Closes #1175

@lisanna-dettwyler lisanna-dettwyler added the build system Related to Cryptol's build system label Apr 23, 2021
@lisanna-dettwyler lisanna-dettwyler self-assigned this Apr 23, 2021
@lisanna-dettwyler lisanna-dettwyler added this to the 2.12.0 milestone Apr 23, 2021
@lisanna-dettwyler lisanna-dettwyler force-pushed the lisanna/release-improvements branch 5 times, most recently from bdd8ca0 to 99166db Compare April 23, 2021 07:44
@lisanna-dettwyler lisanna-dettwyler force-pushed the lisanna/release-improvements branch 19 times, most recently from aef7e65 to 7eed015 Compare April 30, 2021 04:22
@lisanna-dettwyler lisanna-dettwyler force-pushed the lisanna/release-improvements branch 5 times, most recently from 505de43 to e6a0783 Compare May 5, 2021 23:48
Copy link
Contributor

@atomb atomb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@lisanna-dettwyler lisanna-dettwyler merged commit eb829d8 into master Jun 4, 2021
@RyanGlScott RyanGlScott deleted the lisanna/release-improvements branch March 22, 2024 14:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build system Related to Cryptol's build system
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Release process improvements from https://github.com/GaloisInc/saw-script/tree/release-0.8
2 participants