Merge "upgrades/validation: only run validation when services exist"
authorJenkins <jenkins@review.openstack.org>
Thu, 2 Mar 2017 09:49:37 +0000 (09:49 +0000)
committerGerrit Code Review <review@openstack.org>
Thu, 2 Mar 2017 09:49:37 +0000 (09:49 +0000)
docker/services/neutron-l3.yaml [new file with mode: 0644]
docker/services/nova-api.yaml
environments/docker.yaml

diff --git a/docker/services/neutron-l3.yaml b/docker/services/neutron-l3.yaml
new file mode 100644 (file)
index 0000000..c74ab4f
--- /dev/null
@@ -0,0 +1,88 @@
+heat_template_version: ocata
+
+description: >
+  OpenStack containerized Neutron L3 agent
+
+parameters:
+  DockerNamespace:
+    description: namespace
+    default: 'tripleoupstream'
+    type: string
+  DockerNeutronL3AgentImage:
+    description: image
+    default: 'centos-binary-neutron-l3-agent:latest'
+    type: string
+  # we configure all neutron services in the same neutron
+  DockerNeutronConfigImage:
+    description: image
+    default: 'centos-binary-neutron-openvswitch-agent:latest'
+    type: string
+  ServiceNetMap:
+    default: {}
+    description: Mapping of service_name -> network name. Typically set
+                 via parameter_defaults in the resource registry.  This
+                 mapping overrides those in ServiceNetMapDefaults.
+    type: json
+  DefaultPasswords:
+    default: {}
+    type: json
+  EndpointMap:
+    default: {}
+    description: Mapping of service endpoint -> protocol. Typically set
+                 via parameter_defaults in the resource registry.
+    type: json
+
+resources:
+
+  NeutronL3Base:
+    type: ../../puppet/services/neutron-l3.yaml
+    properties:
+      EndpointMap: {get_param: EndpointMap}
+      ServiceNetMap: {get_param: ServiceNetMap}
+      DefaultPasswords: {get_param: DefaultPasswords}
+
+outputs:
+  role_data:
+    description: Role data for Neutron L3 agent
+    value:
+      service_name: {get_attr: [NeutronL3Base, role_data, service_name]}
+      config_settings: {get_attr: [NeutronL3Base, role_data, config_settings]}
+      step_config: {get_attr: [NeutronL3Base, role_data, step_config]}
+      docker_image: &neutron_l3_agent_image
+        list_join:
+        - '/'
+        - [ {get_param: DockerNamespace}, {get_param: DockerNeutronL3AgentImage} ]
+      puppet_tags: neutron_config,neutron_l3_agent_config
+      config_volume: neutron
+      config_image:
+        list_join:
+          - '/'
+          - [ {get_param: DockerNamespace}, {get_param: DockerNeutronConfigImage} ]
+      kolla_config:
+        /var/lib/kolla/config_files/neutron-l3-agent.json:
+           command: /usr/bin/neutron-l3-agent --config-file /usr/share/neutron/neutron-dist.conf --config-dir /usr/share/neutron/l3_agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/l3_agent.ini
+           config_files:
+           - dest: /etc/neutron/neutron.conf
+             owner: neutron
+             perm: '0600'
+             source: /var/lib/kolla/config_files/src/etc/neutron/neutron.conf
+           - dest: /etc/neutron/l3_agent.ini
+             owner: root
+             perm: '0644'
+             source: /var/lib/kolla/config_files/src/etc/neutron/l3_agent.ini
+      docker_config:
+        step_4:
+          neutronl3agent:
+            image: *neutron_l3_agent_image
+            net: host
+            pid: host
+            privileged: true
+            restart: always
+            volumes:
+              - /var/lib/kolla/config_files/neutron-l3-agent.json:/var/lib/kolla/config_files/config.json:ro
+              - /var/lib/config-data/neutron:/var/lib/kolla/config_files/src:ro
+              - /etc/localtime:/etc/localtime:ro
+              - /lib/modules:/lib/modules:ro
+              - /run:/run
+            environment:
+              - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
index 26ae514..0cf1b85 100644 (file)
@@ -132,3 +132,13 @@ outputs:
               - /etc/localtime:/etc/localtime:ro
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
+          nova_api_discover_hosts:
+            start_order: 3
+            image: *nova_api_image
+            net: host
+            detach: false
+            volumes: *nova_api_volumes
+            command:
+              - '/usr/bin/nova-manage'
+              - 'cell_v2'
+              - 'discover_hosts'
index 88ea952..cb13c5c 100644 (file)
@@ -24,6 +24,7 @@ resource_registry:
   OS::TripleO::Services::NeutronCorePlugin: ../docker/services/neutron-plugin-ml2.yaml
   OS::TripleO::Services::NeutronOvsAgent: ../docker/services/neutron-ovs-agent.yaml
   OS::TripleO::Services::NeutronDhcpAgent: ../docker/services/neutron-dhcp.yaml
+  OS::TripleO::Services::NeutronL3Agent: ../docker/services/neutron-l3.yaml
   OS::TripleO::Services::MySQL: ../docker/services/database/mysql.yaml
   OS::TripleO::Services::MistralApi: ../docker/services/mistral-api.yaml
   OS::TripleO::Services::MistralEngine: ../docker/services/mistral-engine.yaml