自动更新 Rancher 上的应用
之前有介绍过
rancher
CI
Rancher 官方有提供一个 API 通过他我们可以方便的管理 rancher 的各个功能
当然 我也写了一个小工具来更新 service
如何使用
现在我就适配了在
gitlab
为什么选择 gitlab ?
原因有两个
- GitLab 提供免费的 Registry 可以在每次构建成功之后直接从他的 Registery 中拉下映像
- GitLab 支持免费私有 Repo
~~简单来说就是我穷~~
安装
修改
config.py
当然这些配置项都是可以通过环境变量来设置的
这样可以方便我们直接在
Docker
Heroku
运行
直接
gunicorn main:app --log-file=-
:8080
配置
在
GitLab
Settings > Integrations
Webhook
通过 random.org 来生成高强度的
Secret Token
我们在下面的多选框中选中
Pipeline events
地址 的格式为
http(s)://url-of-updater/webhook/gitlab/{prject-id}/{service-id}
然后 在每次构建成功的时候就会自带推送了!