From 2eb7feda73f80ae2da150dd29377ccce353afe80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Zimmermann?= <101292599+ekneg54@users.noreply.github.com> Date: Thu, 27 Jun 2024 14:02:31 +0200 Subject: [PATCH] add helm chart release to release pipeline (#621) * update changelog * add chart template * add releaser to publish pipeline --- .github/workflows/publish-release-to-pypi.yml | 39 +++++++++++++++++++ CHANGELOG.md | 1 + charts/logprep/Chart.yaml.j2 | 15 +++++++ 3 files changed, 55 insertions(+) create mode 100644 charts/logprep/Chart.yaml.j2 diff --git a/.github/workflows/publish-release-to-pypi.yml b/.github/workflows/publish-release-to-pypi.yml index e9cfe1815..55710fda3 100644 --- a/.github/workflows/publish-release-to-pypi.yml +++ b/.github/workflows/publish-release-to-pypi.yml @@ -80,3 +80,42 @@ jobs: ghcr.io/fkie-cad/logprep:py${{ matrix.python-version }}-${{ github.ref_name }} ghcr.io/fkie-cad/logprep:py${{ matrix.python-version }}-stable ghcr.io/fkie-cad/logprep:py${{ matrix.python-version }}-latest + + helm-charts: + runs-on: ubuntu-latest + 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@v4 + env: + GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" + + - name: template Chart.yaml + env: + LOGPREP_VERSION: ${{ github.ref_name }} + run: | + sed "s/{{ LOGPREP_VERSION }}/$LOGPREP_VERSION/g" charts/logprep/Chart.yaml.j2 > ./charts/logprep/Chart.yaml + + - uses: stefanzweifel/git-auto-commit-action@v5 + with: + commit_message: Update Logprep chart versions + # Optional glob pattern of files which should be added to the commit + # Defaults to all (.) + # See the `pathspec`-documentation for git + # - https://git-scm.com/docs/git-add#Documentation/git-add.txt-ltpathspecgt82308203 + # - https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefpathspecapathspec + file_pattern: "charts/logprep/Chart.yaml" + + - name: Run chart-releaser + uses: helm/chart-releaser-action@v1.6.0 + env: + CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" diff --git a/CHANGELOG.md b/CHANGELOG.md index 7979c0b93..5bb2b08fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ * add documentation about behavior of the `timestamper` on `ISO8601` and `UNIX` time parsing * add unit tests for helm chart templates * add helm to github actions runner +* add helm chart release to release pipeline ### Bugfix diff --git a/charts/logprep/Chart.yaml.j2 b/charts/logprep/Chart.yaml.j2 new file mode 100644 index 000000000..29452e369 --- /dev/null +++ b/charts/logprep/Chart.yaml.j2 @@ -0,0 +1,15 @@ +apiVersion: v2 +name: logprep +description: Logprep helm chart +type: application + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: "{{ LOGPREP_VERSION }}" + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "{{ LOGPREP_VERSION }}"