building and publishing new release #18
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: build | |
run-name: building and publishing new release | |
on: | |
push: | |
# run only against tags | |
tags: | |
- "*" | |
permissions: | |
contents: write # allows the action to create a Github release | |
id-token: write # This is required for requesting the AWS JWT | |
jobs: | |
build-publish: | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Configure AWS credentials | |
uses: aws-actions/configure-aws-credentials@v4 | |
with: | |
aws-region: us-east-1 # ECR Public can only be logged into from the us-east-1 region | |
role-to-assume: arn:aws:iam::202662887508:role/ecr-upgrade-manager | |
role-session-name: githubActions | |
- name: Login to Amazon ECR | |
id: login-ecr-public | |
uses: aws-actions/amazon-ecr-login@v2 | |
with: | |
registry-type: public | |
mask-password: 'true' | |
- run: git fetch --force --tags | |
- uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21 | |
- name: Set up QEMU for ARM64 build | |
uses: docker/setup-qemu-action@v3 | |
- uses: goreleaser/goreleaser-action@v5 | |
with: | |
distribution: goreleaser | |
version: latest | |
args: release --clean | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Configure AWS credentials for helm chart | |
uses: aws-actions/configure-aws-credentials@v4 | |
with: | |
aws-region: us-east-1 # ECR Public can only be logged into from the us-east-1 region | |
role-to-assume: arn:aws:iam::202662887508:role/ecr-upgrade-manager-chart | |
role-session-name: githubActions | |
- name: Login to Amazon ECR for helm chart | |
uses: aws-actions/amazon-ecr-login@v2 | |
with: | |
registry-type: public | |
mask-password: 'true' | |
- name: Downgrade Helm # 1.13.0 has bug that block push charts on OCI | |
run: | | |
curl -sSLo /tmp/helm.tar.gz "https://get.helm.sh/helm-v3.12.0-linux-amd64.tar.gz" && \ | |
tar --strip-components=1 -C /tmp -xzvf /tmp/helm.tar.gz linux-amd64/helm && \ | |
mv /tmp/helm /usr/local/bin/helm && \ | |
rm -f /tmp/helm.tar.gz | |
- name: Helm release | |
run: | | |
RELEASE_VERSION=$(jq -r .tag dist/metadata.json) | |
./scripts/helm-release.sh upgrade-manager-chart chart ${RELEASE_VERSION} qonto |