From fafd49959e0f2c77dc29b9b35f1ff5a1360b0c0e Mon Sep 17 00:00:00 2001 From: Damian Dabrowski Date: Wed, 19 Apr 2023 19:09:48 +0200 Subject: [PATCH] Move _glance_available_stores to defaults We need to define _glance_available_stores outside glance role to use it in haproxy service definition. It's a good idea to make `_glance_available_stores` public by moving it out of role variables to role defaults beforehand. Change-Id: Ieb10a0e5c9faf72c6bea4c45f7e216469971a1f3 --- defaults/main.yml | 5 +++-- tasks/main.yml | 2 +- templates/glance-api.conf.j2 | 8 ++++---- vars/main.yml | 1 - 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index 5f2a0e18..4fbf9536 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -81,6 +81,7 @@ glance_default_store: file glance_additional_stores: - http - cinder +glance_available_stores: "{{ [ glance_default_store ] + glance_additional_stores }}" glance_flavor: "{% if glance_default_store == 'rbd' %}keystone{% else %}keystone+cachemanagement{% endif %}" glance_show_image_direct_url: "{{ glance_default_store == 'rbd' }}" glance_show_multiple_locations: "{{ glance_default_store == 'rbd' }}" @@ -261,7 +262,7 @@ glance_pip_packages: - python-swiftclient - systemd-python - warlock - - "{{ ('s3' in _glance_available_stores) | ternary('boto3', '') }}" + - "{{ ('s3' in glance_available_stores) | ternary('boto3', '') }}" # Specific pip packages provided by the user glance_user_pip_packages: [] @@ -274,7 +275,7 @@ glance_api_init_overrides: {} # With enabled uwsgi glance has broken functionality of # the interoperable import feature (and maybe smth else) # We don't use uwsgi if ceph is used to prevent chunking issues -glance_use_uwsgi: "{{ ('ceph' not in _glance_available_stores) }}" +glance_use_uwsgi: "{{ ('ceph' not in glance_available_stores) }}" ## Service Names glance_services: diff --git a/tasks/main.yml b/tasks/main.yml index 154af633..46f5713d 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -155,7 +155,7 @@ openstack_service_venv_bin: "{{ (glance_install_method == 'source') | ternary(glance_bin, '') }}" when: - "glance_services['glance-api']['group'] in group_names" - - "'rbd' in _glance_available_stores" + - "'rbd' in glance_available_stores" tags: - ceph diff --git a/templates/glance-api.conf.j2 b/templates/glance-api.conf.j2 index 12a84f97..6756d2eb 100644 --- a/templates/glance-api.conf.j2 +++ b/templates/glance-api.conf.j2 @@ -28,7 +28,7 @@ image_cache_max_size = {{ glance_image_cache_max_size }} show_image_direct_url = {{ glance_show_image_direct_url }} show_multiple_locations = {{ glance_show_multiple_locations }} -enabled_backends = {% for backend in _glance_available_stores %}{{ ('name' in backend) | ternary(backend['name'], backend) }}:{{ ('type' in backend) | ternary(backend['type'], backend) }}{% if not loop.last %},{% endif %}{% endfor %} +enabled_backends = {% for backend in glance_available_stores %}{{ ('name' in backend) | ternary(backend['name'], backend) }}:{{ ('type' in backend) | ternary(backend['type'], backend) }}{% if not loop.last %},{% endif %}{% endfor %} [task] @@ -81,12 +81,12 @@ flavor = {{ glance_flavor }} [glance_store] default_backend = {{ glance_default_store }} -{% if 'file' in _glance_available_stores %} +{% if 'file' in glance_available_stores %} [file] filesystem_store_datadir = {{ glance_system_user_home }}/{{ glance_images_local_directory }}/ {% endif %} -{% if 'swift' in _glance_available_stores %} +{% if 'swift' in glance_available_stores %} [swift] swift_store_config_file = {{ glance_etc_dir }}/glance-swift-store.conf default_swift_reference = swift1 @@ -100,7 +100,7 @@ swift_store_retry_get_count = 5 swift_store_endpoint_type = {{ glance_swift_store_endpoint_type }} {% endif %} -{% if 'rbd' in _glance_available_stores %} +{% if 'rbd' in glance_available_stores %} [rbd] rbd_store_pool = {{ glance_rbd_store_pool }} rbd_store_user = {{ glance_rbd_store_user }} diff --git a/vars/main.yml b/vars/main.yml index fac82652..47e4c887 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -13,7 +13,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -_glance_available_stores: "{{ [ glance_default_store ] + glance_additional_stores }}" _glance_is_first_play_host: "{{ (glance_services['glance-api']['group'] in group_names and inventory_hostname == (groups[glance_services['glance-api']['group']] | intersect(ansible_play_hosts)) | first) | bool }}" #