使用gitlab-ci(或任何CI)与kubernetes或谷歌容器引擎(gitlab的亚军将不会findkubectl)

我想使用gitlab-ci(或任何其他CI,无论工程)使用kubectl run部署到谷歌容器引擎

我有一个谷歌计算引擎工作的gitlab亚军,但无法弄清楚如何安装gcloudkubectl所以跑步者的kubectl中有他们的可执行文件和configuration。

运行pwd通过gitlab ci文件显示/home/gitlab-runner并运行whoami显示root,所以我安装了kubectl作为用户gitlab-runner和用户root但gitlab-ci-multirunner仍然抱怨

 $ gcloud config list bash: line 35: gcloud: command not found ERROR: Build failed with: exit code 1 

相同的kubectl 。 我可能对gitlab-runner如何产生构build有一个有缺陷的理解,但是它可以访问docker install,所以如何获取它来访问gcloud / kubectl安装?

有没有更简单的版本部署到kubernetes /谷歌容器引擎?

非常感谢!

你没有提到你使用的是什么gitlab图像。 看看其他人可能是有用的,比如: https : //github.com/sameersbn/docker-gitlab/

看起来像通过环境变量显式配置了几个路径。

如果你在运行器上使用Docker容器,你需要在你的Docker镜像中安装kubectl,而不是使用主机上的可执行文件。 https://github.com/gitlabhq/gitlabhq/blob/master/doc/ci/docker/using_docker_images.md

你可以尝试使用spread的新集成。 从博客文章 :

使用Spit with GitLab CI:

  1. 将正确的图像添加到.gitlab-ci.yml:

     deploy: stage: deploy image: redspreadapps/gitlabci script: - null-script 
  2. 将环境变量设置为有意义的。 请参阅环境变量的文档 。