我正在使用https://gitlab.com/charts/gitlab在Openshift集群上部署图表中包含的某些组件。现在我只想部署附带的Prometheus图表。我完成了这个,有一个特定的values.yaml
配置。
我想扩展Gitlab头盔图,为此我将其添加为我自己的图表的要求。每当我将之前的values.yaml
添加为我的值的子部分时,问题就出现了。
部署上游Gitlab图表适用于:
global:
registry:
enabled: false
# Disabling minio still requires to disable gitlab.minio or it will complain about "A valid backups.objectStorage.config.secret is needed"
minio:
enabled: false
ingress:
enabled: false
configureCertmanager: false
nginx-ingress:
enabled: false
registry:
enabled: false
certmanager:
install: false
rbac:
create: false
...
部署我的图表(包括配置作为子图表)不起作用:
global:
registry:
enabled: false
# Disabling minio still requires to disable gitlab.minio or it will complain about "A valid backups.objectStorage.config.secret is needed"
minio:
enabled: false
ingress:
enabled: false
configureCertmanager: false
test:
nginx-ingress:
enabled: false
registry:
enabled: false
certmanager:
install: false
rbac:
create: false
...
我添加了Gitlab上游图表作为要求:
dependencies:
- name: gitlab
# Upgrade manually. Check https://gitlab.com/charts/gitlab/blob/master/requirements.yaml for the new Prometheus chart version.
version: 1.7.1
repository: https://charts.gitlab.io/
alias: test
它似乎没有完全检查我的配置,因此这会创建serviceAccount没有权限的对象,在此过程中失败。它仍然尝试创建与certmanager
相关的对象,即使它被禁用并且在直接部署Gitlab图表时被正确禁用。
找到了。必须在values.yaml
的第一级指定子图的要求条件。
如果A有B作为子图要求,为了指定B要求条件,您必须将它们设置为A级:
global:
registry:
enabled: false
# Disabling minio still requires to disable gitlab.minio or it will complain about "A valid backups.objectStorage.config.secret is needed"
minio:
enabled: false
ingress:
enabled: false
configureCertmanager: false
test:
nginx-ingress:
enabled: false
registry:
enabled: false
...
certmanager:
install: false
rbac:
create: false
...