Add dependencies in heat_ims 21/67221/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Sat, 9 Mar 2019 16:46:46 +0000 (17:46 +0100)
committerCédric Ollivier <cedric.ollivier@orange.com>
Sun, 10 Mar 2019 08:04:08 +0000 (09:04 +0100)
It avoids useless loops for cloud init messages.
It now conforms with clearwater-docker (disable ipv6 in cassandra).

Change-Id: I6f469cf48224296b2eaa079d342642c5caca65f5
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
(cherry picked from commit 464829a80878ede363537ec4020be30c21a5b859)

docker/vnf/clearwater-heat-singlenet-deps.patch
functest/opnfv_tests/vnf/ims/heat_ims.py

index 53f27fe..1b1f1df 100644 (file)
@@ -1,5 +1,5 @@
 diff --git a/bono.yaml b/bono.yaml
-index f0189cd..e291ee4 100644
+index f0189cd..9418be1 100644
 --- a/bono.yaml
 +++ b/bono.yaml
 @@ -23,26 +23,6 @@ parameters:
@@ -49,28 +49,34 @@ index f0189cd..e291ee4 100644
    dnssec_key:
      type: string
      description: DNSSEC private key (Base64-encoded)
-@@ -111,20 +85,6 @@ resources:
+@@ -111,19 +85,15 @@ resources:
        floating_network_id: { get_param: public_mgmt_net_id }
        port_id: { get_resource: mgmt_port }
  
 -  sig_port:
 -    type: OS::Neutron::Port
--    properties:
++  wait_condition:
++    type: OS::Heat::WaitCondition
+     properties:
 -      # Specify the network ID by string to work around OpenStack issues - see https://github.com/Metaswitch/clearwater-heat/issues/18.
 -      network_id: { str_replace: { params: { x: { get_param: private_sig_net_id } }, template: x } }
 -      security_groups:
 -        - { get_param: bono_sig_security_group }
--
++      handle: {get_resource: wait_handle}
++      count: 1
++      timeout: 1200
 -  sig_floating_ip:
 -    type: OS::Neutron::FloatingIP
 -    properties:
 -      floating_network_id: { get_param: public_sig_net_id }
 -      port_id: { get_resource: sig_port }
--
++  wait_handle:
++    type: OS::Heat::WaitConditionHandle
    server:
      type: OS::Nova::Server
-     properties:
-@@ -134,7 +94,6 @@ resources:
+@@ -134,7 +104,6 @@ resources:
        key_name: { get_param: key_name }
        networks:
          - port: { get_resource: mgmt_port }
@@ -78,7 +84,7 @@ index f0189cd..e291ee4 100644
        user_data_format: RAW
        user_data:
          str_replace:
-@@ -143,12 +102,7 @@ resources:
+@@ -143,15 +112,11 @@ resources:
              __zone__: { get_param: zone }
              __public_mgmt_ip__: { get_attr: [ mgmt_floating_ip, floating_ip_address ] }
              __private_mgmt_ip__: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
@@ -91,7 +97,11 @@ index f0189cd..e291ee4 100644
              __dnssec_key__: { get_param: dnssec_key }
              __etcd_ip__ : { get_param: etcd_ip }
              __index__ : { get_param: index }
-@@ -159,33 +113,6 @@ resources:
++            wc_notify: { get_attr: [wait_handle, curl_cli] }
+           template: |
+             #!/bin/bash
+@@ -159,33 +124,6 @@ resources:
              exec > >(tee -a /var/log/clearwater-heat-bono.log) 2>&1
              set -x
  
@@ -125,7 +135,7 @@ index f0189cd..e291ee4 100644
              # Configure the APT software source.
              echo 'deb __repo_url__ binary/' > /etc/apt/sources.list.d/clearwater.list
              curl -L http://repo.cw-ngv.com/repo_key | apt-key add -
-@@ -196,11 +123,8 @@ resources:
+@@ -196,11 +134,8 @@ resources:
              etcd_ip=__etcd_ip__
              [ -n "$etcd_ip" ] || etcd_ip=__private_mgmt_ip__
              cat > /etc/clearwater/local_config << EOF
@@ -139,7 +149,7 @@ index f0189cd..e291ee4 100644
              public_hostname=__index__.bono.__zone__
              etcd_cluster=$etcd_ip
              EOF
-@@ -223,8 +147,8 @@ resources:
+@@ -223,8 +158,8 @@ resources:
              while ! { nsupdate -y "__zone__:__dnssec_key__" -v << EOF
              server __dns_mgmt_ip__
              update add bono-__index__.__zone__. 30 $(ip2rr __public_mgmt_ip__)
@@ -150,16 +160,18 @@ index f0189cd..e291ee4 100644
              update add __zone__. 30 NAPTR 0 0 "s" "SIP+D2T" "" _sip._tcp.__zone__.
              update add __zone__. 30 NAPTR 0 0 "s" "SIP+D2U" "" _sip._udp.__zone__.
              update add _sip._tcp.__zone__. 30 SRV 0 0 5060 __index__.bono.__zone__.
-@@ -241,8 +165,6 @@ resources:
+@@ -241,9 +176,8 @@ resources:
              # Use the DNS server.
              echo 'nameserver __dns_mgmt_ip__' > /etc/dnsmasq.resolv.conf
              echo 'RESOLV_CONF=/etc/dnsmasq.resolv.conf' >> /etc/default/dnsmasq
 -            mkdir -p /etc/netns/signaling
 -            echo 'nameserver __dns_sig_ip__' > /etc/netns/signaling/resolv.conf
              service dnsmasq force-reload
++            wc_notify --data-binary '{"status": "SUCCESS"}'
  
  outputs:
-@@ -252,9 +174,3 @@ outputs:
+   public_mgmt_ip:
+@@ -252,9 +186,3 @@ outputs:
    private_mgmt_ip:
      description: IP address in private management network
      value: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
@@ -362,7 +374,7 @@ index a155c60..6838496 100644
            etcd_ip: { get_attr: [ ellis, private_mgmt_ip ] }
            index: __index__
 diff --git a/dime.yaml b/dime.yaml
-index 642f19d..c544ce6 100644
+index 642f19d..4fdbf10 100644
 --- a/dime.yaml
 +++ b/dime.yaml
 @@ -23,26 +23,6 @@ parameters:
@@ -423,22 +435,29 @@ index 642f19d..c544ce6 100644
  
    mgmt_floating_ip:
      type: OS::Neutron::FloatingIP
-@@ -115,14 +85,6 @@ resources:
+@@ -115,13 +85,15 @@ resources:
        floating_network_id: { get_param: public_mgmt_net_id }
        port_id: { get_resource: mgmt_port }
  
 -  sig_port:
 -    type: OS::Neutron::Port
--    properties:
++  wait_condition:
++    type: OS::Heat::WaitCondition
+     properties:
 -      # Specify the network ID by string to work around OpenStack issues - see https://github.com/Metaswitch/clearwater-heat/issues/18.
 -      network_id: { str_replace: { params: { x: { get_param: private_sig_net_id } }, template: x } }
 -      security_groups:
 -        - { get_param: dime_sig_security_group }
--
++      handle: {get_resource: wait_handle}
++      count: 1
++      timeout: 1200
++
++  wait_handle:
++    type: OS::Heat::WaitConditionHandle
    server:
      type: OS::Nova::Server
-     properties:
-@@ -132,7 +94,6 @@ resources:
+@@ -132,7 +104,6 @@ resources:
        key_name: { get_param: key_name }
        networks:
          - port: { get_resource: mgmt_port }
@@ -446,7 +465,7 @@ index 642f19d..c544ce6 100644
        user_data_format: RAW
        user_data:
          str_replace:
-@@ -141,11 +102,7 @@ resources:
+@@ -141,14 +112,11 @@ resources:
              __zone__: { get_param: zone }
              __public_mgmt_ip__: { get_attr: [ mgmt_floating_ip, floating_ip_address ] }
              __private_mgmt_ip__: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
@@ -458,7 +477,11 @@ index 642f19d..c544ce6 100644
              __dnssec_key__: { get_param: dnssec_key }
              __etcd_ip__ : { get_param: etcd_ip }
              __index__ : { get_param: index }
-@@ -156,33 +113,6 @@ resources:
++            wc_notify: { get_attr: [wait_handle, curl_cli] }
+           template: |
+             #!/bin/bash
+@@ -156,33 +124,6 @@ resources:
              exec > >(tee -a /var/log/clearwater-heat-dime.log) 2>&1
              set -x
  
@@ -492,7 +515,7 @@ index 642f19d..c544ce6 100644
              # Configure the APT software source.
              echo 'deb __repo_url__ binary/' > /etc/apt/sources.list.d/clearwater.list
              curl -L http://repo.cw-ngv.com/repo_key | apt-key add -
-@@ -193,11 +123,8 @@ resources:
+@@ -193,11 +134,8 @@ resources:
              etcd_ip=__etcd_ip__
              [ -n "$etcd_ip" ] || etcd_ip=__private_mgmt_ip__
              cat > /etc/clearwater/local_config << EOF
@@ -506,7 +529,7 @@ index 642f19d..c544ce6 100644
              public_hostname=dime-__index__.__zone__
              etcd_cluster=$etcd_ip
              EOF
-@@ -220,9 +147,9 @@ resources:
+@@ -220,9 +158,9 @@ resources:
              while ! { nsupdate -y "__zone__:__dnssec_key__" -v << EOF
              server __dns_mgmt_ip__
              update add dime-__index__.__zone__. 30 $(ip2rr __public_mgmt_ip__)
@@ -519,16 +542,17 @@ index 642f19d..c544ce6 100644
              send
              EOF
              } && [ $retries -lt 10 ]
-@@ -235,8 +162,6 @@ resources:
+@@ -235,17 +173,13 @@ resources:
              # Use the DNS server.
              echo 'nameserver __dns_mgmt_ip__' > /etc/dnsmasq.resolv.conf
              echo 'RESOLV_CONF=/etc/dnsmasq.resolv.conf' >> /etc/default/dnsmasq
 -            mkdir -p /etc/netns/signaling
 -            echo 'nameserver __dns_sig_ip__' > /etc/netns/signaling/resolv.conf
              service dnsmasq force-reload
++            wc_notify --data-binary '{"status": "SUCCESS"}'
  
  outputs:
-@@ -244,8 +169,5 @@ outputs:
+   public_mgmt_ip:
      description: IP address in public (management) network
      value: { get_attr: [ mgmt_floating_ip, floating_ip_address ] }
    private_mgmt_ip:
@@ -539,7 +563,7 @@ index 642f19d..c544ce6 100644
 -    description: IP address in private signaling network
 -    value: { get_attr: [ sig_port, fixed_ips, 0, ip_address ] }
 diff --git a/dns.yaml b/dns.yaml
-index 825ede1..7e4c442 100644
+index 825ede1..0412c4f 100644
 --- a/dns.yaml
 +++ b/dns.yaml
 @@ -23,22 +23,6 @@ parameters:
@@ -598,7 +622,7 @@ index 825ede1..7e4c442 100644
 -        - { get_param: dns_security_group }
 +      handle: {get_resource: wait_handle}
 +      count: 1
-+      timeout: 600
++      timeout: 1200
 +
 +  wait_handle:
 +    type: OS::Heat::WaitConditionHandle
@@ -653,7 +677,7 @@ index 825ede1..7e4c442 100644
      description: DNS zone
      value: { get_param: zone }
 diff --git a/ellis.yaml b/ellis.yaml
-index 963352d..0f41a3a 100644
+index 963352d..1dc62f0 100644
 --- a/ellis.yaml
 +++ b/ellis.yaml
 @@ -44,9 +44,6 @@ parameters:
@@ -683,7 +707,7 @@ index 963352d..0f41a3a 100644
 +    properties:
 +      handle: {get_resource: wait_handle}
 +      count: 1
-+      timeout: 600
++      timeout: 1200
 +
 +  wait_handle:
 +    type: OS::Heat::WaitConditionHandle
@@ -708,7 +732,16 @@ index 963352d..0f41a3a 100644
  
              # Email server configuration
              smtp_smarthost=localhost
-@@ -227,6 +234,7 @@ resources:
+@@ -189,6 +196,8 @@ resources:
+             turn_workaround=secret
+             ellis_api_key=secret
+             ellis_cookie_key=secret
++
++            reduce_cassandra_mem_usage=Y
+             EOF
+             /usr/share/clearwater/clearwater-config-manager/scripts/cw-config upload shared_config --autoconfirm --dir /tmp
+@@ -227,6 +236,7 @@ resources:
              echo 'nameserver __dns_mgmt_ip__' > /etc/dnsmasq.resolv.conf
              echo 'RESOLV_CONF=/etc/dnsmasq.resolv.conf' >> /etc/default/dnsmasq
              service dnsmasq force-reload
@@ -717,7 +750,7 @@ index 963352d..0f41a3a 100644
  outputs:
    public_mgmt_ip:
 diff --git a/homer.yaml b/homer.yaml
-index 4337984..e5bbb1f 100644
+index 4337984..f87d3e8 100644
 --- a/homer.yaml
 +++ b/homer.yaml
 @@ -23,26 +23,6 @@ parameters:
@@ -778,28 +811,34 @@ index 4337984..e5bbb1f 100644
  
    mgmt_floating_ip:
      type: OS::Neutron::FloatingIP
-@@ -115,20 +85,6 @@ resources:
+@@ -115,19 +85,15 @@ resources:
        floating_network_id: { get_param: public_mgmt_net_id }
        port_id: { get_resource: mgmt_port }
  
 -  sig_port:
 -    type: OS::Neutron::Port
--    properties:
++  wait_condition:
++    type: OS::Heat::WaitCondition
+     properties:
 -      # Specify the network ID by string to work around OpenStack issues - see https://github.com/Metaswitch/clearwater-heat/issues/18.
 -      network_id: { str_replace: { params: { x: { get_param: private_sig_net_id } }, template: x } }
 -      security_groups:
 -        - { get_param: homer_sig_security_group }
--
++      handle: {get_resource: wait_handle}
++      count: 1
++      timeout: 1200
 -  sig_floating_ip:
 -    type: OS::Neutron::FloatingIP
 -    properties:
 -      floating_network_id: { get_param: public_sig_net_id }
 -      port_id: { get_resource: sig_port }
--
++  wait_handle:
++    type: OS::Heat::WaitConditionHandle
    server:
      type: OS::Nova::Server
-     properties:
-@@ -138,7 +94,6 @@ resources:
+@@ -138,7 +104,6 @@ resources:
        key_name: { get_param: key_name }
        networks:
          - port: { get_resource: mgmt_port }
@@ -807,7 +846,7 @@ index 4337984..e5bbb1f 100644
        user_data_format: RAW
        user_data:
          str_replace:
-@@ -147,12 +102,7 @@ resources:
+@@ -147,15 +112,11 @@ resources:
              __zone__: { get_param: zone }
              __public_mgmt_ip__: { get_attr: [ mgmt_floating_ip, floating_ip_address ] }
              __private_mgmt_ip__: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
@@ -820,7 +859,11 @@ index 4337984..e5bbb1f 100644
              __dnssec_key__: { get_param: dnssec_key }
              __etcd_ip__ : { get_param: etcd_ip }
              __index__ : { get_param: index }
-@@ -163,33 +113,6 @@ resources:
++            wc_notify: { get_attr: [wait_handle, curl_cli] }
+           template: |
+             #!/bin/bash
+@@ -163,33 +124,6 @@ resources:
              exec > >(tee -a /var/log/clearwater-heat-homer.log) 2>&1
              set -x
  
@@ -854,7 +897,7 @@ index 4337984..e5bbb1f 100644
              # Configure the APT software source.
              echo 'deb __repo_url__ binary/' > /etc/apt/sources.list.d/clearwater.list
              curl -L http://repo.cw-ngv.com/repo_key | apt-key add -
-@@ -200,11 +123,8 @@ resources:
+@@ -200,11 +134,8 @@ resources:
              etcd_ip=__etcd_ip__
              [ -n "$etcd_ip" ] || etcd_ip=__private_mgmt_ip__
              cat > /etc/clearwater/local_config << EOF
@@ -868,7 +911,7 @@ index 4337984..e5bbb1f 100644
              public_hostname=homer-__index__.__zone__
              etcd_cluster=$etcd_ip
              EOF
-@@ -227,7 +147,7 @@ resources:
+@@ -227,7 +158,7 @@ resources:
              while ! { nsupdate -y "__zone__:__dnssec_key__" -v << EOF
              server __dns_mgmt_ip__
              update add homer-__index__.__zone__. 30 $(ip2rr __public_mgmt_ip__)
@@ -877,16 +920,18 @@ index 4337984..e5bbb1f 100644
              send
              EOF
              } && [ $retries -lt 10 ]
-@@ -241,8 +161,6 @@ resources:
+@@ -241,9 +172,8 @@ resources:
              # Use the DNS server.
              echo 'nameserver __dns_mgmt_ip__' > /etc/dnsmasq.resolv.conf
              echo 'RESOLV_CONF=/etc/dnsmasq.resolv.conf' >> /etc/default/dnsmasq
 -            mkdir -p /etc/netns/signaling
 -            echo 'nameserver __dns_sig_ip__' > /etc/netns/signaling/resolv.conf
              service dnsmasq force-reload
++            wc_notify --data-binary '{"status": "SUCCESS"}'
  
  outputs:
-@@ -252,9 +170,3 @@ outputs:
+   public_mgmt_ip:
+@@ -252,9 +182,3 @@ outputs:
    private_mgmt_ip:
      description: IP address in private management network
      value: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
@@ -1246,7 +1291,7 @@ index 5921d32..c73fe2b 100644
 -    value: { get_resource: vellum_sig_inbound }
 +    value: { get_resource: base_mgmt }
 diff --git a/sprout.yaml b/sprout.yaml
-index 9c533b7..4188c45 100644
+index 9c533b7..3702ef9 100644
 --- a/sprout.yaml
 +++ b/sprout.yaml
 @@ -23,26 +23,6 @@ parameters:
@@ -1299,23 +1344,30 @@ index 9c533b7..4188c45 100644
    dnssec_key:
      type: string
      description: DNSSEC private key (Base64-encoded)
-@@ -114,15 +85,6 @@ resources:
+@@ -114,14 +85,15 @@ resources:
        floating_network_id: { get_param: public_mgmt_net_id }
        port_id: { get_resource: mgmt_port }
  
 -  sig_port:
 -    type: OS::Neutron::Port
--    properties:
++  wait_condition:
++    type: OS::Heat::WaitCondition
+     properties:
 -      # Specify the network ID by string to work around OpenStack issues - see https://github.com/Metaswitch/clearwater-heat/issues/18.
 -      network_id: { str_replace: { params: { x: { get_param: private_sig_net_id } }, template: x } }
 -      security_groups:
 -        - { get_param: sprout_sig_outbound_security_group }
 -        - { get_param: sprout_sig_inbound_security_group }
--
++      handle: {get_resource: wait_handle}
++      count: 1
++      timeout: 1200
++
++  wait_handle:
++    type: OS::Heat::WaitConditionHandle
    server:
      type: OS::Nova::Server
-     properties:
-@@ -132,7 +94,6 @@ resources:
+@@ -132,7 +104,6 @@ resources:
        key_name: { get_param: key_name }
        networks:
          - port: { get_resource: mgmt_port }
@@ -1323,7 +1375,7 @@ index 9c533b7..4188c45 100644
        user_data_format: RAW
        user_data:
          str_replace:
-@@ -141,11 +102,7 @@ resources:
+@@ -141,14 +112,11 @@ resources:
              __zone__: { get_param: zone }
              __public_mgmt_ip__: { get_attr: [ mgmt_floating_ip, floating_ip_address ] }
              __private_mgmt_ip__: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
@@ -1335,7 +1387,11 @@ index 9c533b7..4188c45 100644
              __dnssec_key__: { get_param: dnssec_key }
              __etcd_ip__ : { get_param: etcd_ip }
              __index__ : { get_param: index }
-@@ -156,33 +113,6 @@ resources:
++            wc_notify: { get_attr: [wait_handle, curl_cli] }
+           template: |
+             #!/bin/bash
+@@ -156,33 +124,6 @@ resources:
              exec > >(tee -a /var/log/clearwater-heat-sprout.log) 2>&1
              set -x
  
@@ -1369,7 +1425,7 @@ index 9c533b7..4188c45 100644
              # Configure the APT software source.
              echo 'deb __repo_url__ binary/' > /etc/apt/sources.list.d/clearwater.list
              curl -L http://repo.cw-ngv.com/repo_key | apt-key add -
-@@ -193,11 +123,8 @@ resources:
+@@ -193,11 +134,8 @@ resources:
              etcd_ip=__etcd_ip__
              [ -n "$etcd_ip" ] || etcd_ip=__private_mgmt_ip__
              cat > /etc/clearwater/local_config << EOF
@@ -1383,7 +1439,7 @@ index 9c533b7..4188c45 100644
              public_hostname=__index__.sprout.__zone__
              etcd_cluster=$etcd_ip
              EOF
-@@ -220,10 +147,10 @@ resources:
+@@ -220,10 +158,10 @@ resources:
              while ! { nsupdate -y "__zone__:__dnssec_key__" -v << EOF
              server __dns_mgmt_ip__
              update add sprout-__index__.__zone__. 30 $(ip2rr __public_mgmt_ip__)
@@ -1398,16 +1454,17 @@ index 9c533b7..4188c45 100644
              update add sprout.__zone__. 30 NAPTR 0 0 "s" "SIP+D2T" "" _sip._tcp.sprout.__zone__.
              update add _sip._tcp.sprout.__zone__. 30 SRV 0 0 5054 __index__.sprout.__zone__.
              update add icscf.sprout.__zone__. 30 NAPTR 0 0 "s" "SIP+D2T" "" _sip._tcp.icscf.sprout.__zone__.
-@@ -242,8 +169,6 @@ resources:
+@@ -242,17 +180,13 @@ resources:
              # Use the DNS server.
              echo 'nameserver __dns_mgmt_ip__' > /etc/dnsmasq.resolv.conf
              echo 'RESOLV_CONF=/etc/dnsmasq.resolv.conf' >> /etc/default/dnsmasq
 -            mkdir -p /etc/netns/signaling
 -            echo 'nameserver __dns_sig_ip__' > /etc/netns/signaling/resolv.conf
              service dnsmasq force-reload
++            wc_notify --data-binary '{"status": "SUCCESS"}'
  
  outputs:
-@@ -251,8 +176,5 @@ outputs:
+   public_mgmt_ip:
      description: IP address in public (management) network
      value: { get_attr: [ mgmt_floating_ip, floating_ip_address ] }
    private_mgmt_ip:
@@ -1418,7 +1475,7 @@ index 9c533b7..4188c45 100644
 -    description: IP address in private signaling network
 -    value: { get_attr: [ sig_port, fixed_ips, 0, ip_address ] }
 diff --git a/vellum.yaml b/vellum.yaml
-index aab71f9..05f6cd0 100644
+index aab71f9..563edf7 100644
 --- a/vellum.yaml
 +++ b/vellum.yaml
 @@ -23,26 +23,6 @@ parameters:
@@ -1471,23 +1528,30 @@ index aab71f9..05f6cd0 100644
    dnssec_key:
      type: string
      description: DNSSEC private key (Base64-encoded)
-@@ -114,15 +85,6 @@ resources:
+@@ -114,14 +85,15 @@ resources:
        floating_network_id: { get_param: public_mgmt_net_id }
        port_id: { get_resource: mgmt_port }
  
 -  sig_port:
 -    type: OS::Neutron::Port
--    properties:
++  wait_condition:
++    type: OS::Heat::WaitCondition
+     properties:
 -      # Specify the network ID by string to work around OpenStack issues - see https://github.com/Metaswitch/clearwater-heat/issues/18.
 -      network_id: { str_replace: { params: { x: { get_param: private_sig_net_id } }, template: x } }
 -      security_groups:
 -        - { get_param: vellum_sig_outbound_security_group }
 -        - { get_param: vellum_sig_inbound_security_group }
--
++      handle: {get_resource: wait_handle}
++      count: 1
++      timeout: 1200
++
++  wait_handle:
++    type: OS::Heat::WaitConditionHandle
    server:
      type: OS::Nova::Server
-     properties:
-@@ -132,7 +94,6 @@ resources:
+@@ -132,7 +104,6 @@ resources:
        key_name: { get_param: key_name }
        networks:
          - port: { get_resource: mgmt_port }
@@ -1495,7 +1559,7 @@ index aab71f9..05f6cd0 100644
        user_data_format: RAW
        user_data:
          str_replace:
-@@ -141,11 +102,7 @@ resources:
+@@ -141,47 +112,18 @@ resources:
              __zone__: { get_param: zone }
              __public_mgmt_ip__: { get_attr: [ mgmt_floating_ip, floating_ip_address ] }
              __private_mgmt_ip__: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
@@ -1507,10 +1571,14 @@ index aab71f9..05f6cd0 100644
              __dnssec_key__: { get_param: dnssec_key }
              __etcd_ip__ : { get_param: etcd_ip }
              __index__ : { get_param: index }
-@@ -156,33 +113,6 @@ resources:
++            wc_notify: { get_attr: [wait_handle, curl_cli] }
+           template: |
+             #!/bin/bash
+             # Log all output to file.
              exec > >(tee -a /var/log/clearwater-heat-vellum.log) 2>&1
              set -x
+-
 -            # Set up the signaling network namespace on each boot by creating an init file and
 -            # linking to it from runlevel 2 and 3
 -            cat >/etc/init.d/signaling_namespace <<EOF
@@ -1537,11 +1605,11 @@ index aab71f9..05f6cd0 100644
 -
 -            # Also set up the signaling namespace now.
 -            /etc/init.d/signaling_namespace
--
++            sysctl -w net.ipv6.conf.lo.disable_ipv6=0
              # Configure the APT software source.
              echo 'deb __repo_url__ binary/' > /etc/apt/sources.list.d/clearwater.list
-             curl -L http://repo.cw-ngv.com/repo_key | apt-key add -
-@@ -193,11 +123,8 @@ resources:
+@@ -193,11 +135,8 @@ resources:
              etcd_ip=__etcd_ip__
              [ -n "$etcd_ip" ] || etcd_ip=__private_mgmt_ip__
              cat > /etc/clearwater/local_config << EOF
@@ -1555,7 +1623,7 @@ index aab71f9..05f6cd0 100644
              public_hostname=__index__.vellum.__zone__
              etcd_cluster=$etcd_ip
              EOF
-@@ -206,7 +133,7 @@ resources:
+@@ -206,7 +145,7 @@ resources:
              mkdir -p /etc/chronos
              cat > /etc/chronos/chronos.conf << EOF
              [http]
@@ -1564,7 +1632,7 @@ index aab71f9..05f6cd0 100644
              bind-port = 7253
              threads = 50
  
-@@ -218,7 +145,7 @@ resources:
+@@ -218,7 +157,7 @@ resources:
              enabled = true
  
              [dns]
@@ -1573,7 +1641,7 @@ index aab71f9..05f6cd0 100644
              EOF
  
              # Now install the software.
-@@ -239,7 +166,7 @@ resources:
+@@ -239,7 +178,7 @@ resources:
              while ! { nsupdate -y "__zone__:__dnssec_key__" -v << EOF
              server __dns_mgmt_ip__
              update add vellum-__index__.__zone__. 30 $(ip2rr __public_mgmt_ip__)
@@ -1582,16 +1650,18 @@ index aab71f9..05f6cd0 100644
              send
              EOF
              } && [ $retries -lt 10 ]
-@@ -252,8 +179,6 @@ resources:
+@@ -252,9 +191,8 @@ resources:
              # Use the DNS server.
              echo 'nameserver __dns_mgmt_ip__' > /etc/dnsmasq.resolv.conf
              echo 'RESOLV_CONF=/etc/dnsmasq.resolv.conf' >> /etc/default/dnsmasq
 -            mkdir -p /etc/netns/signaling
 -            echo 'nameserver __dns_sig_ip__' > /etc/netns/signaling/resolv.conf
              service dnsmasq force-reload
++            wc_notify --data-binary '{"status": "SUCCESS"}'
  
  outputs:
-@@ -263,6 +188,3 @@ outputs:
+   public_mgmt_ip:
+@@ -263,6 +201,3 @@ outputs:
    private_mgmt_ip:
      description: IP address in private management network
      value: { get_attr: [ mgmt_port, fixed_ips, 0, ip_address ] }
index 1be82ee..ad2682d 100644 (file)
@@ -168,7 +168,7 @@ class HeatIms(singlevm.VmReady2):
         self.__logger.debug("servers: %s", servers)
         for server in servers:
             if not self.check_regex_in_console(
-                    server.name, regex='Cloud-init .* finished at ', loop=240):
+                    server.name, regex='Cloud-init .* finished at ', loop=1):
                 return False
             if 'ellis' in server.name:
                 self.__logger.debug("server: %s", server)