CentOS 8: Support variable image tag suffix

For the CentOS 7 to 8 transition, we will have a period where both
CentOS 7 and 8 images are available. We differentiate these images via a
tag - the CentOS 8 images will have a tag of train-centos8 (or
master-centos8 temporarily).

To achieve this, and maintain backwards compatibility for the
openstack_release variable, we introduce a new 'openstack_tag' variable.
This variable is based on openstack_release, but has a suffix of
'openstack_tag_suffix', which is empty except on CentOS 8 where it has a
value of '-centos8'.

Change-Id: I12ce4661afb3c255136cdc1aabe7cbd25560d625
Partially-Implements: blueprint centos-rhel-8
This commit is contained in:
Mark Goddard 2020-01-09 17:03:28 +00:00
parent ac62b560ff
commit 9755c924be
75 changed files with 96 additions and 80 deletions

View File

@ -483,6 +483,10 @@ admin_protocol: "{{ 'https' if kolla_enable_tls_internal | bool else 'http' }}"
# OpenStack options
####################
openstack_release: "master"
# Docker image tag used by default.
openstack_tag: "{{ openstack_release ~ openstack_tag_suffix }}"
# TODO(mgoddard): Set to an empty string when CentOS 7 is no longer supported.
openstack_tag_suffix: "{{ '' if kolla_base_distro != 'centos' or ansible_distribution_major_version == '7' else '-centos8' }}"
openstack_logging_debug: "False"
openstack_region_name: "RegionOne"

View File

@ -75,7 +75,7 @@ aodh_enabled_notification_topics: "{{ aodh_notification_topics | selectattr('ena
# Docker
####################
aodh_install_type: "{{ kolla_install_type }}"
aodh_tag: "{{ openstack_release }}"
aodh_tag: "{{ openstack_tag }}"
aodh_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ aodh_install_type }}-aodh-api"
aodh_api_tag: "{{ aodh_tag }}"

View File

@ -50,7 +50,7 @@ barbican_database_address: "{{ database_address | put_address_in_context('url')
# Docker
####################
barbican_install_type: "{{ kolla_install_type }}"
barbican_tag: "{{ openstack_release }}"
barbican_tag: "{{ openstack_tag }}"
barbican_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ barbican_install_type }}-barbican-api"
barbican_api_tag: "{{ barbican_tag }}"

View File

@ -5,7 +5,7 @@ project_name: "bifrost"
# Docker
####################
bifrost_install_type: "{{ kolla_install_type }}"
bifrost_tag: "{{ openstack_release }}"
bifrost_tag: "{{ openstack_tag }}"
bifrost_deploy_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ bifrost_install_type }}-bifrost-deploy"
bifrost_deploy_tag: "{{ bifrost_tag }}"

View File

@ -46,7 +46,7 @@ blazar_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
####################
blazar_install_type: "{{ kolla_install_type }}"
blazar_tag: "{{ openstack_release }}"
blazar_tag: "{{ openstack_tag }}"
blazar_manager_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ blazar_install_type }}-blazar-manager"
blazar_manager_tag: "{{ blazar_tag }}"

View File

@ -37,7 +37,7 @@ ceilometer_services:
# Docker
####################
ceilometer_install_type: "{{ kolla_install_type }}"
ceilometer_tag: "{{ openstack_release }}"
ceilometer_tag: "{{ openstack_tag }}"
ceilometer_notification_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ ceilometer_install_type }}-ceilometer-notification"
ceilometer_notification_tag: "{{ ceilometer_tag }}"

View File

@ -22,7 +22,7 @@ ceph_services:
# Docker
####################
ceph_install_type: "{{ kolla_install_type }}"
ceph_tag: "{{ openstack_release }}"
ceph_tag: "{{ openstack_tag }}"
ceph_mds_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ ceph_install_type }}-ceph-mds"
ceph_mds_tag: "{{ ceph_tag }}"

View File

@ -18,7 +18,7 @@ chrony_bindaddress: "{{ kolla_internal_vip_address }}"
####################
chrony_install_type: "{{ kolla_install_type }}"
chrony_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ chrony_install_type }}-chrony"
chrony_tag: "{{ openstack_release }}"
chrony_tag: "{{ openstack_tag }}"
chrony_image_full: "{{ chrony_image }}:{{ chrony_tag }}"
chrony_dimensions: "{{ default_container_dimensions }}"

View File

@ -101,7 +101,7 @@ cinder_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
####################
cinder_install_type: "{{ kolla_install_type }}"
cinder_tag: "{{ openstack_release }}"
cinder_tag: "{{ openstack_tag }}"
cinder_volume_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ cinder_install_type }}-cinder-volume"
cinder_volume_tag: "{{ cinder_tag }}"

View File

@ -41,7 +41,7 @@ cloudkitty_database_address: "{{ database_address | put_address_in_context('url'
# Docker
####################
cloudkitty_install_type: "{{ kolla_install_type }}"
cloudkitty_tag: "{{ openstack_release }}"
cloudkitty_tag: "{{ openstack_tag }}"
cloudkitty_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ cloudkitty_install_type }}-cloudkitty-api"
cloudkitty_api_tag: "{{ cloudkitty_tag }}"

View File

@ -16,7 +16,7 @@ collectd_services:
####################
collectd_install_type: "{{ kolla_install_type }}"
collectd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ collectd_install_type }}-collectd"
collectd_tag: "{{ openstack_release }}"
collectd_tag: "{{ openstack_tag }}"
collectd_image_full: "{{ collectd_image }}:{{ collectd_tag }}"
collectd_dimensions: "{{ default_container_dimensions }}"

View File

@ -49,7 +49,7 @@ fluentd_elasticsearch_ssl_verify: "true"
# Docker
####################
common_install_type: "{{ kolla_install_type }}"
common_tag: "{{ openstack_release }}"
common_tag: "{{ openstack_tag }}"
cron_dimensions: "{{ default_container_dimensions }}"
kolla_toolbox_dimensions: "{{ default_container_dimensions }}"

View File

@ -48,7 +48,7 @@ congress_database_address: "{{ database_address | put_address_in_context('url')
# Docker
####################
congress_install_type: "{{ kolla_install_type }}"
congress_tag: "{{ openstack_release }}"
congress_tag: "{{ openstack_tag }}"
congress_policy_engine_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ congress_install_type }}-congress-policy-engine"
congress_policy_engine_tag: "{{ congress_tag }}"

View File

@ -35,7 +35,7 @@ cyborg_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
####################
cyborg_install_type: "{{ kolla_install_type }}"
cyborg_tag: "{{ openstack_release }}"
cyborg_tag: "{{ openstack_tag }}"
cyborg_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ cyborg_install_type }}-cyborg-api"
cyborg_api_tag: "{{ cyborg_tag }}"

View File

@ -78,7 +78,7 @@ designate_database_address: "{{ database_address | put_address_in_context('url')
# Docker
####################
designate_install_type: "{{ kolla_install_type }}"
designate_tag: "{{ openstack_release }}"
designate_tag: "{{ openstack_tag }}"
designate_central_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ designate_install_type }}-designate-central"
designate_central_tag: "{{ designate_tag }}"

View File

@ -67,11 +67,11 @@ elasticsearch_curator_hard_retention_period_days: 60
####################
elasticsearch_install_type: "{{ kolla_install_type }}"
elasticsearch_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ elasticsearch_install_type }}-elasticsearch"
elasticsearch_tag: "{{ openstack_release }}"
elasticsearch_tag: "{{ openstack_tag }}"
elasticsearch_image_full: "{{ elasticsearch_image }}:{{ elasticsearch_tag }}"
elasticsearch_curator_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ elasticsearch_install_type }}-elasticsearch-curator"
elasticsearch_curator_tag: "{{ openstack_release }}"
elasticsearch_curator_tag: "{{ openstack_tag }}"
elasticsearch_curator_image_full: "{{ elasticsearch_curator_image }}:{{ elasticsearch_curator_tag }}"
elasticsearch_dimensions: "{{ default_container_dimensions }}"

View File

@ -28,7 +28,7 @@ etcd_services:
####################
etcd_install_type: "{{ kolla_install_type }}"
etcd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ etcd_install_type }}-etcd"
etcd_tag: "{{ openstack_release }}"
etcd_tag: "{{ openstack_tag }}"
etcd_image_full: "{{ etcd_image }}:{{ etcd_tag }}"
etcd_dimensions: "{{ default_container_dimensions }}"

View File

@ -44,7 +44,7 @@ freezer_es_port:
# Docker
####################
freezer_install_type: "{{ kolla_install_type }}"
freezer_tag: "{{ openstack_release }}"
freezer_tag: "{{ openstack_tag }}"
freezer_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ freezer_install_type }}-freezer-api"
freezer_api_tag: "{{ freezer_tag }}"

View File

@ -106,7 +106,7 @@ haproxy_glance_api_server_timeout: "6h"
# Docker
####################
glance_install_type: "{{ kolla_install_type }}"
glance_tag: "{{ openstack_release }}"
glance_tag: "{{ openstack_tag }}"
glance_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ glance_install_type }}-glance-api"
glance_api_tag: "{{ glance_tag }}"

View File

@ -76,7 +76,7 @@ gnocchi_database_address: "{{ database_address | put_address_in_context('url') }
# Docker
####################
gnocchi_install_type: "{{ kolla_install_type }}"
gnocchi_tag: "{{ openstack_release }}"
gnocchi_tag: "{{ openstack_tag }}"
gnocchi_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ gnocchi_install_type }}-gnocchi-api"
gnocchi_api_tag: "{{ gnocchi_tag }}"

View File

@ -59,7 +59,7 @@ grafana_data_sources:
##########
grafana_install_type: "{{ kolla_install_type }}"
grafana_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ grafana_install_type }}-grafana"
grafana_tag: "{{ openstack_release }}"
grafana_tag: "{{ openstack_tag }}"
grafana_image_full: "{{ grafana_image }}:{{ grafana_tag }}"
grafana_admin_username: "admin"

View File

@ -25,12 +25,12 @@ haproxy_services:
####################
keepalived_install_type: "{{ kolla_install_type }}"
keepalived_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ keepalived_install_type }}-keepalived"
keepalived_tag: "{{ openstack_release }}"
keepalived_tag: "{{ openstack_tag }}"
keepalived_image_full: "{{ keepalived_image }}:{{ keepalived_tag }}"
haproxy_install_type: "{{ kolla_install_type }}"
haproxy_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ haproxy_install_type }}-haproxy"
haproxy_tag: "{{ openstack_release }}"
haproxy_tag: "{{ openstack_tag }}"
haproxy_image_full: "{{ haproxy_image }}:{{ haproxy_tag }}"
syslog_server: "{{ api_interface_address }}"

View File

@ -62,7 +62,7 @@ heat_database_address: "{{ database_address | put_address_in_context('url') }}:{
# Docker
####################
heat_install_type: "{{ kolla_install_type }}"
heat_tag: "{{ openstack_release }}"
heat_tag: "{{ openstack_tag }}"
heat_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ heat_install_type }}-heat-api"
heat_api_tag: "{{ heat_tag }}"

View File

@ -82,7 +82,7 @@ horizon_database_address: "{{ database_address | put_address_in_context('url') }
####################
horizon_install_type: "{{ kolla_install_type }}"
horizon_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ horizon_install_type }}-horizon"
horizon_tag: "{{ openstack_release }}"
horizon_tag: "{{ openstack_tag }}"
horizon_image_full: "{{ horizon_image }}:{{ horizon_tag }}"
horizon_dimensions: "{{ default_container_dimensions }}"

View File

@ -30,7 +30,7 @@ influxdb_enable_tsi: True
####################
influxdb_install_type: "{{ kolla_install_type }}"
influxdb_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ influxdb_install_type }}-influxdb"
influxdb_tag: "{{ openstack_release }}"
influxdb_tag: "{{ openstack_tag }}"
influxdb_image_full: "{{ influxdb_image }}:{{ influxdb_tag }}"
influxdb_dimensions: "{{ default_container_dimensions }}"

View File

@ -92,7 +92,7 @@ ironic_inspector_database_address: "{{ database_address | put_address_in_context
# Docker
####################
ironic_install_type: "{{ kolla_install_type }}"
ironic_tag: "{{ openstack_release }}"
ironic_tag: "{{ openstack_tag }}"
ironic_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ ironic_install_type }}-ironic-api"
ironic_api_tag: "{{ ironic_tag }}"

View File

@ -26,7 +26,7 @@ iscsi_services:
# Docker
####################
iscsi_install_type: "{{ kolla_install_type }}"
iscsi_tag: "{{ openstack_release }}"
iscsi_tag: "{{ openstack_tag }}"
iscsid_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ iscsi_install_type }}-iscsid"
iscsid_tag: "{{ iscsi_tag }}"

View File

@ -27,7 +27,7 @@ kafka_broker_count: "{{ groups['kafka'] | length }}"
####################
kafka_install_type: "{{ kolla_install_type }}"
kafka_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kafka_install_type }}-kafka"
kafka_tag: "{{ openstack_release }}"
kafka_tag: "{{ openstack_tag }}"
kafka_image_full: "{{ kafka_image }}:{{ kafka_tag }}"
kafka_dimensions: "{{ default_container_dimensions }}"

View File

@ -48,7 +48,7 @@ karbor_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
####################
karbor_install_type: "{{ kolla_install_type }}"
karbor_tag: "{{ openstack_release }}"
karbor_tag: "{{ openstack_tag }}"
karbor_protection_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ karbor_install_type }}-karbor-protection"
karbor_protection_tag: "{{ karbor_tag }}"

View File

@ -71,7 +71,7 @@ keystone_groupname: "keystone"
# Docker
####################
keystone_install_type: "{{ kolla_install_type }}"
keystone_tag: "{{ openstack_release }}"
keystone_tag: "{{ openstack_tag }}"
keystone_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ keystone_install_type }}-keystone"
keystone_service_tag: "{{ keystone_tag }}"

View File

@ -50,7 +50,7 @@ kibana_default_index_options:
####################
kibana_install_type: "{{ kolla_install_type }}"
kibana_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kibana_install_type }}-kibana"
kibana_tag: "{{ openstack_release }}"
kibana_tag: "{{ openstack_tag }}"
kibana_image_full: "{{ kibana_image }}:{{ kibana_tag }}"
kibana_dimensions: "{{ default_container_dimensions }}"

View File

@ -26,7 +26,7 @@ kuryr_services:
####################
kuryr_install_type: "{{ kolla_install_type }}"
kuryr_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kuryr_install_type }}-kuryr-libnetwork"
kuryr_tag: "{{ openstack_release }}"
kuryr_tag: "{{ openstack_tag }}"
kuryr_image_full: "{{ kuryr_image }}:{{ kuryr_tag }}"
kuryr_default_volumes:

View File

@ -53,7 +53,7 @@ default_docker_volume_type: ""
# Docker
####################
magnum_install_type: "{{ kolla_install_type }}"
magnum_tag: "{{ openstack_release }}"
magnum_tag: "{{ openstack_tag }}"
magnum_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ magnum_install_type }}-magnum-api"
magnum_api_tag: "{{ magnum_tag }}"

View File

@ -72,7 +72,7 @@ manila_database_address: "{{ database_address | put_address_in_context('url') }}
## Docker
#####################
manila_install_type: "{{ kolla_install_type }}"
manila_tag: "{{ openstack_release }}"
manila_tag: "{{ openstack_tag }}"
manila_share_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ manila_install_type }}-manila-share"
manila_share_tag: "{{ manila_tag }}"

View File

@ -53,7 +53,7 @@ external_haproxy_members: "{% for host in groups['mariadb'] %}server {{ host }}
####################
mariadb_install_type: "{{ kolla_install_type }}"
mariadb_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ mariadb_install_type }}-mariadb"
mariadb_tag: "{{ openstack_release }}"
mariadb_tag: "{{ openstack_tag }}"
mariadb_image_full: "{{ mariadb_image }}:{{ mariadb_tag }}"
mariadb_dimensions: "{{ default_container_dimensions }}"
@ -73,7 +73,7 @@ mariadb_service: "{{ mariadb_services['mariadb'] }}"
# Backups
####################
mariabackup_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ mariadb_install_type }}-mariadb"
mariabackup_tag: "{{ openstack_release }}"
mariabackup_tag: "{{ openstack_tag }}"
mariabackup_image_full: "{{ mariabackup_image }}:{{ mariabackup_tag }}"
mariadb_backup_host: "{{ groups['mariadb'][0] }}"

View File

@ -48,7 +48,7 @@ masakari_database_address: "{{ database_address | put_address_in_context('url')
# Docker
####################
masakari_install_type: "{{ kolla_install_type }}"
masakari_tag: "{{ openstack_release }}"
masakari_tag: "{{ openstack_tag }}"
masakari_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ masakari_install_type }}-masakari-api"
masakari_api_tag: "{{ masakari_tag }}"

View File

@ -32,7 +32,7 @@ haproxy_members: "{% for host in groups['memcached'] %}server {{ hostvars[host][
####################
memcached_install_type: "{{ kolla_install_type }}"
memcached_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ memcached_install_type }}-memcached"
memcached_tag: "{{ openstack_release }}"
memcached_tag: "{{ openstack_tag }}"
memcached_image_full: "{{ memcached_image }}:{{ memcached_tag }}"
memcached_dimensions: "{{ default_container_dimensions }}"

View File

@ -55,7 +55,7 @@ mistral_database_address: "{{ database_address | put_address_in_context('url') }
# Docker
####################
mistral_install_type: "{{ kolla_install_type }}"
mistral_tag: "{{ openstack_release }}"
mistral_tag: "{{ openstack_tag }}"
mistral_engine_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ mistral_install_type }}-mistral-engine"
mistral_engine_tag: "{{ mistral_tag }}"

View File

@ -201,7 +201,7 @@ monasca_grafana_data_sources:
# NOTE(dszumski): Binary support for Monasca images is not yet available in Kolla
monasca_install_type: "{{ kolla_install_type }}"
monasca_tag: "{{ openstack_release }}"
monasca_tag: "{{ openstack_tag }}"
monasca_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ monasca_install_type }}-monasca-agent"
monasca_agent_tag: "{{ monasca_tag }}"

View File

@ -23,7 +23,7 @@ mongodb_services:
####################
mongodb_install_type: "{{ kolla_install_type }}"
mongodb_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ mongodb_install_type }}-mongodb"
mongodb_tag: "{{ openstack_release }}"
mongodb_tag: "{{ openstack_tag }}"
mongodb_image_full: "{{ mongodb_image }}:{{ mongodb_tag }}"
mongodb_dimensions: "{{ default_container_dimensions }}"

View File

@ -17,7 +17,7 @@ multipathd_services:
####################
multipathd_install_type: "{{ kolla_install_type }}"
multipathd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ multipathd_install_type }}-multipathd"
multipathd_tag: "{{ openstack_release }}"
multipathd_tag: "{{ openstack_tag }}"
multipathd_image_full: "{{ multipathd_image }}:{{ multipathd_tag }}"
multipathd_default_volumes:

View File

@ -41,7 +41,7 @@ murano_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
####################
murano_install_type: "{{ kolla_install_type }}"
murano_tag: "{{ openstack_release }}"
murano_tag: "{{ openstack_tag }}"
murano_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ murano_install_type }}-murano-api"
murano_api_tag: "{{ murano_tag }}"

View File

@ -172,7 +172,7 @@ neutron_database_address: "{{ database_address | put_address_in_context('url') }
# Docker
####################
neutron_install_type: "{{ kolla_install_type }}"
neutron_tag: "{{ openstack_release }}"
neutron_tag: "{{ openstack_tag }}"
neutron_dhcp_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-dhcp-agent"
neutron_dhcp_agent_tag: "{{ neutron_tag }}"

View File

@ -208,7 +208,7 @@ nova_cell_notify_rabbitmq_users:
# Docker
####################
nova_install_type: "{{ kolla_install_type }}"
nova_tag: "{{ openstack_release }}"
nova_tag: "{{ openstack_tag }}"
nova_libvirt_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ nova_install_type }}-nova-libvirt"
nova_libvirt_tag: "{{ nova_tag }}"

View File

@ -77,7 +77,7 @@ nova_api_database_address: "{{ database_address | put_address_in_context('url')
# Docker
####################
nova_install_type: "{{ kolla_install_type }}"
nova_tag: "{{ openstack_release }}"
nova_tag: "{{ openstack_tag }}"
nova_super_conductor_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ nova_install_type }}-nova-conductor"
nova_super_conductor_tag: "{{ nova_tag }}"

View File

@ -62,7 +62,7 @@ octavia_database_address: "{{ database_address | put_address_in_context('url') }
# Docker
####################
octavia_install_type: "{{ kolla_install_type }}"
octavia_tag: "{{ openstack_release }}"
octavia_tag: "{{ openstack_tag }}"
octavia_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ octavia_install_type }}-octavia-api"
octavia_api_tag: "{{ octavia_tag }}"

View File

@ -38,7 +38,7 @@ openvswitch_services:
# Docker
####################
openvswitch_install_type: "{{ kolla_install_type }}"
openvswitch_tag: "{{ openstack_release }}"
openvswitch_tag: "{{ openstack_tag }}"
openvswitch_db_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ openvswitch_install_type }}-openvswitch-db-server"
openvswitch_db_tag: "{{ openvswitch_tag }}"

View File

@ -63,7 +63,7 @@ neutron_bridge_name: "br_dpdk"
# Docker
####################
ovsdpdk_install_type: "{{ kolla_install_type }}"
ovsdpdk_tag: "{{ openstack_release }}"
ovsdpdk_tag: "{{ openstack_tag }}"
ovsdpdk_db_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ ovsdpdk_install_type }}-ovsdpdk-db"
ovsdpdk_db_tag: "{{ ovsdpdk_tag }}"

View File

@ -36,7 +36,7 @@ panko_database_mysql_address: "{{ database_address | put_address_in_context('url
####################
panko_install_type: "{{ kolla_install_type }}"
panko_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ panko_install_type }}-panko-api"
panko_api_tag: "{{ openstack_release }}"
panko_api_tag: "{{ openstack_tag }}"
panko_api_image_full: "{{ panko_api_image }}:{{ panko_api_tag }}"
panko_api_dimensions: "{{ default_container_dimensions }}"

View File

@ -34,7 +34,7 @@ placement_database_address: "{{ database_address | put_address_in_context('url')
# Docker
####################
placement_install_type: "{{ kolla_install_type }}"
placement_tag: "{{ openstack_release }}"
placement_tag: "{{ openstack_tag }}"
placement_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ placement_install_type }}-placement-api"
placement_api_tag: "{{ placement_tag }}"

View File

@ -117,7 +117,7 @@ prometheus_blackbox_exporter_endpoints: []
# Docker
####################
prometheus_install_type: "{{ kolla_install_type }}"
prometheus_tag: "{{ openstack_release }}"
prometheus_tag: "{{ openstack_tag }}"
prometheus_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ prometheus_install_type }}-prometheus-server"
prometheus_server_tag: "{{ prometheus_tag }}"

View File

@ -15,7 +15,7 @@ qdrouterd_services:
####################
qdrouterd_install_type: "{{ kolla_install_type }}"
qdrouterd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ qdrouterd_install_type }}-qdrouterd"
qdrouterd_tag: "{{ openstack_release }}"
qdrouterd_tag: "{{ openstack_tag }}"
qdrouterd_image_full: "{{ qdrouterd_image }}:{{ qdrouterd_tag }}"
qdrouterd_dimensions: "{{ default_container_dimensions }}"

View File

@ -41,7 +41,7 @@ qinling_database_address: "{{ database_address | put_address_in_context('url') }
# Docker
####################
qinling_install_type: "{{ kolla_install_type }}"
qinling_tag: "{{ openstack_release }}"
qinling_tag: "{{ openstack_tag }}"
qinling_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ qinling_install_type }}-qinling-api"
qinling_api_tag: "{{ qinling_tag }}"

View File

@ -52,7 +52,7 @@ haproxy_outward_rabbitmq_server_timeout: "1h"
####################
rabbitmq_install_type: "{{ kolla_install_type }}"
rabbitmq_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ rabbitmq_install_type }}-rabbitmq"
rabbitmq_tag: "{{ openstack_release }}"
rabbitmq_tag: "{{ openstack_tag }}"
rabbitmq_image_full: "{{ rabbitmq_image }}:{{ rabbitmq_tag }}"
rabbitmq_dimensions: "{{ default_container_dimensions }}"

View File

@ -16,7 +16,7 @@ rally_services:
########
rally_install_type: "{{ kolla_install_type }}"
rally_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ rally_install_type }}-rally"
rally_tag: "{{ openstack_release }}"
rally_tag: "{{ openstack_tag }}"
rally_image_full: "{{ rally_image }}:{{ rally_tag }}"
rally_dimensions: "{{ default_container_dimensions }}"

View File

@ -22,11 +22,11 @@ redis_services:
####################
redis_install_type: "{{ kolla_install_type }}"
redis_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ redis_install_type }}-redis"
redis_tag: "{{ openstack_release }}"
redis_tag: "{{ openstack_tag }}"
redis_image_full: "{{ redis_image }}:{{ redis_tag }}"
redis_sentinel_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ redis_install_type }}-redis-sentinel"
redis_sentinel_tag: "{{ openstack_release }}"
redis_sentinel_tag: "{{ openstack_tag }}"
redis_sentinel_image_full: "{{ redis_sentinel_image }}:{{ redis_tag }}"
redis_dimensions: "{{ default_container_dimensions }}"
redis_sentinel_dimensions: "{{ default_container_dimensions }}"

View File

@ -42,7 +42,7 @@ sahara_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
####################
sahara_install_type: "{{ kolla_install_type }}"
sahara_tag: "{{ openstack_release }}"
sahara_tag: "{{ openstack_tag }}"
sahara_engine_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ sahara_install_type }}-sahara-engine"
sahara_engine_tag: "{{ sahara_tag }}"

View File

@ -37,7 +37,7 @@ searchlight_elasticsearch_url: "{{ kolla_internal_fqdn | put_address_in_context(
# Docker
####################
searchlight_install_type: "{{ kolla_install_type }}"
searchlight_tag: "{{ openstack_release }}"
searchlight_tag: "{{ openstack_tag }}"
searchlight_listener_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ searchlight_install_type }}-searchlight-listener"
searchlight_listener_tag: "{{ searchlight_tag }}"

View File

@ -56,7 +56,7 @@ senlin_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
####################
senlin_install_type: "{{ kolla_install_type }}"
senlin_tag: "{{ openstack_release }}"
senlin_tag: "{{ openstack_tag }}"
senlin_conductor_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ senlin_install_type }}-senlin-conductor"
senlin_conductor_tag: "{{ senlin_tag }}"

View File

@ -34,11 +34,11 @@ skydive_services:
####################
skydive_install_type: "{{ kolla_install_type }}"
skydive_analyzer_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ skydive_install_type }}-skydive-analyzer"
skydive_analyzer_tag: "{{ openstack_release }}"
skydive_analyzer_tag: "{{ openstack_tag }}"
skydive_analyzer_image_full: "{{ skydive_analyzer_image }}:{{ skydive_analyzer_tag }}"
skydive_agent_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ skydive_install_type }}-skydive-agent"
skydive_agent_tag: "{{ openstack_release }}"
skydive_agent_tag: "{{ openstack_tag }}"
skydive_agent_image_full: "{{ skydive_agent_image }}:{{ skydive_agent_tag }}"
skydive_analyzer_dimensions: "{{ default_container_dimensions }}"
skydive_agent_dimensions: "{{ default_container_dimensions }}"

View File

@ -68,7 +68,7 @@ solum_database_address: "{{ database_address | put_address_in_context('url') }}:
# Docker
####################
solum_install_type: "{{ kolla_install_type }}"
solum_tag: "{{ openstack_release }}"
solum_tag: "{{ openstack_tag }}"
solum_worker_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ solum_install_type }}-solum-worker"
solum_worker_tag: "{{ solum_tag }}"

View File

@ -34,7 +34,7 @@ storm_nimbus_servers: "{% for host in groups['storm-nimbus'] %}'{{ 'api' | kolla
####################
storm_install_type: "{{ kolla_install_type }}"
storm_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ storm_install_type }}-storm"
storm_tag: "{{ openstack_release }}"
storm_tag: "{{ openstack_tag }}"
storm_image_full: "{{ storm_image }}:{{ storm_tag }}"
storm_worker_dimensions: "{{ default_container_dimensions }}"

View File

@ -21,7 +21,7 @@ swift_services:
# Docker
####################
swift_install_type: "{{ kolla_install_type }}"
swift_tag: "{{ openstack_release }}"
swift_tag: "{{ openstack_tag }}"
swift_proxy_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ swift_install_type }}-swift-proxy-server"
swift_proxy_server_tag: "{{ swift_tag }}"

View File

@ -43,7 +43,7 @@ tacker_database_address: "{{ database_address | put_address_in_context('url') }}
# Docker
########
tacker_install_type: "{{ kolla_install_type }}"
tacker_tag: "{{ openstack_release }}"
tacker_tag: "{{ openstack_tag }}"
tacker_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ tacker_install_type }}-tacker-server"
tacker_server_tag: "{{ tacker_tag }}"

View File

@ -16,7 +16,7 @@ telegraf_services:
####################
telegraf_install_type: "{{ kolla_install_type }}"
telegraf_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ telegraf_install_type }}-telegraf"
telegraf_tag: "{{ openstack_release }}"
telegraf_tag: "{{ openstack_tag }}"
telegraf_image_full: "{{ telegraf_image }}:{{ telegraf_tag }}"
telegraf_dimensions: "{{ default_container_dimensions }}"

View File

@ -16,7 +16,7 @@ tempest_services:
########
tempest_install_type: "{{ kolla_install_type }}"
tempest_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ tempest_install_type }}-tempest"
tempest_tag: "{{ openstack_release }}"
tempest_tag: "{{ openstack_tag }}"
tempest_image_full: "{{ tempest_image }}:{{ tempest_tag }}"
tempest_dimensions: "{{ default_container_dimensions }}"

View File

@ -48,7 +48,7 @@ trove_database_address: "{{ database_address | put_address_in_context('url') }}:
# Docker
####################
trove_install_type: "{{ kolla_install_type }}"
trove_tag: "{{ openstack_release }}"
trove_tag: "{{ openstack_tag }}"
trove_conductor_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ trove_install_type }}-trove-conductor"
trove_conductor_tag: "{{ trove_tag }}"

View File

@ -54,7 +54,7 @@ vitrage_database_address: "{{ database_address | put_address_in_context('url') }
####################
vitrage_install_type: "{{ kolla_install_type }}"
vitrage_tag: "{{ openstack_release }}"
vitrage_tag: "{{ openstack_tag }}"
vitrage_graph_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ vitrage_install_type }}-vitrage-graph"
vitrage_graph_tag: "{{ vitrage_tag }}"

View File

@ -15,7 +15,7 @@ vmtp_services:
####################
vmtp_install_type: "{{ kolla_install_type }}"
vmtp_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ vmtp_install_type }}-vmtp"
vmtp_tag: "{{ openstack_release }}"
vmtp_tag: "{{ openstack_tag }}"
vmtp_image_full: "{{ vmtp_image }}:{{ vmtp_tag }}"
vmtp_dimensions: "{{ default_container_dimensions }}"

View File

@ -48,7 +48,7 @@ watcher_database_address: "{{ database_address | put_address_in_context('url') }
# Docker
####################
watcher_install_type: "{{ kolla_install_type }}"
watcher_tag: "{{ openstack_release }}"
watcher_tag: "{{ openstack_tag }}"
watcher_engine_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ watcher_install_type }}-watcher-engine"
watcher_engine_tag: "{{ watcher_tag }}"

View File

@ -23,7 +23,7 @@ zookeeper_log_settings: 'INFO,ROLLINGFILE'
####################
zookeeper_install_type: "{{ kolla_install_type }}"
zookeeper_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ zookeeper_install_type }}-zookeeper"
zookeeper_tag: "{{ openstack_release }}"
zookeeper_tag: "{{ openstack_tag }}"
zookeeper_image_full: "{{ zookeeper_image }}:{{ zookeeper_tag }}"
zookeeper_dimensions: "{{ default_container_dimensions }}"

View File

@ -59,7 +59,7 @@ zun_database_address: "{{ database_address | put_address_in_context('url') }}:{{
## Docker
####################
zun_install_type: "{{ kolla_install_type }}"
zun_tag: "{{ openstack_release }}"
zun_tag: "{{ openstack_tag }}"
zun_api_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ zun_install_type }}-zun-api"
zun_api_tag: "{{ zun_tag }}"

View File

@ -20,6 +20,12 @@
# Valid option is Docker repository tag
#openstack_release: ""
# Docker image tag used by default.
#openstack_tag: "{{ openstack_release ~ openstack_tag_suffix }}"
# Suffix applied to openstack_release to generate openstack_tag.
#openstack_tag_suffix: "{{ '' if base_distro != 'centos' or ansible_distribution_major_version == '7' else '-centos8' }}"
# Location of configuration overrides
#node_custom_config: "/etc/kolla/config"

View File

@ -0,0 +1,8 @@
---
features:
- |
Adds a new variable, ``openstack_tag``, which is used as the default Docker
image tag in place of ``openstack_release``. The default value is
``openstack_release``, with a suffix set via ``openstack_tag_suffix``.
The suffix is empty except on CentOS 8 where it is set to ``-centos8``.
This allows for the availability of images based on CentOS 7 and 8.

View File

@ -37,7 +37,7 @@ docker_namespace: "lokolla"
# docker does not support referencing registry via an IPv6 address
# see: https://github.com/moby/moby/issues/39033
docker_registry: "primary:4000"
openstack_release: "{{ build_image_tag }}"
openstack_tag: "{{ build_image_tag }}"
{% else %}
# use docker hub images
docker_namespace: "kolla"
@ -48,9 +48,7 @@ docker_namespace: "kolla"
# of docker systemd command only once
docker_custom_option: "--insecure-registry primary:4000"
{% endif %}
{% if not is_previous_release %}
openstack_release: "{{ zuul.branch | basename }}"
{% else %}
{% if is_previous_release %}
openstack_release: "{{ previous_release }}"
{% endif %}
{% endif %}