Публикуем helm chart на GitHub Pages с помощью GitHub Actions
- Создаем в репе в ветке main директорию charts
- Создаем в директории сharts собственно директорию helm-чарта Например с помощью
cd charts helm create your-chart-name
- Создаем директорию ./.github/workflows/ и в ней файлик publish-charts.yml с таким содержимым:
name: Release Charts on: push: branches: - main jobs: release: # depending on default permission settings for your org (contents being read-only or read-write for workloads), you will have to add permissions # see: https://docs.github.com/en/actions/security-guides/automatic-token-authentication#modifying-the-permissions-for-the-github_token permissions: contents: write runs-on: ubuntu-latest 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 "$GITHUB_ACTOR@users.noreply.github.com" - name: Run chart-releaser uses: helm/chart-releaser-action@v1.7.0 env: CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" - Коммитим в ветке main то что там теперь есть и пушим:
git add . git commit -am 'helm chart' git push
- Теперь создаем пустую ветку gh-pages в которой собственно и будут публиковаться чарты:
git checkout --orphan gh-pages git rm -rf . rm '.gitignore' echo "#Readme" > README.md git add README.md git commit -a -m "gh-pages" git push -u origin gh-pages
- В настройках репозитория на GitHub включаем публикацию GitHub Pages из ветки gh-pages: Settings → Pages (слева) → в Branch выбираем ветку gh-pages
- Ну и все. После того как в Actions проудет публикация - можно ставить чарт:
helm repo add my-repo https://<owner>.github.io/<repoName>/ helm install my-chart my-repo/my-chart-name
Discussion