mirror of
https://github.com/komodorio/helm-dashboard.git
synced 2026-03-24 03:38:04 +00:00
* validate that tag name matches plugin version in gh actions * fail workflow if tag name doesn't match plugin version
55 lines
1.6 KiB
YAML
55 lines
1.6 KiB
YAML
name: release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "*"
|
|
|
|
jobs:
|
|
pre_release:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Get plugin version
|
|
id: get_plugin_version
|
|
run: echo "PLUGIN_VERSION=$(cat plugin.yaml | grep "version" | cut -d '"' -f 2)" >> $GITHUB_OUTPUT
|
|
- name: Get tag name
|
|
id: get_tag_name
|
|
run: echo "TAG_NAME=$(echo ${{ github.ref_name }} | cut -d 'v' -f2)" >> $GITHUB_OUTPUT
|
|
outputs:
|
|
plugin_version: ${{ steps.get_plugin_version.outputs.PLUGIN_VERSION }}
|
|
tag_name: ${{ steps.get_tag_name.outputs.TAG_NAME }}
|
|
|
|
release:
|
|
needs: pre_release
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Plugin version/Tag name Check
|
|
if: needs.pre_release.outputs.release_tag != needs.pre_release.outputs.plugin_version
|
|
uses: actions/github-script@v3
|
|
with:
|
|
script: |
|
|
core.setFailed('Plugin version and tag name are not equivalent!')
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v3
|
|
with:
|
|
go-version: 1.18
|
|
- name: git cleanup
|
|
run: git clean -f
|
|
- name: Run GoReleaser
|
|
uses: goreleaser/goreleaser-action@v2
|
|
with:
|
|
version: latest
|
|
args: release --rm-dist
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: Test Binary Versions
|
|
run: "dist/helm-dashboard_linux_amd64_v1/helm-dashboard --help"
|