Release Godaddy Webhook Helm Chart #18
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 Godaddy Webhook Helm Chart | |
on: | |
workflow_dispatch: | |
inputs: | |
version: | |
description: 'The version you want to release (e.g 0.2.0).' | |
required: true | |
jobs: | |
release: | |
runs-on: ubuntu-latest | |
# if: contains(github.event.head_commit.message, '[to_release]') | |
permissions: | |
contents: write # for creating Releases .tgz (403 from chart-releaser-action if not set) | |
#pages: write # not required for chart-releaser-action | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Configure Git | |
run: | | |
git config user.name "$GITHUB_ACTOR" | |
git config user.email "$GITHUB_ACTOR@users.noreply.github.com" | |
- name: Install Helm | |
uses: azure/setup-helm@v3 | |
- name: Create release branch | |
run: git checkout -b release/${{ github.event.inputs.version }} | |
- name: Tag chart and image version | |
id: tag-chart | |
run: | | |
export TAG_VERSION=${{ github.event.inputs.version }} | |
echo "Tag version: ${TAG_VERSION}" | |
yq '.appVersion = env(TAG_VERSION)' -i ./deploy/charts/godaddy-webhook/Chart.yaml | |
yq '.version = env(TAG_VERSION)' -i ./deploy/charts/godaddy-webhook/Chart.yaml | |
yq '.image.tag = env(TAG_VERSION)' -i ./deploy/charts/godaddy-webhook/values.yaml | |
git add ./deploy/charts/godaddy-webhook/Chart.yaml | |
git add ./deploy/charts/godaddy-webhook/values.yaml | |
git commit -asm "Update Helm chart version to $TAG_VERSION" | |
git push origin release/${TAG_VERSION} | |
git tag v${TAG_VERSION} | |
git checkout main | |
git merge release/${TAG_VERSION} | |
git push origin main | |
git status | |
#git push origin release/v${TAG_VERSION} | |
echo "TAG_VERSION=${TAG_VERSION}" >> "${GITHUB_OUTPUT}" | |
- name: Login to Quay.io Hub | |
uses: docker/login-action@v1 | |
with: | |
registry: quay.io | |
username: ${{ secrets.QUAY_ROBOT_USER }} | |
password: ${{ secrets.QUAY_ROBOT_TOKEN }} | |
- name: Build the container image | |
run: | | |
NEW_VERSION="${{ steps.tag-chart.outputs.TAG_VERSION }}" | |
docker build -t cert-manager-webhook-godaddy:${NEW_VERSION} -f Dockerfile . | |
TAG_ID=$(docker images -q cert-manager-webhook-godaddy:${NEW_VERSION}) | |
docker tag ${TAG_ID} quay.io/snowdrop/cert-manager-webhook-godaddy:${NEW_VERSION} | |
docker push quay.io/snowdrop/cert-manager-webhook-godaddy:${NEW_VERSION} | |
- name: Run chart-releaser | |
uses: helm/chart-releaser-action@v1.5.0 | |
with: | |
charts_dir: deploy/charts | |
env: | |
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
- name: Deleting the releasing branch | |
run: | | |
git push origin --delete release/${{ steps.tag-chart.outputs.TAG_VERSION }} |