71 lines
2.2 KiB
YAML
71 lines
2.2 KiB
YAML
---
|
|
name: Version Auto Bump
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- desktop-v**
|
|
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
|
|
jobs:
|
|
setup:
|
|
name: "Setup"
|
|
runs-on: ubuntu-22.04
|
|
outputs:
|
|
version_number: ${{ steps.version.outputs.new-version }}
|
|
steps:
|
|
- name: Checkout Branch
|
|
uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579
|
|
|
|
- name: Calculate bumped version
|
|
id: version
|
|
env:
|
|
RELEASE_TAG: ${{ github.ref }}
|
|
run: |
|
|
CURR_MAJOR=$(echo $RELEASE_TAG | sed -r 's/[a-z]*-v([0-9]{4}\.[0-9]{1,2})\.([0-9]{1,2})/\1/')
|
|
CURR_PATCH=$(echo $RELEASE_TAG | sed -r 's/[a-z]*-v([0-9]{4}\.[0-9]{1,2})\.([0-9]{1,2})/\2/')
|
|
echo "Current Major: $CURR_MAJOR"
|
|
echo "Current Patch: $CURR_PATCH"
|
|
|
|
NEW_PATCH=$((CURR_PATCH+1))
|
|
|
|
echo "New patch: $NEW_PATCH"
|
|
|
|
NEW_VER=$CURR_MAJOR.$NEW_PATCH
|
|
echo "New Version: $NEW_VER"
|
|
echo "::set-output name=new-version::$NEW_VER"
|
|
|
|
trigger_version_bump:
|
|
name: "Trigger desktop version bump workflow"
|
|
runs-on: ubuntu-22.04
|
|
needs:
|
|
- setup
|
|
steps:
|
|
- name: Login to Azure
|
|
uses: Azure/login@ec3c14589bd3e9312b3cc8c41e6860e258df9010
|
|
with:
|
|
creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }}
|
|
|
|
- name: Retrieve secrets
|
|
id: retrieve-secrets
|
|
uses: bitwarden/gh-actions/get-keyvault-secrets@c3b3285993151c5af47cefcb3b9134c28ab479af
|
|
with:
|
|
keyvault: "bitwarden-prod-kv"
|
|
secrets: "github-pat-bitwarden-devops-bot-repo-scope"
|
|
|
|
- name: Call GitHub API to trigger workflow bump
|
|
env:
|
|
TOKEN: ${{ steps.retrieve-secrets.outputs.github-pat-bitwarden-devops-bot-repo-scope }}
|
|
VERSION: ${{ needs.setup.outputs.version_number}}
|
|
run: |
|
|
JSON_STRING=$(printf '{"ref":"master", "inputs": { "client":"Desktop", "version_number":"%s"}}' "$VERSION")
|
|
curl \
|
|
-X POST \
|
|
-i -u bitwarden-devops-bot:$TOKEN \
|
|
-H "Accept: application/vnd.github.v3+json" \
|
|
https://api.github.com/repos/bitwarden/clients/actions/workflows/version-bump.yml/dispatches \
|
|
-d $JSON_STRING
|