Skip to content

Release

Release #27

Workflow file for this run

---
name: Release
# Lifted shamelessly from https://github.com/custom-components/grocy
on:
release:
types: [published]
permissions: {}
jobs:
release_zip_file:
name: Prepare and upload release asset
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
env:
BERMUDA_ROOT_DIR: "${{ github.workspace }}/custom_components/bermuda"
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Set release version number in files
shell: bash
run: |
version="${{ github.event.release.tag_name }}"
version="${version,,}"
version="${version#v}"
# update const.py
sed -i \
"/^VERSION.*=./c\VERSION = \"${version}\"" \
"${{ env.BERMUDA_ROOT_DIR }}/const.py"
# update manifest.json
jq ".version = \"${version}\"" "${{ env.BERMUDA_ROOT_DIR }}/manifest.json" > "${{ env.BERMUDA_ROOT_DIR }}/manifest.json.tmp"
mv "${{ env.BERMUDA_ROOT_DIR }}/manifest.json.tmp" "${{ env.BERMUDA_ROOT_DIR }}/manifest.json"
- name: Zip the integration directory
run: |
cd "${{ env.BERMUDA_ROOT_DIR }}"
zip bermuda.zip -r ./
- name: 🔏 Sign release package
uses: sigstore/[email protected]
with:
inputs: "${{ env.BERMUDA_ROOT_DIR }}/bermuda.zip"
- name: "Upload the ZIP file to the release"
uses: softprops/[email protected]
with:
files: ${{ env.BERMUDA_ROOT_DIR }}/bermuda.zip