Merge "Automatically backup and restore Swift rings from the undercloud"
[apex-tripleo-heat-templates.git] / overcloud-resource-registry-puppet.j2.yaml
1 resource_registry:
2
3   OS::TripleO::SoftwareDeployment: OS::Heat::StructuredDeployment
4   OS::TripleO::PostDeploySteps: puppet/post.yaml
5   OS::TripleO::PostUpgradeSteps: puppet/post.yaml
6   OS::TripleO::AllNodes::SoftwareConfig: puppet/all-nodes-config.yaml
7   OS::TripleO::Hosts::SoftwareConfig: hosts-config.yaml
8   OS::TripleO::DefaultPasswords: default_passwords.yaml
9
10   # Tasks (for internal TripleO usage)
11   OS::TripleO::Tasks::UpdateWorkflow: OS::Heat::None
12   OS::TripleO::Tasks::PackageUpdate: extraconfig/tasks/yum_update.yaml
13
14   OS::TripleO::Tasks::SwiftRingDeploy: extraconfig/tasks/swift-ring-deploy.yaml
15   OS::TripleO::Tasks::SwiftRingUpdate: extraconfig/tasks/swift-ring-update.yaml
16
17 {% for role in roles %}
18   OS::TripleO::{{role.name}}::PreNetworkConfig: OS::Heat::None
19   OS::TripleO::{{role.name}}PostDeploySteps: puppet/post.yaml
20   OS::TripleO::{{role.name}}: puppet/{{role.name.lower()}}-role.yaml
21   OS::TripleO::{{role.name}}Config: puppet/{{role.name.lower()}}-config.yaml
22   OS::TripleO::Tasks::{{role.name}}PreConfig: OS::Heat::None
23   OS::TripleO::Tasks::{{role.name}}PostConfig: OS::Heat::None
24   OS::TripleO::{{role.name}}ExtraConfigPre: puppet/extraconfig/pre_deploy/default.yaml
25   # Port assignments for the {{role.name}} role
26   # Note we have to special-case ObjectStorage for backwards compatibility
27   {% if role.name != 'ObjectStorage' %}
28   OS::TripleO::{{role.name}}::Ports::ExternalPort: network/ports/noop.yaml
29   OS::TripleO::{{role.name}}::Ports::InternalApiPort: network/ports/noop.yaml
30   OS::TripleO::{{role.name}}::Ports::StoragePort: network/ports/noop.yaml
31   OS::TripleO::{{role.name}}::Ports::StorageMgmtPort: network/ports/noop.yaml
32   OS::TripleO::{{role.name}}::Ports::TenantPort: network/ports/noop.yaml
33   OS::TripleO::{{role.name}}::Ports::ManagementPort: network/ports/noop.yaml
34   {% else %}
35   OS::TripleO::SwiftStorage::Ports::ExternalPort: network/ports/noop.yaml
36   OS::TripleO::SwiftStorage::Ports::InternalApiPort: network/ports/noop.yaml
37   OS::TripleO::SwiftStorage::Ports::StoragePort: network/ports/noop.yaml
38   OS::TripleO::SwiftStorage::Ports::StorageMgmtPort: network/ports/noop.yaml
39   OS::TripleO::SwiftStorage::Ports::TenantPort: network/ports/noop.yaml
40   OS::TripleO::SwiftStorage::Ports::ManagementPort: network/ports/noop.yaml
41   {% endif %}
42   OS::TripleO::{{role.name}}::Net::SoftwareConfig: net-config-noop.yaml
43 {% endfor %}
44
45   # This resource registry entry will override the one generated by default
46   # in the jinja loop
47   OS::TripleO::Controller::Net::SoftwareConfig: net-config-bridge.yaml
48
49   OS::TripleO::ServiceServerMetadataHook: OS::Heat::None
50
51   OS::TripleO::Server: OS::Nova::Server
52
53   # This creates the "heat-admin" user for all OS images by default
54   # To disable, replace with firstboot/userdata_default.yaml
55   OS::TripleO::NodeAdminUserData: firstboot/userdata_heat_admin.yaml
56
57   # Hooks for operator extra config
58   # NodeUserData == Cloud-init additional user-data, e.g cloud-config
59   # role::NodeUserData == Role specific cloud-init additional user-data
60   # ControllerExtraConfigPre == Controller configuration pre service deployment
61   # NodeExtraConfig == All nodes configuration pre service deployment
62   # NodeExtraConfigPost == All nodes configuration post service deployment
63   OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
64 {% for role in roles %}
65   OS::TripleO::{{role.name}}::NodeUserData: firstboot/userdata_default.yaml
66 {% endfor %}
67   OS::TripleO::NodeTLSCAData: OS::Heat::None
68   OS::TripleO::NodeTLSData: OS::Heat::None
69   OS::TripleO::NodeExtraConfig: puppet/extraconfig/pre_deploy/default.yaml
70   OS::TripleO::NodeExtraConfigPost: extraconfig/post_deploy/default.yaml
71
72   OS::TripleO::Tasks::ControllerPrePuppet: OS::Heat::None
73   OS::TripleO::Tasks::ControllerPostPuppet: OS::Heat::None
74
75   # "AllNodes" Extra cluster config, runs on all nodes prior to the post_deploy
76   # phase, e.g when puppet is applied, but after the pre_deploy phase.  Useful when
77   # configuration with knowledge of all nodes in the cluster is required vs single
78   # node configuration in the pre_deploy step.
79   # See extraconfig/all_nodes/* for examples
80   OS::TripleO::AllNodesExtraConfig: OS::Heat::None
81
82   # TripleO overcloud networks
83   OS::TripleO::Network: network/networks.yaml
84
85   OS::TripleO::Network::External: OS::Heat::None
86   OS::TripleO::Network::InternalApi: OS::Heat::None
87   OS::TripleO::Network::StorageMgmt: OS::Heat::None
88   OS::TripleO::Network::Storage: OS::Heat::None
89   OS::TripleO::Network::Tenant: OS::Heat::None
90   OS::TripleO::Network::Management: OS::Heat::None
91
92   OS::TripleO::Network::ExtraConfig: OS::Heat::None
93
94   OS::TripleO::Network::Ports::NetVipMap: network/ports/net_ip_map.yaml
95   OS::TripleO::Network::Ports::NetIpMap: network/ports/net_ip_map.yaml
96   OS::TripleO::Network::Ports::NetIpListMap: network/ports/net_ip_list_map.yaml
97
98   # Port assignments for the VIPs
99   OS::TripleO::Network::Ports::ExternalVipPort: network/ports/noop.yaml
100   OS::TripleO::Network::Ports::InternalApiVipPort: network/ports/noop.yaml
101   OS::TripleO::Network::Ports::StorageVipPort: network/ports/noop.yaml
102   OS::TripleO::Network::Ports::StorageMgmtVipPort: network/ports/noop.yaml
103   OS::TripleO::Network::Ports::RedisVipPort: network/ports/ctlplane_vip.yaml
104   OS::TripleO::Network::Ports::ControlPlaneVipPort: OS::Neutron::Port
105
106   # Service to network Mappings
107   OS::TripleO::ServiceNetMap: network/service_net_map.yaml
108
109   # Service Endpoint Mappings
110   OS::TripleO::EndpointMap: network/endpoints/endpoint_map.yaml
111
112   # validation resources
113   OS::TripleO::AllNodes::Validation: all-nodes-validation.yaml
114
115   # Upgrade resources
116   OS::TripleO::UpgradeConfig: puppet/upgrade_config.yaml
117
118   # services
119   OS::TripleO::Services: puppet/services/services.yaml
120   OS::TripleO::Services::Apache: puppet/services/apache.yaml
121   OS::TripleO::Services::ApacheTLS: OS::Heat::None
122   OS::TripleO::Services::CACerts: puppet/services/ca-certs.yaml
123   OS::TripleO::Services::CephMds: OS::Heat::None
124   OS::TripleO::Services::CephMon: OS::Heat::None
125   OS::TripleO::Services::CephRbdMirror: OS::Heat::None
126   OS::TripleO::Services::CephRgw: OS::Heat::None
127   OS::TripleO::Services::CephOSD: OS::Heat::None
128   OS::TripleO::Services::CephClient: OS::Heat::None
129   OS::TripleO::Services::CephExternal: OS::Heat::None
130   OS::TripleO::Services::CinderApi: puppet/services/cinder-api.yaml
131   OS::TripleO::Services::CinderBackup: OS::Heat::None
132   OS::TripleO::Services::CinderScheduler: puppet/services/cinder-scheduler.yaml
133   OS::TripleO::Services::CinderVolume: puppet/services/cinder-volume.yaml
134   OS::TripleO::Services::BlockStorageCinderVolume: puppet/services/cinder-volume.yaml
135   OS::TripleO::Services::Congress: OS::Heat::None
136   OS::TripleO::Services::Keystone: puppet/services/keystone.yaml
137   OS::TripleO::Services::GlanceApi: puppet/services/glance-api.yaml
138   OS::TripleO::Services::GlanceRegistry: puppet/services/disabled/glance-registry.yaml
139   OS::TripleO::Services::HeatApi: puppet/services/heat-api.yaml
140   OS::TripleO::Services::HeatApiCfn: puppet/services/heat-api-cfn.yaml
141   OS::TripleO::Services::HeatApiCloudwatch: puppet/services/heat-api-cloudwatch.yaml
142   OS::TripleO::Services::HeatEngine: puppet/services/heat-engine.yaml
143   OS::TripleO::Services::Kernel: puppet/services/kernel.yaml
144   OS::TripleO::Services::MySQL: puppet/services/database/mysql.yaml
145   OS::TripleO::Services::MySQLTLS: OS::Heat::None
146   OS::TripleO::Services::NeutronDhcpAgent: puppet/services/neutron-dhcp.yaml
147   OS::TripleO::Services::NeutronL3Agent: puppet/services/neutron-l3.yaml
148   OS::TripleO::Services::NeutronMetadataAgent: puppet/services/neutron-metadata.yaml
149   # FIXME(shardy) the duplicate NeutronServer line can be removed when we've updated
150   # the multinode job ControllerServices after this patch merges
151   OS::TripleO::Services::NeutronServer: puppet/services/neutron-api.yaml
152   OS::TripleO::Services::NeutronApi: puppet/services/neutron-api.yaml
153   OS::TripleO::Services::NeutronCorePlugin: puppet/services/neutron-plugin-ml2.yaml
154   # can be the same as NeutronCorePlugin but some vendors install different
155   # things where VMs run
156   OS::TripleO::Services::ComputeNeutronCorePlugin: puppet/services/neutron-plugin-ml2.yaml
157   # Neutron Core Plugin Vendors (these typically override NeutronCorePlugin)
158   OS::TripleO::Services::NeutronCorePluginML2OVN: puppet/services/neutron-plugin-ml2-ovn.yaml
159   OS::TripleO::Services::NeutronCorePluginPlumgrid: puppet/services/neutron-plugin-plumgrid.yaml
160   OS::TripleO::Services::NeutronCorePluginNuage: puppet/services/neutron-plugin-nuage.yaml
161   OS::TripleO::Services::OVNDBs: OS::Heat::None
162
163   OS::TripleO::Services::NeutronCorePluginMidonet: puppet/services/neutron-midonet.yaml
164   OS::TripleO::Services::NeutronOvsAgent: puppet/services/neutron-ovs-agent.yaml
165   OS::TripleO::Services::ComputeNeutronOvsAgent: puppet/services/neutron-ovs-agent.yaml
166   OS::TripleO::Services::Pacemaker: OS::Heat::None
167   OS::TripleO::Services::PacemakerRemote: OS::Heat::None
168   OS::TripleO::Services::NeutronSriovAgent: OS::Heat::None
169   OS::TripleO::Services::RabbitMQ: puppet/services/rabbitmq.yaml
170   OS::TripleO::Services::HAproxy: puppet/services/haproxy.yaml
171   OS::TripleO::Services::HAProxyPublicTLS: OS::Heat::None
172   OS::TripleO::Services::HAProxyInternalTLS: OS::Heat::None
173   OS::TripleO::Services::Keepalived: puppet/services/keepalived.yaml
174   OS::TripleO::Services::Memcached: puppet/services/memcached.yaml
175   OS::TripleO::Services::SaharaApi: OS::Heat::None
176   OS::TripleO::Services::SaharaEngine: OS::Heat::None
177   OS::TripleO::Services::Sshd: OS::Heat::None
178   OS::TripleO::Services::Redis: puppet/services/database/redis.yaml
179   OS::TripleO::Services::NovaConductor: puppet/services/nova-conductor.yaml
180   OS::TripleO::Services::MongoDb: puppet/services/database/mongodb.yaml
181   OS::TripleO::Services::NovaApi: puppet/services/nova-api.yaml
182   OS::TripleO::Services::NovaPlacement: puppet/services/nova-placement.yaml
183   OS::TripleO::Services::NovaMetadata: puppet/services/nova-metadata.yaml
184   OS::TripleO::Services::NovaScheduler: puppet/services/nova-scheduler.yaml
185   OS::TripleO::Services::NovaConsoleauth: puppet/services/nova-consoleauth.yaml
186   OS::TripleO::Services::NovaVncProxy: puppet/services/nova-vnc-proxy.yaml
187   OS::TripleO::Services::NovaCompute: puppet/services/nova-compute.yaml
188   OS::TripleO::Services::NovaLibvirt: puppet/services/nova-libvirt.yaml
189   OS::TripleO::Services::Ntp: puppet/services/time/ntp.yaml
190   OS::TripleO::Services::SwiftProxy: puppet/services/swift-proxy.yaml
191   OS::TripleO::Services::SwiftStorage: puppet/services/swift-storage.yaml
192   OS::TripleO::Services::SwiftRingBuilder: puppet/services/swift-ringbuilder.yaml
193   OS::TripleO::Services::Snmp: puppet/services/snmp.yaml
194   OS::TripleO::Services::Tacker: OS::Heat::None
195   OS::TripleO::Services::Timezone: puppet/services/time/timezone.yaml
196   OS::TripleO::Services::CeilometerApi: puppet/services/ceilometer-api.yaml
197   OS::TripleO::Services::CeilometerCollector: puppet/services/ceilometer-collector.yaml
198   OS::TripleO::Services::CeilometerExpirer: puppet/services/ceilometer-expirer.yaml
199   OS::TripleO::Services::CeilometerAgentCentral: puppet/services/ceilometer-agent-central.yaml
200   OS::TripleO::Services::CeilometerAgentNotification: puppet/services/ceilometer-agent-notification.yaml
201   OS::TripleO::Services::ComputeCeilometerAgent: puppet/services/ceilometer-agent-compute.yaml
202   OS::TripleO::Services::Horizon: puppet/services/horizon.yaml
203   #Gnocchi services
204   OS::TripleO::Services::GnocchiApi: puppet/services/gnocchi-api.yaml
205   OS::TripleO::Services::GnocchiMetricd: puppet/services/gnocchi-metricd.yaml
206   OS::TripleO::Services::GnocchiStatsd: puppet/services/gnocchi-statsd.yaml
207   # Services that are disabled by default (use relevant environment files):
208   OS::TripleO::Services::FluentdClient: OS::Heat::None
209   OS::TripleO::Services::Collectd: OS::Heat::None
210   OS::TripleO::LoggingConfiguration: puppet/services/logging/fluentd-config.yaml
211   OS::TripleO::Services::ManilaApi: OS::Heat::None
212   OS::TripleO::Services::ManilaScheduler: OS::Heat::None
213   OS::TripleO::Services::ManilaShare: OS::Heat::None
214   OS::TripleO::Services::ManilaBackendGeneric: OS::Heat::None
215   OS::TripleO::Services::ManilaBackendNetapp: OS::Heat::None
216   OS::TripleO::Services::ManilaBackendCephFs: OS::Heat::None
217   OS::TripleO::Services::ComputeNeutronL3Agent: OS::Heat::None
218   OS::TripleO::Services::ComputeNeutronMetadataAgent: OS::Heat::None
219   OS::TripleO::Services::BarbicanApi: OS::Heat::None
220   OS::TripleO::Services::AodhApi: puppet/services/aodh-api.yaml
221   OS::TripleO::Services::AodhEvaluator: puppet/services/aodh-evaluator.yaml
222   OS::TripleO::Services::AodhNotifier: puppet/services/aodh-notifier.yaml
223   OS::TripleO::Services::AodhListener: puppet/services/aodh-listener.yaml
224   OS::TripleO::Services::PankoApi: OS::Heat::None
225   OS::TripleO::Services::MistralEngine: OS::Heat::None
226   OS::TripleO::Services::MistralApi: OS::Heat::None
227   OS::TripleO::Services::MistralExecutor: OS::Heat::None
228   OS::TripleO::Services::IronicApi: OS::Heat::None
229   OS::TripleO::Services::IronicConductor: OS::Heat::None
230   OS::TripleO::Services::NovaIronic: OS::Heat::None
231   OS::TripleO::Services::TripleoPackages: puppet/services/tripleo-packages.yaml
232   OS::TripleO::Services::TripleoFirewall: puppet/services/tripleo-firewall.yaml
233   OS::TripleO::Services::OpenDaylightApi: OS::Heat::None
234   OS::TripleO::Services::OpenDaylightOvs: OS::Heat::None
235   OS::TripleO::Services::SensuClient: OS::Heat::None
236   OS::TripleO::Services::TLSProxyBase: OS::Heat::None
237   OS::TripleO::Services::Zaqar: OS::Heat::None
238   OS::TripleO::Services::NeutronML2FujitsuCfab: OS::Heat::None
239   OS::TripleO::Services::NeutronML2FujitsuFossw: OS::Heat::None
240   OS::TripleO::Services::CinderHPELeftHandISCSI: OS::Heat::None
241   OS::TripleO::Services::Etcd: OS::Heat::None
242   OS::TripleO::Services::Ec2Api: OS::Heat::None
243   OS::TripleO::Services::AuditD: OS::Heat::None
244   OS::TripleO::Services::OctaviaApi: OS::Heat::None
245   OS::TripleO::Services::OctaviaHealthManager: OS::Heat::None
246   OS::TripleO::Services::OctaviaHousekeeping: OS::Heat::None
247   OS::TripleO::Services::OctaviaWorker: OS::Heat::None
248
249 parameter_defaults:
250   EnablePackageInstall: false
251   SoftwareConfigTransport: POLL_TEMP_URL
252
253 {% for role in roles %}
254   # Parameters generated for {{role.name}} Role
255   {{role.name}}Services: {{role.ServicesDefault|default([])}}
256 {% endfor %}