name: "Build Helm Chart" on: push: branches: - main paths: - "charts/dokuwiki/Chart.yaml" jobs: helm-package: runs-on: ubuntu-latest env: APP: charts/dokuwiki steps: - name: Checkout repository uses: actions/checkout@v3 - name: Set Helm Chart App Name and Version id: get_version run: | APP_NAME=$(grep -oP '(?<=^name: ).*' ${{ env.APP }}/Chart.yaml) echo "Helm Chart App Name: $APP_NAME" echo "::set-output name=app::$APP_NAME" CHART_VERSION=$(grep -oP '(?<=^version: ).*' ${{ env.APP }}/Chart.yaml) echo "Helm Chart version: $CHART_VERSION" echo "::set-output name=tag::$CHART_VERSION" - name: Setup Helm run: | curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash helm version - name: Package Helm Chart run: | helm dependency update ${{ env.APP }} helm lint ${{ env.APP }} helm package ${{ env.APP }} - name: Upload Helm Package to repo run: | curl --user ${{ secrets.USER }}:${{ secrets.TOKEN }} -X POST --upload-file ./${{ steps.get_version.outputs.app }}-${{ steps.get_version.outputs.tag }}.tgz ${{ vars.HELMREGISTRY }}/api/packages/${{ vars.OWNER }}/helm/api/charts