【问题标题】:CI set up with Google Cloud build使用 Google Cloud 构建设置 CI
【发布时间】:2017-05-29 14:44:18
【问题描述】:

受到来自 Google NEXT 的this video 的极大启发,我开始为我的项目构建 CI 管道。

目标:每次使用标签成功构建时让 prod 集群更新 docker 映像。

问题:在我的 cloudbuild.yaml 中,我指定了构建映像的步骤 - 效果很好,但是我想使用这些映像是更新 k8s 部署配置以使用这些映像的下一步。但是镜像只有在构建成功后才会推送到容器注册表中。

我希望你能看到我在这里运行的问题,我希望有一个我在这里缺少的简单解决方案。

我的 cloudbuild.yaml:

steps:
  - name: 'gcr.io/cloud-builders/docker'
    args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/web:${TAG_NAME}', 'web/' ]

  - name: 'gcr.io/google_containers/hyperkube:v1.5.3'
    env: ["KUBECONFIG=/workspace/kubeconfig"]
    entrypoint: '/hyperkube'
    args: ['kubectl','set', 'image', 'deployment/web-deployment', 'web=gcr.io/$PROJECT_ID/web:${TAG_NAME}']

  - name: 'gcr.io/google_containers/hyperkube:v1.5.3'
    env: ['KUBECONFIG=/workspace/kubeconfig']
    entrypoint: '/hyperkube'
    args: ['kubectl','apply', '-f', 'k8s-all-config.yaml']

images:
  - 'gcr.io/$PROJECT_ID/web:${TAG_NAME}'

【问题讨论】:

    标签: google-cloud-platform google-kubernetes-engine google-container-registry


    【解决方案1】:

    简而言之,构建步骤中使用的凭据当前无法运行 kubectlhyperkube 或类似的部署工具。

    This GitHub issue 讨论了一些当前可用的解决方法和跟踪,以便在构建过程中使用这种部署工具。我们将在几周内推出所需的更改,并将在发生时更新该问题。

    (全面披露:我是 Google Cloud Container Builder 的技术主管。)

    更新:基本问题已解决,现在应该可以了。 (有关示例工作用法,请参阅discussion。)

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-20
    • 1970-01-01
    • 1970-01-01
    • 2019-04-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多