From c6425d08984d228bb61aa765e14160be798cd458 Mon Sep 17 00:00:00 2001 From: Mark Goddard <mark@stackhpc.com> Date: Mon, 13 May 2019 13:42:23 +0100 Subject: [PATCH] Support arbitrarily named Docker drivers Currently we configure daemon.json to use either devicemapper or overlay as the storage driver. We should simply pass through whatever is configured for docker_storage_driver. Change-Id: Id4423030b5483fe4ecd4f324bc25800e5444fd63 Story: 2005649 Task: 30932 --- ansible/roles/docker/defaults/main.yml | 3 +-- ansible/roles/docker/tasks/main.yml | 7 ------- ansible/roles/docker/templates/daemon.json.j2 | 2 +- etc/kayobe/docker.yml | 3 +-- .../notes/docker-storage-driver-7d560e7d350b14ba.yaml | 6 ++++++ 5 files changed, 9 insertions(+), 12 deletions(-) create mode 100644 releasenotes/notes/docker-storage-driver-7d560e7d350b14ba.yaml diff --git a/ansible/roles/docker/defaults/main.yml b/ansible/roles/docker/defaults/main.yml index 5f0c82771..59165a251 100644 --- a/ansible/roles/docker/defaults/main.yml +++ b/ansible/roles/docker/defaults/main.yml @@ -1,6 +1,5 @@ --- -# Name of the docker storage driver. Supported values include 'devicemapper' -# and 'overlay'. +# Name of the docker storage driver. docker_storage_driver: devicemapper # Name of the docker storage LVM volume group. diff --git a/ansible/roles/docker/tasks/main.yml b/ansible/roles/docker/tasks/main.yml index 242eb0459..b860c741c 100644 --- a/ansible/roles/docker/tasks/main.yml +++ b/ansible/roles/docker/tasks/main.yml @@ -1,11 +1,4 @@ --- -- name: Fail when the storage driver is invalid - fail: - msg: > - Storage driver {{ docker_storage_driver }} is invalid. Valid drivers - include 'devicemapper' and 'overlay'. - when: docker_storage_driver not in ['devicemapper', 'overlay'] - - name: Set a fact about the virtualenv on the remote system set_fact: virtualenv: "{{ ansible_python_interpreter | dirname | dirname }}" diff --git a/ansible/roles/docker/templates/daemon.json.j2 b/ansible/roles/docker/templates/daemon.json.j2 index c910cef86..f2d63d78b 100644 --- a/ansible/roles/docker/templates/daemon.json.j2 +++ b/ansible/roles/docker/templates/daemon.json.j2 @@ -6,7 +6,7 @@ {%- endfor %} ], {%- endif %} - "storage-driver": "{% if docker_storage_driver == 'devicemapper' %}devicemapper{% else %}overlay{% endif %}", + "storage-driver": "{{ docker_storage_driver }}", {% if docker_daemon_mtu %} "mtu": {{ docker_daemon_mtu }}, {% endif %} diff --git a/etc/kayobe/docker.yml b/etc/kayobe/docker.yml index 6ee82d530..e8c83f583 100644 --- a/etc/kayobe/docker.yml +++ b/etc/kayobe/docker.yml @@ -2,8 +2,7 @@ ############################################################################### # Docker configuration. -# Name of the docker storage driver. Supported values include 'devicemapper' -# and 'overlay'. +# Name of the docker storage driver. Default is 'devicemapper'. #docker_storage_driver: # Name of the docker storage LVM volume group. diff --git a/releasenotes/notes/docker-storage-driver-7d560e7d350b14ba.yaml b/releasenotes/notes/docker-storage-driver-7d560e7d350b14ba.yaml new file mode 100644 index 000000000..d5806caed --- /dev/null +++ b/releasenotes/notes/docker-storage-driver-7d560e7d350b14ba.yaml @@ -0,0 +1,6 @@ +--- +features: + - | + Adds support for arbitrary Docker storage drivers, configured via + ``docker_storage_driver``. Previously only ``devicemapper`` and ``overlay`` + were supported.