问题标签 [cloudbuild.yaml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - 我是否需要将通过 CLI 提供的替换值添加到 cloudbuild.yaml 文件中?
在我的cloudbuild.yaml
文件中,我依赖于将通过builds submit --substitutions=_SERVER_ENV=TEST
命令传递的值。
这就是我引用它的方式:
cloudbuild.yaml
我的问题是:我需要将其添加到该部分的cloudbuild.yaml
文件中吗?substitutions
例子:
cloudbuild.yaml
或者我可以将其省略并确保构建器将通过 CLI 命令查找它,例如:
builds submit --substitutions=_SERVER_ENV=TEST
参考
docker - cloudbuild.yaml 上的错误:(gcloud.builds.submit)将 cloudbuild.yaml 解释为构建配置:“列表”对象没有属性“项目”
这是我的cloudbuild.yaml
文件:
这个文件有什么问题吗?
这是我在运行以下命令时遇到的错误:
错误:(gcloud.builds.submit)将 ./cloudRun/cloudbuild.yaml 解释为构建配置:“列表”对象没有属性“项目”
gcloud - cloudbuild.yaml 中构建步骤中的 gcloud beta 命令。我应该使用入口点还是参数?
我正在尝试构建 Docker 映像并将其部署到 Cloud Run。而且我想设置min-instances=1
,这样我就可以避免冷启动。
我正在通过gcloud
CLI 使用 Cloud Build 构建和部署它。
所以这是我从gcloud
CLI 的第一次尝试:
以下是我的以下描述的构建步骤cloudbuild.yaml
:
您会看到构建STEP_3
运行:gcloud run deploy my-service ... min-instances=1
我收到以下错误:
所以我想我将不得不使用gcloud beta
命令。但在这种情况下我有一些问题:
我是否还需要将beta
命令添加到我的gcloud builds submit .
命令中?
我应该如何设置它cloudbuilt.yaml
?我是否将它添加到entrypoint
或作为参数args
?
选项1
选项 #2
google-cloud-platform - GCP cloudbuild git推送触发器
每次推送到我的存储库的特定分支时,我都有一个触发器来运行构建作业。
如果我尝试使用以下命令“手动”(不使用触发器)运行构建作业:
它按预期工作并成功完成,没有任何问题。但是,如果我对我的存储库执行 git push 以使用触发器执行此操作,则在触发器启动构建作业并从我的 cloudbuild YAML 文件中检测到完整结构后,它会在第一步中断执行并显示错误消息:
第一步:
错误信息:
你知道问题可能是什么吗?
提前致谢!
编辑:
尝试在git clone之前清除目录,结果还是一样:
google-cloud-platform - 如何使用 Cloud Build 在 GCP 上部署功能?
我创建了一个 Cloud Functions 调用pupetter-e2e
,它会触发对存储桶存储的更改,称为主页。我想使用以下内容部署对功能的更新cloudbuild.yaml
:
(触发器描述:https ://cloud.google.com/functions/docs/deploying/filesystem )
或者:
(如https://cloud.google.com/functions/docs/calling/storage所述)遗憾的是,我明白了
错误:(gcloud.functions.deploy)无法识别的参数:--trigger-bucket hjemmeside(您的意思是“--trigger-bucket”吗?)或--trigger-resource hjemmeside(您的意思是--trigger-resource?)
我曾尝试使用--trigger-bucket
,但无法使其正常工作。有人可以通过纠正我的错误来帮助我cloudbuild.yaml
吗?
angular - 尝试使用 cloud build (gcp) 部署时出现 URL not found
应用程序 - 角
我正在尝试在 GCP 中自动化我的 Angular 应用程序的部署过程。当我从云外壳手动部署时,一切正常,但是当我尝试使用 cloudbuild.yaml 构建-部署时,云构建触发它说部署成功。当我点击 URL 时,它显示 404 未找到。
手动部署命令
我对云构建不太熟悉。
可能问题出在下面给出的 cloudbuild.yaml 文件中。
我的理解是,当我们手动部署时,我们构建文件并将其上传到存储中的“dist”文件夹。然后我们同步目录进行部署,然后使用 gcloud app deploy 进行部署。
但是在使用云构建执行此操作时 - 我有连接到触发器的 GitHub 存储库,任何推送都发生在某个分支上,它会获取 cloudbuild.yaml 文件并处理。但是 cloudbuild.yaml 没有任何目录可以部署或同步这是我缺少的东西吗?如何添加它?如果不是请纠正我!
谢谢,
编辑
应用程序.yaml
当我将 cloudbuild.yaml 更新到以下时,出现以下错误
google-cloud-build - “gcloud builds submit”不会因为缺少所需的替换而触发错误
我需要一些有关云构建的帮助--substitutions
。
这是文档:https ://cloud.google.com/cloud-build/docs/build-config#substitutions
这是说的:
cloudbuild.yaml
以下代码段使用替换来打印“hello world”。设置了
ALLOW_LOOSE
替换选项,这意味着如果缺少替换变量或缺少替换,构建将不会返回错误。
我的情况:我没有使用该ALLOW_LOOSE
选项。我需要我的替代品。我不希望应用任何默认值。如果我忘记传递任何我需要的替换,我需要它立即失败。
这是我的cloudbuild.yaml
文件:
cloudbuild.yaml
我正在初始化它们的默认值,required
因为如果我忘记将它们中的任何一个传递给调用,我预计构建调用会失败gcloud builds submit
。
如果我打电话gcloud builds submit
并且不通过任何定义的替换,我预计它会失败。但它并没有失败,并且构建正常完成而没有该值。
文档中有这样的观察:
注意:如果您的构建由触发器调用,则默认设置 ALLOW_LOOSE 选项。在这种情况下,如果缺少替换变量或缺少替换,您的构建将不会返回错误。您不能为触发器调用的构建覆盖 ALLOW_LOOSE 选项。
但是如果我gcloud builds submit
手动调用,这意味着我的构建没有被任何触发器调用,对吧?所以ALLOW_LOOSE
不应该启用这些选项。
这是我的完整版cloudbuild.yaml
:
cloudbuild.yaml
google-cloud-functions - 如何使用谷歌云构建在一个源存储库中为多个谷歌云功能实施 CI/CD?
我们正在使用一个单一存储库(GCP 源存储库),它由每个云功能(云功能的源代码)的一个文件夹组成。我们计划做的是使用 Cloud build 实现 CI/CD 管道,但我想知道是否有办法以这样的方式进行设置,如果我在一个特定函数的源代码中进行更改并提交它然后仅部署该代码。
- 我们有大约 50 个不同的代码(它在我们的主仓库中创建了 50 个文件夹)
- 每个文件夹由 requirements.txt 、所需的 .json 文件和 main.py 组成
我是第一次实施 CI CD 的新手,如果我不能以适当的方式解释我的问题,请原谅我,任何建议都会有很大帮助。
谢谢。
更新到目前为止,通过使用以下建议的 .yaml 文件,我的构建步骤正在完成,但没有创建任何功能,并且我在发布在此下方的构建日志中遇到错误。
我的 YAML 文件
FAIL LOG 虽然步骤显示成功=(绿色)-
docker - 使用 docker-compose 将 Docker 映像部署到谷歌云运行
我正在尝试从 docker-compose 文件中部署一个应用程序,其中包含两个图像:一个 Angular 应用程序(前端)和一个非常小的 Nestjs 应用程序(后端)。我正在使用 GCB、他们的触发器和 cloudbuild.json。
这是它的当前状态:
尝试将 docker 映像推送到注册表时,构建总是在第 2 步失败。我不确定图像名称可能是什么,或者它应该如何工作,因为需要推送和部署两个 docker 图像。甚至可以使用 GCB 还是我需要一个 GKE 集群来运行两个 docker 映像?
我是否应该分别构建两个 Docker 映像,将它们分别推送到注册表并将它们部署到单独的 GCR 服务?
提前致谢。