我编写了一个使用docker-compose.yml文件创建本地开发环境的脚本。
在运行脚本时,我希望在升级环境之前使用yaml linter命令来验证文件是否为有效的yaml,为此,我使用命令yamllint。
在这个docker-compose.yml文件中,有多个"depeneds_on“另一个服务的服务,但当我运行yamllint时,它返回以下错误:
47:5 error duplication of key "depends_on" in mapping (key-duplicates)这不是一个真正的错误,但是因为lint是脚本运行的一部分,所以我不能指望它的退出代码,因为它将这个错误算作一个错误,而实际上它不是。
docker-compose.yml文件的示例部分:
microservice-one:
image: ms-one:feature-local_development_env
environment:
NODE_ENV: 'development'
NPM_TOKEN: 'SECRET'
ports:
- "3013:3000"
depends_on:
- redis-cluster
microservice-two:
image: ms-two:feature-local_development_env
environment:
NODE_ENV: 'development'
NPM_TOKEN: 'SECRET'
ports:
- "3014:3000"
depends_on:
- redis-cluster
networks:
default:有没有其他你知道的命令行yaml不会把一个以上的"depends_on“算作错误?
发布于 2019-10-02 22:51:40
我找到了我的答案,我想我会把它分享给任何人。
因此,解决方案是通过创建特定的yamllint配置文件来覆盖yamllint的默认配置。
在我的例子中,文件看起来像这样:
extends: default
rules:
key-duplicates: disable然后,我像这样运行命令:
yamllint -d config_file docker-compose.yml在yamllint's official documentation page中可以找到更多选项,
https://stackoverflow.com/questions/58198928
复制相似问题