问题标签 [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.

0 投票
0 回答
101 浏览

google-cloud-platform - 如何在 cloudbuild 中读取 pom 版本

我有 cloudbuild.yaml 文件,它正在部署 java 应用程序。现在我将提交 id 作为我的 docker 图像标签传递。但我想在我的 docker build 中传递 pom 版本。有一种方法可以使用 readMavenPom().getArtifactId() 函数在 jenkins 中读取 pom 文件。cloudbuild 中也有类似的东西吗?我的构建和推送步骤类似于下面的 cloudbuild.yaml

0 投票
2 回答
981 浏览

google-app-engine - Gcloud 云构建本地组件失败并出现错误“加载配置文件时出错:cloudbuild.Build 中的未知字段“availableSecrets””

问候stackoverflow社区!第一次提问,长期用户。

我正在使用 Cloud Build Local 组件和 Secret Manager 在本地测试我的 cloudbuild.yaml 文件,但它在“availableSecrets”上失败了。

错误消息:加载配置文件时出错:cloudbuild.Build 中的未知字段“availableSecrets”

  • 操作系统平台:Windows 10/WSL2/Ubuntu 18.04
  • 云构建本地:v0.5.2
  • Docker 引擎:v20.10.2
  • Nodejs 版本:v14.15.3
  • NPM 版本:6.14.9
  • gcloud 版本:326.0.0
  • 已安装组件:[BigQuery 命令行工具、Cloud Datastore Emulator、Cloud SDK 核心库、Cloud Storage 命令行工具、Google Cloud Build Local Builder、gcloud Beta 命令]

Cloud Build 构建文件的文档:https : //cloud.google.com/cloud-build/docs/build-config 使用云构建配置机密的文档: https ://cloud.google.com/cloud-build/docs/ secure-builds/use-secrets 云构建本地文档:https ://cloud.google.com/cloud-build/docs/build-debug-locally

执行的步骤:

  1. 向 Secret Manager 添加了秘密
  2. 在 Cloud Build 和 Secrets Manager 之间启用 API
  3. 添加了 cloudbuild 服务帐户作为每个秘密密码的成员。
  4. 向 cloudbuild 用户添加了 IAM 权限 Secret Manager Secrets Accessor。我不知道我从哪里得到这些信息,但此时它是其他尝试使用 Secret Manager 和 cloudbuild 的残余。我不确定在此处应用访问权限与应用到 Secret Manager 密钥之间的区别。

命令:cloud-build-local --config=cloudbuild.staging.yaml --dryrun=false .

cloudbuild.staging.yaml:

0 投票
0 回答
93 浏览

jenkins - Jenkins 与 Google-Cloud-build 集成时出现配置错误

我是 Jenkins 与 Google-Cloud-build 集成的新手,并且正在努力使用 cloudbuild.yaml 为不同的 google-cloud 项目设置 Jenkins(托管在 gcloud 中的实例中)。我正在使用简单的(也尝试了很多方法)inline-yaml,但遇到了(各种)错误。我不确定,我应该如何配置它。我在谷歌上搜索了一些帮助,但似乎没有人发布与我的问题相关的任何内容。

Jenkins-job 输出 - Google Cloud Build 正在执行!脚步:

以下是 google-cloud-build 日志的输出

0 投票
1 回答
821 浏览

docker - 如何在谷歌云构建中将参数传递给 docker run

我正在尝试使用 GCB 运行柏树管道,但是在 docker 内运行时它会崩溃。

如此处所述,此问题的修复方法是使用--ipc=host.

但是查看文档,我找不到如何在 GCB 中将参数传递给 docker run。

谁能帮我?

管道是

0 投票
1 回答
1096 浏览

docker - 如何在 cloudbuild.yaml 中使用 Kaniko?

我刚刚了解到可以通过使用 Kaniko 缓存来加快 Google Cloud 构建中的构建过程。我查看了文档,它提供了一个小例子。但是,我不确定如何在我的用例中应用它。我基本上是在将 Nuxt 应用程序推送到我的 Github 存储库中,并且每次推送时云都会构建它。文档示例说我们需要替换cloud-builders/dockerkaniko-project/executor:latest. 下面是我的一个片段cloudbuild.yaml

Kaniko docs说我需要以下内容:

这是我尝试过的(但不确定是否应该这样):

0 投票
1 回答
360 浏览

google-cloud-dataflow - 谷歌云构建 python apache 光束数据流 yaml 文件

我正在尝试在谷歌云构建中部署一个 apache 光束数据流管道内置 python。我没有找到有关构建 cloud build.YAML 文件的任何具体细节。

我找到了一个链接dataflow-ci-cd-with-cloudbuild,但这似乎是基于 JAVA 的,也尝试过这个但没有工作,因为我的起点是 main.py

在此处输入图像描述

0 投票
2 回答
643 浏览

google-cloud-platform - 在云构建 yaml 中访问谷歌云秘密

我正试图从谷歌秘密经理那里得到秘密。根据访问机密的文档,入口点应该是 bash,但我有不同的入口点。试图弄清楚如何在“创建数据流模板”步骤中获取秘密。似乎在步骤之外无法访问环境变量值。

在数据流管道中传递的值

在此处输入图像描述

秘密值:

在此处输入图像描述

构建日志 1: 在此处输入图像描述

构建日志 2: 在此处输入图像描述

0 投票
1 回答
300 浏览

kubernetes - GKE 自动部署具有不同映像的多个部署/服务

我目前正在查看 GKE 和谷歌云上的一些教程。我在这里关注这个https://cloud.google.com/solutions/integrating-microservices-with-pubsub#building_images_for_the_app(源代码https://github.com/GoogleCloudPlatform/gke-photoalbum-example

此示例有 3 个部署和一项服务。示例教程让您通过命令行部署所有内容,这很好并且一切正常。然后我开始研究如何通过云构建自动化部署并发现了这一点:

https://cloud.google.com/build/docs/deploying-builds/deploy-gke#automating_deployments

这些文档说您可以为触发器创建构建配置(例如推送到特定的存储库),它将触发构建。他们为此展示的示例 yaml 如下:

我了解如何传入位置和集群参数,这些文档还对资源文件(文件名参数)和图像参数进行了以下说明:

kubernetes-resource-file 是您的 Kubernetes 配置文件的文件路径或包含您的 Kubernetes 资源文件的目录路径。

image 是所需的容器镜像名称,通常是应用程序名称。

将此与所有服务都在一个存储库中的演示应用程序存储库相关联,我相信我可以提供文件名参数的文件夹路径,例如来自存储库https://github.com/GoogleCloudPlatform/gke-photoalbum的配置文件夹-示例/树/主/配置

但这里的问题是这些资源文件本身有一个图像属性,所以我不知道这与云构建触发器 yaml的图像属性有什么关系。我也不知道如何在触发器 yaml 中拥有多个“图像”属性,其中每个部署都有自己的容器图像。

我一般是 GKE 和 Kubernetes 的新手,所以我想知道我是否误解了kubernetes-resource-file在这种情况下应该是什么。

但是,当多个部署/服务都捆绑到一个存储库中时,是否可以以这种方式自动部署多个部署/服务?或者让谷歌为本教程简化了一些事情——现实是大多数服务都在他们自己的仓库中,以便单独构建/测试/部署?

无论哪种方式,该属性与部署 yaml 中已定义图像image这一事实有何关系?例如:

0 投票
1 回答
97 浏览

mysql - 如何在使用 mysql 映像的谷歌云构建中运行 gradle 集成测试?

我正在执行以下步骤。

集成测试失败,因为其中没有运行 mysql 服务器。在本地,我通过使用 docker 启动 mysql 容器来执行我的集成测试。但是我不确定如何使用cloudbuild.yaml.

我需要在这里使用 gradle 映像,还需要使用具有正在运行的 mysql 容器的 mysql 映像。

在 Bitbucket 中,我可以通过提供“服务”来解决这个问题,我可以在其中选择与步骤一起运行的服务。

我没有任何发现就刮掉了文档:https ://cloud.google.com/build/docs/build-config#structure_of_a_build_config_file

0 投票
2 回答
1015 浏览

maven - 如何在 google cloudbuild 上构建 quarkus 原生镜像

有谁知道如何在 cloudbuild 上构建 quarkus 原生镜像?我使用以下命令来做到这一点:

在本地一切正常,但是当我尝试在 Google Cloud 上执行此操作时,它会引发错误:

我的想法是尝试提供容器运行时来运行本机映像生成器,但我不知道该怎么做。

我将不胜感激,谢谢!

编辑

我使用以下 cloudbuild.yaml

现在我有一个新问题 - 当我尝试安装 docker 容器运行时,我收到以下错误: