don't use a keyfile for ssl cert (#265) #76
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: Release Suite | |
on: | |
push: | |
tags: | |
- v* | |
env: | |
REPO_NAME: ${{ github.repository_owner }}/siren | |
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} | |
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} | |
IMAGE_NAME: ${{ secrets.DOCKER_USERNAME }}/siren | |
jobs: | |
extract-version: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Extract version | |
run: echo "VERSION=$(echo ${GITHUB_REF#refs/tags/})" >> $GITHUB_OUTPUT | |
# Used for running without tags | |
# run: echo "VERSION=$(cat package.json | jq '.["version"]' | tr -d '"')" >> $GITHUB_OUTPUT | |
id: extract_version | |
outputs: | |
VERSION: ${{ steps.extract_version.outputs.VERSION }} | |
draft-release: | |
name: Draft Release | |
needs: [extract-version] | |
runs-on: ubuntu-latest | |
env: | |
VERSION: ${{ needs.extract-version.outputs.VERSION }} | |
steps: | |
# This is necessary for generating the changelog. It has to come before "Download Artifacts" or else it deletes the artifacts. | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
# ============================== | |
# Create release draft | |
# ============================== | |
- name: Generate Full Changelog | |
id: changelog | |
run: | | |
echo "CHANGELOG<<EOF" >> $GITHUB_OUTPUT | |
echo "$(git log --pretty=format:"- %s" $(git describe --tags --abbrev=0 ${{ env.VERSION }}^)..${{ env.VERSION }})" >> $GITHUB_OUTPUT | |
echo "EOF" >> $GITHUB_OUTPUT | |
- name: Create Release Draft | |
env: | |
GITHUB_USER: ${{ github.repository_owner }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# The formatting here is borrowed from OpenEthereum: https://github.com/openethereum/openethereum/blob/main/.github/workflows/build.yml | |
run: | | |
body=$(cat <<- "ENDBODY" | |
<Release Name> | |
## Release Checklist (DELETE ME) | |
- [ ] Merge `unstable` -> `stable`. | |
- [ ] Ensure docker images are published to `sigp` namespace (instructions below) | |
- [ ] Prepare Discord post. | |
Someone with appropriate access rights should run these commands: | |
0. sanity check: did the `docker` workflow complete correctly, are the images published under the `sigmaprime` namespace? | |
see: https://hub.docker.com/r/${{ env.DOCKER_USERNAME }}/siren/tags?name=${{ env.VERSION }} and https://hub.docker.com/r/${{ env.DOCKER_USERNAME }}/siren/tags?name=latest | |
1. publish `latest`: | |
`docker manifest create sigp/siren:latest --amend sigmaprime/siren:latest-amd64 --amend sigmaprime/siren:latest-arm64` | |
`docker manifest push sigp/siren:latest` | |
2. publish `${{ env.VERSION }}`: | |
`docker manifest create sigp/siren:${{ env.VERSION }} --amend sigmaprime/siren:${{ env.VERSION }}-amd64 --amend sigmaprime/siren:${{ env.VERSION }}-arm64` | |
`docker manifest push sigp/siren:${{ env.VERSION }}` | |
3. verify: https://hub.docker.com/r/siren/siren/tags?name=${{ env.VERSION }} and https://hub.docker.com/r/sigp/siren/tags?name=latest | |
## Summary | |
Add a summary. | |
## Update Priority | |
This table provides priorities for which classes of users should update particular components. | |
|User Class |Beacon Node | Validator Client| | |
--- | --- | --- | |
|Staking Users| <TODO> | <TODO> | | |
|Non-Staking Users| <TODO>|---| | |
## All Changes | |
${{ steps.changelog.outputs.CHANGELOG }} | |
## Docker Hub | |
https://hub.docker.com/r/sigp/siren/tags?name=${{ env.VERSION }} | |
ENDBODY | |
) | |
tag_name="${{ env.VERSION }}" | |
echo "$body" | gh release create --draft -F "-" "$tag_name" |