container_images_template:

- imagename: "{{namespace}}/{{name_prefix}}aodh-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerAodhApiImage
  - DockerAodhConfigImage
  services:
  - OS::TripleO::Services::AodhApi
  - OS::TripleO::Services::AodhEvaluator
  - OS::TripleO::Services::AodhListener
  - OS::TripleO::Services::AodhNotifier
  - OS::TripleO::Services::UndercloudAodhApi
  - OS::TripleO::Services::UndercloudAodhEvaluator
  - OS::TripleO::Services::UndercloudAodhListener
  - OS::TripleO::Services::UndercloudAodhNotifier

- imagename: "{{namespace}}/{{name_prefix}}aodh-evaluator{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerAodhEvaluatorImage
  services:
  - OS::TripleO::Services::AodhEvaluator
  - OS::TripleO::Services::UndercloudAodhEvaluator

- imagename: "{{namespace}}/{{name_prefix}}aodh-listener{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerAodhListenerImage
  services:
  - OS::TripleO::Services::AodhListener
  - OS::TripleO::Services::UndercloudAodhListener

- imagename: "{{namespace}}/{{name_prefix}}aodh-notifier{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerAodhNotifierImage
  services:
  - OS::TripleO::Services::AodhNotifier
  - OS::TripleO::Services::UndercloudAodhNotifier

- imagename: "{{namespace}}/{{name_prefix}}barbican-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerBarbicanApiImage
  - DockerBarbicanConfigImage
  services:
  - OS::TripleO::Services::BarbicanApi

- imagename: "{{namespace}}/{{name_prefix}}barbican-keystone-listener{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerBarbicanKeystoneListenerImage
  - DockerBarbicanKeystoneListenerConfigImage
  services:
  - OS::TripleO::Services::BarbicanApi
  - OS::TripleO::Services::BarbicanKeystoneListener

- imagename: "{{namespace}}/{{name_prefix}}barbican-worker{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerBarbicanWorkerImage
  - DockerBarbicanWorkerConfigImage
  services:
  - OS::TripleO::Services::BarbicanApi
  - OS::TripleO::Services::BarbicanWorker

- imagename: "{{namespace}}/{{name_prefix}}ceilometer-central{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCeilometerCentralImage
  - DockerCeilometerConfigImage
  services:
  - OS::TripleO::Services::CeilometerAgentCentral
  - OS::TripleO::Services::CeilometerAgentIpmi
  - OS::TripleO::Services::CeilometerAgentNotification
  - OS::TripleO::Services::ComputeCeilometerAgent
  - OS::TripleO::Services::UndercloudCeilometerAgentCentral
  - OS::TripleO::Services::UndercloudCeilometerAgentIpmi
  - OS::TripleO::Services::UndercloudCeilometerAgentNotification

- imagename: "{{namespace}}/{{name_prefix}}ceilometer-compute{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCeilometerComputeImage
  services:
  - OS::TripleO::Services::ComputeCeilometerAgent

- imagename: "{{namespace}}/{{name_prefix}}ceilometer-notification{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCeilometerNotificationImage
  services:
  - OS::TripleO::Services::CeilometerAgentNotification
  - OS::TripleO::Services::UndercloudCeilometerAgentNotification

- imagename: "{{namespace}}/{{name_prefix}}ceilometer-ipmi{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCeilometerIpmiImage
  services:
  - OS::TripleO::Services::CeilometerAgentIpmi
  - OS::TripleO::Services::UndercloudCeilometerAgentIpmi

- imagename: "{{namespace}}/{{name_prefix}}cinder-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCinderApiImage
  - DockerCinderConfigImage
  services:
  - OS::TripleO::Services::BlockStorageCinderVolume
  - OS::TripleO::Services::CinderApi
  - OS::TripleO::Services::CinderBackup
  - OS::TripleO::Services::CinderScheduler
  - OS::TripleO::Services::CinderVolume
  - OS::TripleO::Services::UndercloudCinderApi
  - OS::TripleO::Services::UndercloudCinderScheduler
  - OS::TripleO::Services::UndercloudCinderVolume

- imagename: "{{namespace}}/{{name_prefix}}cinder-backup{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCinderBackupImage
  services:
  - OS::TripleO::Services::CinderBackup

- imagename: "{{namespace}}/{{name_prefix}}cinder-scheduler{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCinderSchedulerImage
  services:
  - OS::TripleO::Services::CinderScheduler
  - OS::TripleO::Services::UndercloudCinderScheduler

- imagename: "{{namespace}}/{{name_prefix}}cinder-volume{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCinderVolumeImage
  services:
  - OS::TripleO::Services::BlockStorageCinderVolume
  - OS::TripleO::Services::CinderVolume
  - OS::TripleO::Services::UndercloudCinderVolume

- imagename: "{{namespace}}/{{name_prefix}}collectd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCollectdConfigImage
  - DockerCollectdImage
  services:
  - OS::TripleO::Services::Collectd

- imagename: "{{namespace}}/{{name_prefix}}congress-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCongressApiImage
  - DockerCongressConfigImage
  services:
  - OS::TripleO::Services::Congress

- imagename: "{{namespace}}/{{name_prefix}}cron{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerCrondConfigImage
  - DockerCrondImage
  services:
  - OS::TripleO::Services::ContainersLogrotateCrond

- imagename: "{{namespace}}/{{name_prefix}}designate-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerDesignateApiImage
  services:
  - OS::TripleO::Services::DesignateApi
  - OS::TripleO::Services::DesignateCentral
  - OS::TripleO::Services::DesignateMDNS
  - OS::TripleO::Services::DesignateSink
  - OS::TripleO::Services::DesignateProducer
  - OS::TripleO::Services::DesignateWorker

- imagename: "{{namespace}}/{{name_prefix}}designate-backend-bind9{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerDesignateBackendBIND9Image
  services:
  - OS::TripleO::Services::DesignateWorker

- imagename: "{{namespace}}/{{name_prefix}}designate-central{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerDesignateCentralImage
  services:
  - OS::TripleO::Services::DesignateCentral

- imagename: "{{namespace}}/{{name_prefix}}designate-mdns{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerDesignateMDNSImage
  services:
  - OS::TripleO::Services::DesignateMDNS

- imagename: "{{namespace}}/{{name_prefix}}designate-producer{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerDesignateProducerImage
  services:
  - OS::TripleO::Services::DesignateProducer

- imagename: "{{namespace}}/{{name_prefix}}designate-sink{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerDesignateSinkImage
  services:
  - OS::TripleO::Services::DesignateSink

- imagename: "{{namespace}}/{{name_prefix}}designate-worker{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerDesignateConfigImage
  - DockerDesignateWorkerImage
  services:
  - OS::TripleO::Services::DesignateWorker

- imagename: "{{namespace}}/{{name_prefix}}ec2-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerEc2ApiConfigImage
  - DockerEc2ApiImage
  services:
  - OS::TripleO::Services::Ec2Api

- imagename: "{{namespace}}/{{name_prefix}}etcd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerEtcdConfigImage
  - DockerEtcdImage
  services:
  - OS::TripleO::Services::Etcd

- imagename: "{{namespace}}/{{name_prefix}}fluentd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerFluentdConfigImage
  - DockerFluentdClientImage
  - DockerFluentdImage
  services:
  - OS::TripleO::Services::FluentdClient
  - OS::TripleO::Services::Fluentd

- imagename: "{{namespace}}/{{name_prefix}}glance-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerGlanceApiConfigImage
  - DockerGlanceApiImage
  services:
  - OS::TripleO::Services::GlanceApi

- imagename: "{{namespace}}/{{name_prefix}}gnocchi-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerGnocchiApiImage
  - DockerGnocchiConfigImage
  services:
  - OS::TripleO::Services::GnocchiApi
  - OS::TripleO::Services::GnocchiMetricd
  - OS::TripleO::Services::GnocchiStatsd
  - OS::TripleO::Services::UndercloudGnocchiApi
  - OS::TripleO::Services::UndercloudGnocchiMetricd
  - OS::TripleO::Services::UndercloudGnocchiStatsd

- imagename: "{{namespace}}/{{name_prefix}}gnocchi-metricd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerGnocchiMetricdImage
  services:
  - OS::TripleO::Services::GnocchiMetricd
  - OS::TripleO::Services::UndercloudGnocchiMetricd

- imagename: "{{namespace}}/{{name_prefix}}gnocchi-statsd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerGnocchiStatsdImage
  services:
  - OS::TripleO::Services::GnocchiStatsd
  - OS::TripleO::Services::UndercloudGnocchiStatsd

- imagename: "{{namespace}}/{{name_prefix}}haproxy{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerHAProxyConfigImage
  - DockerHAProxyImage
  services:
  - OS::TripleO::Services::HAproxy
  - OS::TripleO::Services::UndercloudHAProxy

- imagename: "{{namespace}}/{{name_prefix}}heat-all{{name_suffix}}:{{tag}}"
  image_source: kolla

- imagename: "{{namespace}}/{{name_prefix}}heat-api-cfn{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerHeatApiCfnConfigImage
  - DockerHeatApiCfnImage
  services:
  - OS::TripleO::Services::HeatApiCfn

- imagename: "{{namespace}}/{{name_prefix}}heat-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerHeatApiConfigImage
  - DockerHeatApiImage
  - DockerHeatConfigImage
  services:
  - OS::TripleO::Services::HeatApi
  - OS::TripleO::Services::HeatEngine

- imagename: "{{namespace}}/{{name_prefix}}heat-engine{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerHeatEngineImage
  services:
  - OS::TripleO::Services::HeatEngine

- imagename: "{{namespace}}/{{name_prefix}}horizon{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerHorizonConfigImage
  - DockerHorizonImage
  services:
  - OS::TripleO::Services::Horizon

- imagename: "{{namespace}}/{{name_prefix}}ironic-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerIronicApiImage
  - DockerIronicApiConfigImage
  services:
  - OS::TripleO::Services::IronicApi

- imagename: "{{namespace}}/{{name_prefix}}ironic-conductor{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerIronicConductorImage
  services:
  - OS::TripleO::Services::IronicConductor

- imagename: "{{namespace}}/{{name_prefix}}ironic-inspector{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerIronicInspectorImage
  - DockerIronicInspectorConfigImage
  services:
  - OS::TripleO::Services::IronicInspector

- imagename: "{{namespace}}/{{name_prefix}}ironic-pxe{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerIronicConfigImage
  - DockerIronicPxeImage
  services:
  - OS::TripleO::Services::IronicConductor
  - OS::TripleO::Services::IronicPxe

- imagename: "{{namespace}}/{{name_prefix}}ironic-neutron-agent{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerIronicNeutronAgentImage
  - DockerNeutronConfigImage
  services:
  - OS::TripleO::Services::IronicNeutronAgent

- imagename: "{{namespace}}/{{name_prefix}}iscsid{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerIscsidConfigImage
  - DockerIscsidImage
  services:
  - OS::TripleO::Services::Iscsid

- imagename: "{{namespace}}/{{name_prefix}}keepalived{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerKeepalivedConfigImage
  - DockerKeepalivedImage
  services:
  - OS::TripleO::Services::Keepalived
  - OS::TripleO::Services::UndercloudKeepalived

- imagename: "{{namespace}}/{{name_prefix}}keystone{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerKeystoneConfigImage
  - DockerKeystoneImage
  services:
  - OS::TripleO::Services::Keystone

- imagename: "{{namespace}}/{{name_prefix}}manila-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerManilaApiImage
  - DockerManilaConfigImage
  services:
  - OS::TripleO::Services::ManilaApi
  - OS::TripleO::Services::ManilaScheduler
  - OS::TripleO::Services::ManilaShare

- imagename: "{{namespace}}/{{name_prefix}}manila-scheduler{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerManilaSchedulerImage
  services:
  - OS::TripleO::Services::ManilaScheduler

- imagename: "{{namespace}}/{{name_prefix}}manila-share{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerManilaShareImage
  services:
  - OS::TripleO::Services::ManilaShare

- imagename: "{{namespace}}/{{name_prefix}}mariadb{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerClustercheckConfigImage
  - DockerClustercheckImage
  - DockerMysqlConfigImage
  - DockerMysqlImage
  - DockerMysqlClientConfigImage
  services:
  - OS::TripleO::Services::MySQL

- imagename: "{{namespace}}/{{name_prefix}}memcached{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerMemcachedConfigImage
  - DockerMemcachedImage
  services:
  - OS::TripleO::Services::Memcached

- imagename: "{{namespace}}/{{name_prefix}}mistral-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerMistralApiImage
  - DockerMistralConfigImage
  services:
  - OS::TripleO::Services::MistralApi
  - OS::TripleO::Services::MistralEngine
  - OS::TripleO::Services::MistralExecutor
  - OS::TripleO::Services::MistralEventEngine

- imagename: "{{namespace}}/{{name_prefix}}mistral-engine{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerMistralEngineImage
  services:
  - OS::TripleO::Services::MistralEngine

- imagename: "{{namespace}}/{{name_prefix}}mistral-executor{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerMistralExecutorImage
  services:
  - OS::TripleO::Services::MistralExecutor

- imagename: "{{namespace}}/{{name_prefix}}mistral-event-engine{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerMistralEventEngineImage
  services:
  - OS::TripleO::Services::MistralEventEngine

- imagename: "{{namespace}}/{{name_prefix}}multipathd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerMultipathdConfigImage
  - DockerMultipathdImage
  services:
  - OS::TripleO::Services::Multipathd

- imagename: "{{namespace}}/{{name_prefix}}neutron-dhcp-agent{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNeutronDHCPImage
  services:
  - OS::TripleO::Services::NeutronDhcpAgent

- imagename: "{{namespace}}/{{name_prefix}}neutron-l3-agent{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNeutronL3AgentImage
  services:
  - OS::TripleO::Services::NeutronL3Agent

- imagename: "{{namespace}}/{{name_prefix}}neutron-metadata-agent{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNeutronMetadataImage
  services:
  - OS::TripleO::Services::NeutronMetadataAgent

- imagename: "{{namespace}}/{{name_prefix}}neutron-openvswitch-agent{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOpenvswitchImage
  services:
  - OS::TripleO::Services::ComputeNeutronOvsAgent
  - OS::TripleO::Services::NeutronOvsAgent

- imagename: "{{namespace}}/{{name_prefix}}neutron-sriov-agent{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNeutronSriovImage
  services:
  - OS::TripleO::Services::NeutronSriovAgent

{% if neutron_driver == "odl" %}
- imagename: "{{namespace}}/{{name_prefix}}neutron-server-opendaylight{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNeutronApiImage
  - DockerNeutronConfigImage
  services:
  - OS::TripleO::Services::NeutronApi
  - OS::TripleO::Services::NeutronDhcpAgent
  - OS::TripleO::Services::NeutronMetadataAgent
  - OS::TripleO::Services::NeutronServer
  - OS::TripleO::Services::OpenDaylightApi

{% elif neutron_driver == "ovn" %}
- imagename: "{{namespace}}/{{name_prefix}}neutron-server-ovn{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNeutronApiImage
  - DockerNeutronConfigImage
  services:
  - OS::TripleO::Services::NeutronApi
  - OS::TripleO::Services::NeutronServer
  - OS::TripleO::Services::OVNController

- imagename: "{{namespace}}/{{name_prefix}}neutron-metadata-agent-ovn{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOvnMetadataImage
  services:
  - OS::TripleO::Services::OVNMetadataAgent

{% else %}
- imagename: "{{namespace}}/{{name_prefix}}neutron-server{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNeutronApiImage
  - DockerNeutronConfigImage
  services:
  - OS::TripleO::Services::ComputeNeutronOvsAgent
  - OS::TripleO::Services::NeutronApi
  - OS::TripleO::Services::NeutronCorePlugin
  - OS::TripleO::Services::NeutronDhcpAgent
  - OS::TripleO::Services::NeutronL3Agent
  - OS::TripleO::Services::NeutronMetadataAgent
  - OS::TripleO::Services::NeutronOvsAgent
  - OS::TripleO::Services::NeutronServer
  - OS::TripleO::Services::NeutronSriovAgent
{% endif %}

- imagename: "{{namespace}}/{{name_prefix}}nova-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaApiImage
  - DockerNovaConfigImage
  - DockerNovaMetadataImage
  - DockerNovaMetadataConfigImage
  services:
  - OS::TripleO::Services::NovaApi
  - OS::TripleO::Services::NovaConductor
  - OS::TripleO::Services::NovaConsoleauth
  - OS::TripleO::Services::NovaIronic
  - OS::TripleO::Services::NovaScheduler
  - OS::TripleO::Services::NovaVncProxy
  - OS::TripleO::Services::NovaMetadata

- imagename: "{{namespace}}/{{name_prefix}}nova-compute-ironic{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaComputeIronicImage
  services:
  - OS::TripleO::Services::NovaIronic

- imagename: "{{namespace}}/{{name_prefix}}nova-compute{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaComputeImage
  - DockerNovaLibvirtConfigImage
  services:
  - OS::TripleO::Services::NovaCompute
  - OS::TripleO::Services::NovaLibvirt
  - OS::TripleO::Services::NovaMigrationTarget

- imagename: "{{namespace}}/{{name_prefix}}nova-conductor{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaConductorImage
  services:
  - OS::TripleO::Services::NovaConductor

- imagename: "{{namespace}}/{{name_prefix}}nova-consoleauth{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaConsoleauthImage
  services:
  - OS::TripleO::Services::NovaConsoleauth

- imagename: "{{namespace}}/{{name_prefix}}nova-libvirt{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaLibvirtImage
  services:
  - OS::TripleO::Services::NovaLibvirt

- imagename: "{{namespace}}/{{name_prefix}}nova-novncproxy{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaVncProxyImage
  services:
  - OS::TripleO::Services::NovaVncProxy

- imagename: "{{namespace}}/{{name_prefix}}nova-placement-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaPlacementConfigImage
  - DockerNovaPlacementImage
  services:
  - OS::TripleO::Services::NovaPlacement

- imagename: "{{namespace}}/{{name_prefix}}nova-scheduler{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaSchedulerImage
  services:
  - OS::TripleO::Services::NovaScheduler

- imagename: "{{namespace}}/{{name_prefix}}nova-serialproxy{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovaSerialproxyConfigImage
  - DockerNovaSerialproxyImage
  services:
  - OS::TripleO::Services::NovaSerialproxy

- imagename: "{{namespace}}/{{name_prefix}}novajoin-notifier{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovajoinNotifierImage
  services:
  - OS::TripleO::Services::Novajoin

- imagename: "{{namespace}}/{{name_prefix}}novajoin-server{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerNovajoinServerImage
  - DockerNovajoinConfigImage
  services:
  - OS::TripleO::Services::Novajoin

- imagename: "{{namespace}}/{{name_prefix}}octavia-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOctaviaApiImage
  - DockerOctaviaConfigImage
  services:
  - OS::TripleO::Services::OctaviaApi
  - OS::TripleO::Services::OctaviaHealthManager
  - OS::TripleO::Services::OctaviaHousekeeping
  - OS::TripleO::Services::OctaviaWorker

- imagename: "{{namespace}}/{{name_prefix}}octavia-health-manager{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOctaviaHealthManagerImage
  services:
  - OS::TripleO::Services::OctaviaHealthManager

- imagename: "{{namespace}}/{{name_prefix}}octavia-housekeeping{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOctaviaHousekeepingImage
  services:
  - OS::TripleO::Services::OctaviaHousekeeping

- imagename: "{{namespace}}/{{name_prefix}}octavia-worker{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOctaviaWorkerImage
  services:
  - OS::TripleO::Services::OctaviaWorker

{% if neutron_driver == "odl" %}
- imagename: "{{namespace}}/{{name_prefix}}opendaylight{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOpendaylightApiImage
  - DockerOpendaylightConfigImage
  services:
  - OS::TripleO::Services::OpenDaylightApi
{% endif %}

{% if neutron_driver == "ovn" %}
- imagename: "{{namespace}}/{{name_prefix}}ovn-controller{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOvnControllerConfigImage
  - DockerOvnControllerImage
  services:
  - OS::TripleO::Services::OVNController

- imagename: "{{namespace}}/{{name_prefix}}ovn-nb-db-server{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOvnNbDbImage
  services:
  - OS::TripleO::Services::OVNDBs

- imagename: "{{namespace}}/{{name_prefix}}ovn-northd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOvnNorthdImage
  - DockerOvnDbsImage
  - DockerOvnDbsConfigImage
  services:
  - OS::TripleO::Services::OVNDBs

- imagename: "{{namespace}}/{{name_prefix}}ovn-sb-db-server{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerOvnSbDbImage
  services:
  - OS::TripleO::Services::OVNDBs
{% endif %}

- imagename: "{{namespace}}/{{name_prefix}}panko-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerPankoApiImage
  - DockerPankoConfigImage
  services:
  - OS::TripleO::Services::PankoApi
  - OS::TripleO::Services::UndercloudPankoApi

- imagename: "{{namespace}}/{{name_prefix}}placement-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerPlacementConfigImage
  - DockerPlacementImage
  services:
  - OS::TripleO::Services::PlacementApi

- imagename: "{{namespace}}/{{name_prefix}}qdrouterd{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerQdrouterdConfigImage
  - DockerQdrouterdImage
  - DockerMetricsQdrConfigImage
  - DockerMetricsQdrImage
  services:
  - OS::TripleO::Services::Qdr
  - OS::TripleO::Services::OsloMessagingRpc
  - OS::TripleO::Services::MetricsQdr

- imagename: "{{namespace}}/{{name_prefix}}rabbitmq{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerRabbitmqConfigImage
  - DockerRabbitmqImage
  services:
  - OS::TripleO::Services::RabbitMQ
  - OS::TripleO::Services::OsloMessagingRpc
  - OS::TripleO::Services::OsloMessagingNotify

- imagename: "{{namespace}}/{{name_prefix}}redis{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerRedisConfigImage
  - DockerRedisImage
  services:
  - OS::TripleO::Services::Redis
  - OS::TripleO::Services::UndercloudRedis

- imagename: "{{namespace}}/{{name_prefix}}sahara-api{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSaharaApiImage
  - DockerSaharaConfigImage
  services:
  - OS::TripleO::Services::SaharaApi
  - OS::TripleO::Services::SaharaEngine

- imagename: "{{namespace}}/{{name_prefix}}sahara-engine{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSaharaEngineImage
  services:
  - OS::TripleO::Services::SaharaEngine

- imagename: "{{namespace}}/{{name_prefix}}sensu-client{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSensuClientImage
  - DockerSensuConfigImage
  services:
  - OS::TripleO::Services::SensuClient

- imagename: "{{namespace}}/{{name_prefix}}skydive-agent{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSkydiveAgentImage
  services:
  - OS::TripleO::Services::SkydiveAgent

- imagename: "{{namespace}}/{{name_prefix}}skydive-analyzer{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSkydiveAnalyzerImage
  services:
  - OS::TripleO::Services::SkydiveAnalyzer

- imagename: "{{namespace}}/{{name_prefix}}swift-account{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSwiftAccountImage
  services:
  - OS::TripleO::Services::SwiftStorage

- imagename: "{{namespace}}/{{name_prefix}}swift-container{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSwiftContainerImage
  services:
  - OS::TripleO::Services::SwiftStorage

- imagename: "{{namespace}}/{{name_prefix}}swift-object{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSwiftObjectImage
  services:
  - OS::TripleO::Services::SwiftStorage

- imagename: "{{namespace}}/{{name_prefix}}swift-proxy-server{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerSwiftConfigImage
  - DockerSwiftProxyImage
  services:
  - OS::TripleO::Services::SwiftProxy
  - OS::TripleO::Services::SwiftRingBuilder
  - OS::TripleO::Services::SwiftStorage

# The kolla tacker image was split into base, conductor and server images in
# kolla review https://review.openstack.org/#/c/477494/
# Uncomment when TripleO has caught up with the change.
# https://bugs.launchpad.net/tripleo/+bug/1714270
# - imagename: "{{namespace}}/{{name_prefix}}tacker{{name_suffix}}:{{tag}}"
#   params:
#   - DockerTackerConfigImage
#   - DockerTackerImage
#   services:
#   - OS::TripleO::Services::Tacker

# NOTE: the TripleoClient service will likely be just a stub to allow
# us to obtain this container via the prepare commands.
- imagename: "{{namespace}}/{{name_prefix}}tripleoclient{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerTripleoclientImage
  services:
  - OS::TripleO::Services::TripleoClient

- imagename: "{{namespace}}/{{name_prefix}}tripleo-ui{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerTripleoUIConfigImage
  - DockerTripleoUIImage
  services:
  - OS::TripleO::Services::TripleoUI

- imagename: "{{namespace}}/{{name_prefix}}zaqar-wsgi{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerZaqarConfigImage
  - DockerZaqarImage
  services:
  - OS::TripleO::Services::Zaqar

- imagename: "{{ceph_namespace}}/{{ceph_image}}:{{ceph_tag}}"
  image_source: ceph
  params:
  - DockerCephDaemonImage
  services:
  - OS::TripleO::Services::CephClient
  - OS::TripleO::Services::CephExternal
  - OS::TripleO::Services::CephMds
  - OS::TripleO::Services::CephMgr
  - OS::TripleO::Services::CephMon
  - OS::TripleO::Services::CephOSD
  - OS::TripleO::Services::CephRgw
  - OS::TripleO::Services::CephRbdMirror

- imagename: "{{namespace}}/{{name_prefix}}tempest{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerTempestImage
  services:
  - OS::TripleO::Services::Tempest

- imagename: "{{namespace}}/{{name_prefix}}rsyslog-base{{name_suffix}}:{{tag}}"
  image_source: kolla
  params:
  - DockerRsyslogSidecarImage
  - DockerRsyslogSidecarConfigImage
  services:
  - OS::TripleO::Services::HAproxy
  - OS::TripleO::Services::SwiftProxy
  - OS::TripleO::Services::SwiftStorage

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-ansible:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftAnsibleImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-console:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftConsoleImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-control-plane:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftControlPlaneImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-deployer:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftDeployerImage
  services:
  - OS::TripleO::Services::OpenShift::Infra
  - OS::TripleO::Services::OpenShift::Master
  - OS::TripleO::Services::OpenShift::Worker

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-docker-builder:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftDockerBuilderImage
  services:
  - OS::TripleO::Services::OpenShift::Worker

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-docker-registry:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftDockerRegistryImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-haproxy-router:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftHAProxyRouterImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-node:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftNodeImage
  services:
  - OS::TripleO::Services::OpenShift::Infra
  - OS::TripleO::Services::OpenShift::Master
  - OS::TripleO::Services::OpenShift::Worker

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-pod:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftPodImage
  services:
  - OS::TripleO::Services::OpenShift::Infra
  - OS::TripleO::Services::OpenShift::Master
  - OS::TripleO::Services::OpenShift::Worker

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-service-catalog:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftServiceCatalogImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-template-service-broker:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftTemplateServiceBrokerImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_asb_namespace}}/{{openshift_prefix}}-ansible-service-broker:{{openshift_asb_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftAnsibleServiceBrokerImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_namespace}}/{{openshift_prefix}}-web-console:{{openshift_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftWebConsoleImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_cockpit_namespace}}/{{openshift_cockpit_image}}:{{openshift_cockpit_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftCockpitImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_etcd_namespace}}/{{openshift_etcd_image}}:{{openshift_etcd_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftEtcdImage
  services:
  - OS::TripleO::Services::OpenShift::Master

- imagename: "{{openshift_gluster_namespace}}/{{openshift_gluster_image}}:{{openshift_gluster_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftGlusterFSImage
  services:
  - OS::TripleO::Services::OpenShift::GlusterFS

- imagename: "{{openshift_gluster_namespace}}/{{openshift_gluster_block_image}}:{{openshift_gluster_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftGlusterFSBlockImage
  services:
  - OS::TripleO::Services::OpenShift::GlusterFS

- imagename: "{{openshift_heketi_namespace}}/{{openshift_heketi_image}}:{{openshift_heketi_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftGlusterFSHeketiImage
  services:
  - OS::TripleO::Services::OpenShift::GlusterFS

- imagename: "{{openshift_cluster_monitoring_namespace}}/{{openshift_cluster_monitoring_image}}:{{openshift_cluster_monitoring_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftClusterMonitorOperatorImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_configmap_reload_namespace}}/{{openshift_configmap_reload_image}}:{{openshift_configmap_reload_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftConfigmapReloaderImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_prometheus_operator_namespace}}/{{openshift_prometheus_operator_image}}:{{openshift_prometheus_operator_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftPrometheusOperatorImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_prometheus_config_reload_namespace}}/{{openshift_prometheus_config_reload_image}}:{{openshift_prometheus_config_reload_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftPrometheusConfigReloaderImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_namespace}}/prometheus:{{openshift_prometheus_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftPrometheusImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_namespace}}/prometheus-alertmanager:{{openshift_prometheus_alertmanager_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftPrometheusAlertmanagerImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_namespace}}/prometheus-node-exporter:{{openshift_prometheus_node_exporter_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftPrometheusNodeExporterImage
  services:
  - OS::TripleO::Services::OpenShift::Master
  - OS::TripleO::Services::OpenShift::Worker
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_namespace}}/oauth-proxy:{{openshift_oauth_proxy_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftOauthProxyImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_kube_rbac_proxy_namespace}}/{{openshift_kube_rbac_proxy_image}}:{{openshift_kube_rbac_proxy_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftKubeRbacProxyImage
  services:
  - OS::TripleO::Services::OpenShift::Master
  - OS::TripleO::Services::OpenShift::Worker

- imagename: "{{openshift_kube_state_metrics_namespace}}/{{openshift_kube_state_metrics_image}}:{{openshift_kube_state_metrics_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftKubeStateMetricsImage
  services:
  - OS::TripleO::Services::OpenShift::Infra

- imagename: "{{openshift_grafana_namespace}}/grafana:{{openshift_grafana_tag}}"
  image_source: openshift
  params:
  - DockerOpenShiftGrafanaImage
  services:
  - OS::TripleO::Services::OpenShift::Infra
