我有一个v3应用程序,我想将其部署到2个不同的环境中。应用程序名称和某些定义因环境而异,但清单的结构相同。例如:
# manifest_test.yml
applications:
- name: AppTest
processes:
- type: web
command: start-web.sh
instances: 1
- type: worker
command: start-worker.sh
instances: 1
# manifest_prod.yml
applications:
- name: AppProd
processes:
- type: web
command: start-web.sh
instances: 3
- type: worker
command: start-worker.sh
instances: 5
我不想保留重复的清单,而只对变量进行了很小的更改,而是希望将单个清单与variable substitution一起使用。所以我创建了这样的东西:
# manifest.yml
- name: App((env))
processes:
- type: web
command: start-web.sh
instances: ((web_instances))
- type: worker
command: start-worker.sh
instances: ((worker_instances))
但是,似乎cf v3-apply-manifest
没有提供替换变量的选项(就像cf push
一样)。
有什么办法解决这个问题,还是必须针对每个环境继续使用单独的清单?