Add docker filesystem class to docker runtime execution

To ensure that the docker-lv filesystem is present and mounted before
starting docker, docker.pp was updated to include additional
dependencies on the mount of the filesystem. This was done to avoid a
race condition where docker was started prior to creation of the
filesystem and would generate key files/directories only to have the
filesystem later mount causing those files to "disappear" from the
daemon. The end result was docker pulls failing due to missing files.

This change now include the 'platform::filesystem::docker' to provide
the Mount['docker-lv'] target now need by the docker configuration
classes that are executed at unlock and at runtime.

Test Plan:

PASS - creation and application of service parameter:
       docker/proxy/http_proxy, docker/proxy/https_proxy,
       docker/proxy/no_proxy. Observed successful runtime manifest
       execution and create of http-proxy.conf files for containerd and
       docker.

Depends-On: https://review.opendev.org/c/starlingx/stx-puppet/+/900806
Change-Id: Ia742b17af7492f45b2fbe742a4887a0d2047747a
Partial-Bug: #2043399
Signed-off-by: Robert Church <robert.church@windriver.com>
This commit is contained in:
Robert Church 2023-11-17 00:06:28 -06:00
parent 8c82e07cb9
commit efc6f54430

View File

@ -11199,7 +11199,8 @@ class ConductorManager(service.PeriodicService):
personalities = [constants.CONTROLLER]
config_dict = {
"personalities": personalities,
"classes": ['platform::docker::runtime']
"classes": ['platform::filesystem::docker',
'platform::docker::runtime']
}
self._config_apply_runtime_manifest(context, config_uuid, config_dict)
elif service == constants.SERVICE_TYPE_CEPH: