为什么从 Github Actions 向 Google Cloud Artifact Registry 发送 Helm 命令失败?

问题描述 投票:0回答:1

我正在使用 Github Actions,在其中一个步骤中,我尝试将 Helm 图表推送到我的 Google Cloud Artifact 存储库。

这是我的步骤:

  - name: Package & Upload Helm Chart
    run: |
      ${{ secrets.GH_ACTIONS_SA }} | helm registry login https://${{ env.GKE_ZONE }}-docker.pkg.dev/${{ env.GC_PROJECT_ID }}/web-${{ env.RBI_ENV }}-django -u _json_key --password-stdin
      helm version
      helm package main/charts/website
      ls -la
      helm push website-0.1.0.tgz oci://${{ env.GKE_ZONE }}-docker.pkg.dev/${{ env.GC_PROJECT_ID }}/web-${{ env.RBI_ENV }}-django/charts

Github 操作输出为:

Login Succeeded
version.BuildInfo***Version:"v3.9.0", GitCommit:"7ceeda6c585217a19a1131663d8cd1f7d641b2a7", GitTreeState:"clean", GoVersion:"go1.17.5"***
Successfully packaged chart and saved it to: /home/runner/work/***/***/website-0.1.0.tgz
drwxr-xr-x  4 runner docker   4096 Jun 29 16:26 .
drwxr-xr-x  3 runner docker   4096 Jun 29 16:25 ..
-rwx------  1 runner docker  11156 Jun 29 16:26 get_helm.sh
drwxr-xr-x 10 runner docker   4096 Jun 29 16:26 main
-rw-r--r--  1 runner docker 139399 Jun 29 16:26 website-0.1.0.tgz
Error: failed commit on ref "manifest-sha256:dfc14c1945cab5f23a987efc975613f265ab15e20e5cd36f62956f3a607dcfe7": invalid content digest in response: invalid checksum digest format
Error: Process completed with exit code 1.

我可以在本地计算机(Mac)上运行这些相同的命令,并且它可以很好地推送:

Pushed: us-central1-docker.pkg.dev/***/web-staging-django/website:0.1.0
Digest: sha256:dad429ef46206f736dd403e80bea1536a7eb37c7f0d02bb7609f558a0f27b4ec

知道为什么我的

invalid content digest in response: invalid checksum digest format
命令出现错误
helm push
吗?

github-actions kubernetes-helm google-artifact-registry
1个回答
2
投票

我收到此错误的原因是因为我的 URL 中的

LOCATION
是错误的。

我正在使用

us-central1-a
,而我应该使用
us-central1

帮助我识别这一点的是在

--debug
命令上添加
helm push
标志。

© www.soinside.com 2019 - 2024. All rights reserved.