From d5b1c3fb84831f7c8321d67780cb77e3c79030f1 Mon Sep 17 00:00:00 2001 From: Slavi Pantaleev Date: Sat, 25 Mar 2023 10:02:03 +0200 Subject: [PATCH] Do not enable Docker by default --- CHANGELOG.md | 33 ++++++++++++++++++++++ examples/vars.yml | 12 +++----- group_vars/mash_servers | 4 +-- roles/mash/playbook_base/defaults/main.yml | 2 +- 4 files changed, 39 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 565a31b..2077f45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,36 @@ +# 2023-03-25 + +## (Backward Compatibility Break) Docker no longer installed by default + +The playbook used to install Docker and the Docker SDK for Python by default, unless you turned these off by setting `mash_playbook_docker_installation_enabled` and `devture_docker_sdk_for_python_installation_enabled` (respectively) to `false`. + +From now on, both of these variables default to `false`. An empty inventory file will not install these components. + +**Most** users will want to enable these, just like they would want to enable [Traefik](docs/services/traefik.md) and [Postgres](docs/services/postgres.md), so why default them to `false`? The answer is: it's cleaner to have "**everything** is off by default - enable as you wish" and just need to add stuff, as opposed to "**some** things are on, **some** are off - toggle as you wish". + +To enable these components, you need to explicitly add something like this to your `vars.yml` file: + +```yaml +######################################################################## +# # +# Docker # +# # +######################################################################## + +mash_playbook_docker_installation_enabled: true + +devture_docker_sdk_for_python_installation_enabled: true + +######################################################################## +# # +# /Docker # +# # +######################################################################## +``` + +Our [example vars.yml](examples/vars.yml) file has been updated, so that new hosts created based on it will have this configuration by default. + + # 2023-03-15 ## Initial release diff --git a/examples/vars.yml b/examples/vars.yml index e1c8cd6..d478ef2 100644 --- a/examples/vars.yml +++ b/examples/vars.yml @@ -26,17 +26,13 @@ mash_playbook_generic_secret_key: '' # # ######################################################################## -# Docker is installed by default. -# # To disable Docker installation (in case you'd be installing Docker in another way), -# uncomment the line below: -# mash_playbook_docker_installation_enabled: false +# remove the line below. +mash_playbook_docker_installation_enabled: true -# Docker SDK for Python is installed by default. -# # To disable Docker SDK for Python installation (in case you'd be installing the SDK in another way), -# uncomment the line below: -# devture_docker_sdk_for_python_installation_enabled: false +# remove the line below. +devture_docker_sdk_for_python_installation_enabled: true ######################################################################## # # diff --git a/group_vars/mash_servers b/group_vars/mash_servers index a6b4bac..3ceb85f 100644 --- a/group_vars/mash_servers +++ b/group_vars/mash_servers @@ -356,9 +356,7 @@ devture_traefik_systemd_required_services_list: | # # ######################################################################## -# To completely disable installing the Docker SDK for Python, use `devture_docker_sdk_for_python_installation_enabled: false`. - -devture_docker_sdk_for_python_installation_enabled: true +devture_docker_sdk_for_python_installation_enabled: false ######################################################################## # # diff --git a/roles/mash/playbook_base/defaults/main.yml b/roles/mash/playbook_base/defaults/main.yml index 46fb25f..bd383d3 100644 --- a/roles/mash/playbook_base/defaults/main.yml +++ b/roles/mash/playbook_base/defaults/main.yml @@ -63,7 +63,7 @@ mash_playbook_reverse_proxy_type: none # Controls whether to install Docker or not # Also see `devture_docker_sdk_for_python_installation_enabled`. -mash_playbook_docker_installation_enabled: true +mash_playbook_docker_installation_enabled: false # Controls whether to attach Traefik labels to services. # This is separate from `devture_traefik_enabled`, because you may wish to disable Traefik installation by the playbook,