Merge of parallel SoftwareDeployment resources
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Heat Templates |
Fix Released
|
High
|
Steve Baker |
Bug Description
When, as in heat-templates/
(1) each deployment is invoked for every action that is listed in EITHER deployment, and
(2) the pseudo input named "action" is set correctly for only one of the two deployments.
Following are details of an example.
Here are the two SoftwareDeployment resources from that template:
deployment:
type: OS::Heat:
properties:
config:
server:
input_values:
foo: fooooo
bar: baaaaa
other_deployment:
type: OS::Heat:
properties:
config:
server:
input_values:
foo: fu
bar: barmy
actions:
- CREATE
- UPDATE
- SUSPEND
- RESUME
The config in this case is based on a bash script. I modified the script to use `logger` to note the invocation remotely. Here is the line from the modified script:
logger -n 172.18.76.4 Hello from example-script.sh on $(hostname) = $deploy_server_id during $deploy_action with foo=$foo and bar=$bar
I created a stack, then suspended it, then resumed it, then deleted it. Here is what I found on the syslog server:
Sep 4 05:58:13 172.24.4.2 <someone>: Hello from example-script.sh on e3-server-
Sep 4 05:58:16 172.24.4.2 <someone>: Hello from example-script.sh on e3-server-
Sep 4 06:01:35 172.24.4.2 <someone>: Hello from example-script.sh on e3-server-
Sep 4 06:01:39 172.24.4.2 <someone>: Hello from example-script.sh on e3-server-
Sep 4 06:02:11 172.24.4.2 <someone>: Hello from example-script.sh on e3-server-
Sep 4 06:02:15 172.24.4.2 <someone>: Hello from example-script.sh on e3-server-
summary: |
- action inheritance from one SoftwareDeployment to another + Merge of parallel SoftwareDeployment resources |
description: | updated |
Changed in heat: | |
status: | New → Triaged |
importance: | Undecided → Medium |
Changed in heat-templates: | |
status: | Fix Committed → Fix Released |
Here is another example. I modified one of the two deployments, giving it an action list that PARTLY overlaps with that of the other deployment. This is what those two now look like:
deployment: :SoftwareDeploy ment
get_resource: config
get_resource: server
type: OS::Heat:
properties:
config:
server:
input_values:
foo: fooooo
bar: baaaaa
logserver: {get_param: syslog_server}
actions:
- CREATE
- DELETE
other_deployment: :SoftwareDeploy ment
get_resource: config
get_resource: server
type: OS::Heat:
properties:
config:
server:
input_values:
foo: fu
bar: barmy
logserver: {get_param: syslog_server}
actions:
- CREATE
- UPDATE
- SUSPEND
- RESUME
With this revised template I did a stack-create, action-suspend, action-resume, and stack-delete. I got 8 messages at the syslog server:
Sep 4 06:38:35 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during CREATE with foo=fooooo and bar=baaaaa
Sep 4 06:38:39 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during CREATE with foo=fu and bar=barmy
Sep 4 06:40:50 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during CREATE with foo=fooooo and bar=baaaaa
Sep 4 06:40:53 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during SUSPEND with foo=fu and bar=barmy
Sep 4 06:41:23 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during CREATE with foo=fooooo and bar=baaaaa
Sep 4 06:41:27 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during RESUME with foo=fu and bar=barmy
Sep 4 06:42:28 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during DELETE with foo=fooooo and bar=baaaaa
Sep 4 06:42:32 172.24.4.2 <someone>: Hello from example-script.sh on e5-server- k4jdyc27n3h4 = 7f575102- cbba-4d89- 9223-6204e0d336 bb during RESUME with foo=fu and bar=barmy