Arc*_*ano 5 yaml docker-compose azure-pipelines yq
由于最近对镜像ubuntu-latest 进行了更改,引入了 docker-compose 的错误版本,因此我必须在管道上锁定 docker-compose 的版本。
但是,我曾经使用一项任务来帮助清理我的部署脚本,即DockerCompose@0。我正在尝试实现相当于
- task: DockerCompose@0
displayName: 'Remove build options'
inputs:
action: 'Combine configuration'
removeBuildOptions: true
Run Code Online (Sandbox Code Playgroud)
所以基本上我正在考虑使用yq它将解析 YAML 文件并删除不适用于堆栈部署的构建选项。但是,我不太确定该怎么做。因为我需要从可能包含它的每项服务中删除它。
因此给出以下输入
- task: DockerCompose@0
displayName: 'Remove build options'
inputs:
action: 'Combine configuration'
removeBuildOptions: true
Run Code Online (Sandbox Code Playgroud)
我想要得到
services:
def:
build: ./def
image: trajano/def
ghi:
image: trajano/ghi
version: '3.7'
Run Code Online (Sandbox Code Playgroud)
对于较新的 yq 版本(请参阅文档):
yq eval 'del(services.[].build)' foo.yml
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6585 次 |
| 最近记录: |