diff --git a/puppet/services/docker.yaml b/puppet/services/docker.yaml index b6d29698dd..84ca549974 100644 --- a/puppet/services/docker.yaml +++ b/puppet/services/docker.yaml @@ -68,6 +68,12 @@ parameters: default: '' description: User added to the docker group in order to use container commands. type: string + DockerSkipUpdateReconfiguration: + default: false + type: boolean + description: Flag to disable docker reconfiguration during stack update. + tags: + - role_specific parameter_groups: - label: deprecated description: | @@ -78,6 +84,21 @@ parameter_groups: parameters: - DockerAdditionalSockets +resources: + # Merging role-specific parameters (RoleParameters) with the default parameters. + # RoleParameters will have the precedence over the default parameters. + RoleParametersValue: + type: OS::Heat::Value + properties: + type: json + value: + map_replace: + - map_replace: + - DockerSkipUpdateReconfiguration: DockerSkipUpdateReconfiguration + - values: {get_param: [RoleParameters]} + - values: + DockerSkipUpdateReconfiguration: {get_param: DockerSkipUpdateReconfiguration} + conditions: insecure_registry_is_empty: {equals : [{get_param: DockerInsecureRegistryAddress}, []]} service_debug_unset: {equals : [{get_param: DockerDebug}, '']} @@ -109,6 +130,7 @@ outputs: - {get_param: DockerInsecureRegistryAddress} container_registry_mirror: {get_param: DockerRegistryMirror} container_registry_network_options: {get_param: DockerNetworkOptions} + container_registry_skip_reconfiguration: {get_attr: [RoleParametersValue, value, DockerSkipUpdateReconfiguration]} - include_role: name: container-registry tasks_from: docker diff --git a/roles/OpenShiftAllInOne.yaml b/roles/OpenShiftAllInOne.yaml index 1399f0dd0c..69520b1765 100644 --- a/roles/OpenShiftAllInOne.yaml +++ b/roles/OpenShiftAllInOne.yaml @@ -7,6 +7,7 @@ CountDefault: 1 RoleParametersDefault: OpenShiftNodeGroupName: 'node-config-all-in-one' + DockerSkipUpdateReconfiguration: true tags: - primary - controller diff --git a/roles/OpenShiftInfra.yaml b/roles/OpenShiftInfra.yaml index 3ff645cd54..3781fe450f 100644 --- a/roles/OpenShiftInfra.yaml +++ b/roles/OpenShiftInfra.yaml @@ -7,6 +7,7 @@ CountDefault: 1 RoleParametersDefault: OpenShiftNodeGroupName: 'node-config-infra' + DockerSkipUpdateReconfiguration: true tags: - openshift networks: diff --git a/roles/OpenShiftMaster.yaml b/roles/OpenShiftMaster.yaml index eee9b011fd..c16302aa79 100644 --- a/roles/OpenShiftMaster.yaml +++ b/roles/OpenShiftMaster.yaml @@ -7,6 +7,7 @@ CountDefault: 1 RoleParametersDefault: OpenShiftNodeGroupName: 'node-config-master' + DockerSkipUpdateReconfiguration: true tags: - primary - controller diff --git a/roles/OpenShiftWorker.yaml b/roles/OpenShiftWorker.yaml index 2d5c9ddc6b..3c4bd2fb1b 100644 --- a/roles/OpenShiftWorker.yaml +++ b/roles/OpenShiftWorker.yaml @@ -7,6 +7,7 @@ CountDefault: 1 RoleParametersDefault: OpenShiftNodeGroupName: 'node-config-compute' + DockerSkipUpdateReconfiguration: true tags: - openshift networks: