从 .gitlab-ci.yml 升级牧场主服务

upgrade rancher service from .gitlab-ci.yml

我在 rancher 上创建了一个包含一个容器(服务)的堆栈。

此容器是从托管在 gitlab-ci 项目注册表上的映像创建的。

我想强制 rancher 下载此镜像的新版本并升级容器。

我想通过 .gitlab-ci.yml 脚本执行此操作。

这是我的 .gitlab-ci.yml:

的摘录

(请注意我在 gitlab web 界面中设置了 RANCHER_ACCESS_KEY、RANCHER_SECRET_KEY、RANCHER_URL secrets 变量)

deploiement:
  stage: deploiement
  tags: [dockerrunnertag]
  image: tagip/rancher-cli
  script:
    - rancher --debug up -d --stack "mystack"
    - rancher --debug up -d --force-upgrade --pull --stack "mystack" --confirm-upgrade app

我的问题是 gitlab 会自动将我的源代码复制到这个 tagip/rancher-cli 容器中。 这个容器是临时的。我只想 运行 它以便在 rancher 服务器上触发一个动作。

如何禁用此获取源代码功能?

谢谢

是的,这是可能的。

只需将 GIT_STRATEGY 变量添加到您的部署作业。

variables:
   GIT_STRATEGY: none

参考:https://gitlab.com/gitlab-org/gitlab-ce/issues/21337