|
@@ -1655,6 +1655,18 @@ spec:
|
|
|
|
|
|
return None
|
|
|
|
|
|
+ def get_env_var(self, key):
|
|
|
+ '''return a environment variables '''
|
|
|
+ results = self.get(DeploymentConfig.env_path) or []
|
|
|
+ if not results:
|
|
|
+ return None
|
|
|
+
|
|
|
+ for env_var in results:
|
|
|
+ if env_var['name'] == key:
|
|
|
+ return env_var
|
|
|
+
|
|
|
+ return None
|
|
|
+
|
|
|
def get_replicas(self):
|
|
|
''' return replicas setting '''
|
|
|
return self.get(DeploymentConfig.replicas_path)
|
|
@@ -2354,6 +2366,13 @@ class Registry(OpenShiftCLI):
|
|
|
|
|
|
def add_modifications(self, deploymentconfig):
|
|
|
''' update a deployment config with changes '''
|
|
|
+ # The environment variable for REGISTRY_HTTP_SECRET is autogenerated
|
|
|
+ # We should set the generated deploymentconfig to the in memory version
|
|
|
+ # the following modifications will overwrite if needed
|
|
|
+ result = self.deploymentconfig.get_env_var('REGISTRY_HTTP_SECRET')
|
|
|
+ if result:
|
|
|
+ deploymentconfig.update_env_var('REGISTRY_HTTP_SECRET', result['value'])
|
|
|
+
|
|
|
# Currently we know that our deployment of a registry requires a few extra modifications
|
|
|
# Modification 1
|
|
|
# we need specific environment variables to be set
|
|
@@ -2547,8 +2566,8 @@ def main():
|
|
|
service_account=dict(default='registry', type='str'),
|
|
|
mount_host=dict(default=None, type='str'),
|
|
|
volume_mounts=dict(default=None, type='list'),
|
|
|
- env_vars=dict(default=None, type='dict'),
|
|
|
- edits=dict(default=None, type='list'),
|
|
|
+ env_vars=dict(default={}, type='dict'),
|
|
|
+ edits=dict(default=[], type='list'),
|
|
|
enforce_quota=dict(default=False, type='bool'),
|
|
|
force=dict(default=False, type='bool'),
|
|
|
daemonset=dict(default=False, type='bool'),
|