gpt4 book ai didi

kubernetes - Gitlab-CI 多行脚本和多脚本的区别

转载 作者:行者123 更新时间:2023-12-04 16:38:44 24 4
gpt4 key购买 nike

对 GitLab-CI 相当陌生,我正在尝试通过 Helm 在 Kubernetes 集群上进行部署。我有这个:

image: docker:stable

deploy:
stage: deploy
image:
name: alpine/helm:3.4.1
script:
- echo "Deploying to production"
- helm list --all-namespaces

它失败了:

Error: unknown command "sh" for "helm"

并且 echo 没有回显,但是,如果我删除 echo 行,helm cmd 将成功执行。

我想我是在问如何让多行脚本运行? gitlab-runner是如何执行script:数组中提供的一系列命令的?

最佳答案

script 数组中的每个条目都在 sh shell 中运行。

sh -x 'echo "Deploying to production"'

您正在使用的 alpine/helm 图像包含 helm 的入口点这意味着 gitlab 尝试运行的 sh 命令作为参数附加到入口点(例如 helm sh -x 'echo "Deploying to production"')

Override the entrypoint

deploy:
stage: deploy
image:
name: alpine/helm:3.4.1
entrypoint: [""]
script:
- echo "Deploying to production"

关于kubernetes - Gitlab-CI 多行脚本和多脚本的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65207507/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com