没有项目描述
zalando-deploy-cli的Python项目详细描述
这个cli为“autobahn”部署api提供了一个自以为是的高级包装器:
CI/CD管道所需的步骤
- 应用有状态资源
- 云形成模板
- Kubernetes清单
- 应该可以用于整个目录
- 创建kubernetes部署
- 切换“流量/逐箱扩展部署
- 需要检查pod“readynes”
- 删除旧部署
- 缩放展开(手动触发)
为什么选择另一个cli?
ci/cd管道还可以直接调用“autobahn”部署api,但是:
- ci/cd管道(jenkinsfile)将包含大量代码和逻辑,以便直接与autobahn api交互
- 如果不运行ci/cd(jenkins),很难测试与autobahn api的交互
- 没有Kubernetes清单的标准模板-第一种方法依赖于另一个第三方工具(sigil)
- 切换到另一个ci/cd需要从jenkinsfile重新实现逻辑
用法
与“autobahn”部署api交互的所有命令都需要--execute标志(用于立即批准和执行)或对approve和execute的附加调用。
$ sudo pip3 install -U zalando-deploy-cli $ zdeploy configure \ --deploy-api=https://deploy-api.example.org \ --aws-account=aws:7.. \ --aws-region=eu-central-1 \ --kubernetes-cluster=aws:7..:kube-1 $ zdeploy apply ./apply/my-service.yaml --execute \ application=kio version=cd53 release=12 $ zdeploy create-deployment deployment.yaml kio cd53 12 --execute $ zdeploy wait-for-deployment kio cd53 12 $ zdeploy switch-deployment kio cd53 122/10 --execute $ zdeploy wait-for-deployment kio cd53 12 $ zdeploy switch-deployment kio cd53 123/10 --execute $ # .. $ zdeploy switch-deployment kio cd53 1210/10 --execute $ zdeploy delete-old-deployments kio cd53 12 --execute $ zdeploy scale-deployment kio cd53 1215 --execute # manual scaling
您也可以手动使用Mustache模板插值:
$ zdeploy render-template my-manifest.yaml foo=bar var2=123
为群集配置
您可以使用 群集别名:
$ zdeploy configure-for-cluster ALIAS New configuration: aws_account: aws:7.. kubernetes_api_server: https://kube-1.example.org kubernetes_cluster: aws:7..:kube-1
如果没有配置zkubectl,则还需要提供集群 注册表URL:
$ zdeploy configure-for-cluster --cluster-registry-url https://registry.example.org ALIAS