From ce6fcab5f37acc6bf2daf4ff765969217765240f Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 19 Mar 2026 21:13:38 +0900 Subject: [PATCH] fix: publish Helm chart to Gitea Package Registry instead of gh-pages Replace gh-pages branch index approach with direct upload to the official Gitea Package Registry (same method as helm-release.yaml). Co-Authored-By: Claude Sonnet 4.6 --- .../workflows/image-update-and-release.yaml | 64 +++++-------------- 1 file changed, 17 insertions(+), 47 deletions(-) diff --git a/.gitea/workflows/image-update-and-release.yaml b/.gitea/workflows/image-update-and-release.yaml index 8d0846f..4c3bb40 100644 --- a/.gitea/workflows/image-update-and-release.yaml +++ b/.gitea/workflows/image-update-and-release.yaml @@ -5,6 +5,10 @@ on: - cron: '0 2 * * 1' workflow_dispatch: +env: + REGISTRY_URL: https://git.cafepieters.com + OWNER: helmchart + jobs: update-and-release: runs-on: ubuntu-latest @@ -222,7 +226,9 @@ jobs: if: steps.check_update.outputs.php_updated == 'true' run: | helm package . - echo "Helm chart packaged" + CHART_FILE=$(ls *.tgz) + echo "CHART_FILE=${CHART_FILE}" >> $GITHUB_ENV + echo "Helm chart packaged: ${CHART_FILE}" - name: Create Git Tag if: steps.check_update.outputs.php_updated == 'true' @@ -258,54 +264,18 @@ jobs: echo "Release created" fi - - name: Update Helm Repository Index + - name: Publish to Gitea Package Registry if: steps.check_update.outputs.php_updated == 'true' run: | - set -e - APP_VERSION="${{ steps.php.outputs.app_version }}" - CHART_NAME=$(grep '^name:' Chart.yaml | awk '{print $2}') - PACKAGE_FILE="${CHART_NAME}-${APP_VERSION}.tgz" - - echo "Preparing Helm repository update..." - - # パッケージファイルを一時ディレクトリに移動 - mkdir -p /tmp/helm-repo - cp "${PACKAGE_FILE}" /tmp/helm-repo/ - - # gh-pagesブランチの処理 - if git ls-remote --heads origin gh-pages | grep gh-pages; then - echo "gh-pages branch exists, checking out..." - git fetch origin gh-pages - git checkout gh-pages - else - echo "Creating new gh-pages branch..." - git checkout --orphan gh-pages - git rm -rf . || true - echo "# Helm Repository" > README.md - git add README.md - git config user.name "GitHub Actions Bot" - git config user.email "actions@github.com" - git commit -m "Initialize gh-pages branch" - git push origin gh-pages - fi - - # パッケージファイルをコピー - cp /tmp/helm-repo/"${PACKAGE_FILE}" . - - # index.yamlを生成/更新 - helm repo index . --url "https://git.cafepieters.com/${GITHUB_REPOSITORY}/raw/branch/gh-pages" - - # コミットしてプッシュ - git config user.name "GitHub Actions Bot" - git config user.email "actions@github.com" - git add "${PACKAGE_FILE}" index.yaml - git commit -m "chore: add ${CHART_NAME} v${APP_VERSION}" || echo "No changes to commit" - git push origin gh-pages - - echo "Helm repository updated successfully" - - # mainブランチに戻る - git checkout main + echo "🚀 Publishing ${CHART_FILE} to Gitea Package Registry..." + + curl --fail-with-body \ + -u "${{ secrets.REGISTRY_USER }}:${{ secrets.REGISTRY_TOKEN }}" \ + -X POST \ + --upload-file "${CHART_FILE}" \ + "${REGISTRY_URL}/api/packages/${OWNER}/helm/api/charts" + + echo "✅ Chart published successfully!" - name: Summary if: steps.check_update.outputs.update_needed == 'true'