fix worker #74
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release Charts | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
package-publish-release: | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
steps: | |
# Стягуємо основну гілку | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Configure Git | |
run: | | |
git config user.name "$GITHUB_ACTOR" | |
git config user.email "[email protected]" | |
# Встановлюємо Helm | |
- name: Install Helm | |
uses: azure/setup-helm@v3 | |
# Оновлюємо залежності Helm | |
- name: Update Helm dependencies | |
run: | | |
helm dependency update . | |
# Пакуємо Helm Chart | |
- name: Package Helm chart | |
run: | | |
mkdir -p .cr-release-packages | |
helm package . -d .cr-release-packages | |
# Витягаємо назву та версію чарта | |
- name: Get Chart Info | |
id: chart_info | |
run: | | |
chart_version=$(grep '^version:' Chart.yaml | awk '{print $2}') | |
chart_name=$(grep '^name:' Chart.yaml | awk '{print $2}') | |
echo "chart_tgz_path=.cr-release-packages/${chart_name}-${chart_version}.tgz" >> $GITHUB_ENV | |
echo "chart_version=$chart_version" >> $GITHUB_OUTPUT | |
echo "chart_name=$chart_name" >> $GITHUB_OUTPUT | |
# Крок створення GitHub релізу | |
- name: Create GitHub Release | |
id: create_release | |
uses: actions/create-release@v1 | |
with: | |
tag_name: "v${{ steps.chart_info.outputs.chart_version }}" | |
release_name: "Release ${{ steps.chart_info.outputs.chart_version }}" | |
body: "Helm chart release for version ${{ steps.chart_info.outputs.chart_version }}" | |
draft: false | |
prerelease: false | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# Завантаження чарту в реліз | |
- name: Upload Chart .tgz to Release | |
uses: actions/upload-release-asset@v1 | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} # Передача upload_url | |
asset_path: ${{ env.chart_tgz_path }} | |
asset_name: "${{ steps.chart_info.outputs.chart_name }}-${{ steps.chart_info.outputs.chart_version }}.tgz" | |
asset_content_type: application/gzip | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# Завантажуємо з релізу і публікуємо в gh-pages | |
- name: Checkout gh-pages | |
uses: actions/checkout@v4 | |
with: | |
ref: gh-pages | |
clean: true | |
- name: Cleanup old tgz files | |
run: | | |
rm -f *.tgz | |
- name: Download Chart from Release | |
run: | | |
curl -sL -o "${{ steps.chart_info.outputs.chart_name }}-${{ steps.chart_info.outputs.chart_version }}.tgz" \ | |
"https://github.com/${{ github.repository }}/releases/download/v${{ steps.chart_info.outputs.chart_version }}/${{ steps.chart_info.outputs.chart_name }}-${{ steps.chart_info.outputs.chart_version }}.tgz" | |
- name: Update Helm Repo Index | |
run: | | |
helm repo index . --url https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }} --merge index.yaml | |
git add index.yaml "${{ steps.chart_info.outputs.chart_name }}-${{ steps.chart_info.outputs.chart_version }}.tgz" | |
git commit -m "Update index with version ${{ steps.chart_info.outputs.chart_version }}" || echo "Nothing to commit" | |
git push origin gh-pages |