blob: f0435f3815bf2e3041ecba53e333f81c0808bf98 [file] [log] [blame]
Mehdi Abaakouk80081512015-07-29 19:03:26 +02001defaults:
2 request_headers:
3 x-auth-token: $ENVIRON['ADMIN_TOKEN']
4
5tests:
6 - name: list alarms none
7 desc: Lists alarms, none yet exist
8 url: $ENVIRON['AODH_SERVICE_URL']/v2/alarms
9 method: GET
10 response_strings:
11 - "[]"
12
13 - name: list servers none
14 desc: List servers, none yet exists
15 url: $ENVIRON['NOVA_SERVICE_URL']/servers
16 method: GET
17 response_strings:
18 - "[]"
19
20 - name: create stack
21 desc: Create an autoscaling stack
22 url: $ENVIRON['HEAT_SERVICE_URL']/stacks
23 method: POST
24 request_headers:
25 content-type: application/json
Mehdi Abaakouk7f089ac2015-08-05 08:49:45 +020026 data: <@create_stack.json
Mehdi Abaakouk80081512015-07-29 19:03:26 +020027 status: 201
28
29 - name: waiting for stack creation
30 desc: Wait for the second event on the stack resource, it can be a success or failure
31 url: $ENVIRON['HEAT_SERVICE_URL']/stacks/integration_test/events?resource_name=integration_test
32 redirects: true
33 method: GET
34 status: 200
35 poll:
36 count: 300
37 delay: 1
38 response_json_paths:
39 $.events[1].resource_name: integration_test
40
41 - name: control stack status
42 desc: Checks the stack have been created successfully
43 url: $ENVIRON['HEAT_SERVICE_URL']/stacks/integration_test
44 redirects: true
45 method: GET
46 status: 200
Mehdi Abaakouk383becb2015-08-21 08:16:29 +000047 poll:
48 count: 5
49 delay: 1
Mehdi Abaakouk80081512015-07-29 19:03:26 +020050 response_json_paths:
51 $.stack.stack_status: "CREATE_COMPLETE"
52
gord chungace7de62017-02-09 17:16:52 +000053 - name: list servers grow
Mehdi Abaakouk6f1e34e2015-08-28 10:10:51 +020054 desc: Wait the autoscaling stack grow to two servers
Mehdi Abaakouk80081512015-07-29 19:03:26 +020055 url: $ENVIRON['NOVA_SERVICE_URL']/servers/detail
56 method: GET
57 poll:
Mehdi Abaakouk383becb2015-08-21 08:16:29 +000058 count: 600
Mehdi Abaakouk80081512015-07-29 19:03:26 +020059 delay: 1
60 response_json_paths:
61 $.servers[0].metadata.'metering.server_group': $RESPONSE['$.stack.id']
62 $.servers[1].metadata.'metering.server_group': $RESPONSE['$.stack.id']
Mehdi Abaakouk80081512015-07-29 19:03:26 +020063 $.servers[0].status: ACTIVE
64 $.servers[1].status: ACTIVE
Mehdi Abaakouk7f089ac2015-08-05 08:49:45 +020065 $.servers.`len`: 2
Mehdi Abaakouk80081512015-07-29 19:03:26 +020066
67 - name: check gnocchi resources
Mehdi Abaakouk6f1e34e2015-08-28 10:10:51 +020068 desc: Check the gnocchi resources for this two servers exists
Mehdi Abaakouk80081512015-07-29 19:03:26 +020069 url: $ENVIRON['GNOCCHI_SERVICE_URL']/v1/resource/instance
70 method: GET
Mehdi Abaakouk383becb2015-08-21 08:16:29 +000071 poll:
72 count: 30
73 delay: 1
Mehdi Abaakouk80081512015-07-29 19:03:26 +020074 response_strings:
75 - '"id": "$RESPONSE["$.servers[0].id"]"'
76 - '"id": "$RESPONSE["$.servers[1].id"]"'
Mehdi Abaakouk80081512015-07-29 19:03:26 +020077
gord chung7014db62017-01-10 21:41:58 +000078 - name: check event
79 desc: Check panko for new instance.create.end event
80 url: $ENVIRON['PANKO_SERVICE_URL']/v2/events
81 method: GET
82 request_headers:
83 content-type: application/json
84 data:
85 q:
86 - field: event_type
87 op: eq
88 type: string
89 value: compute.instance.create.end
90 - field: resource_id
91 op: eq
92 type: string
gord chungace7de62017-02-09 17:16:52 +000093 value: $HISTORY['list servers grow'].$RESPONSE['$.servers[0].id']
gord chung7014db62017-01-10 21:41:58 +000094 poll:
95 count: 30
96 delay: 1
97 response_json_paths:
98 $.`len`: 1
99 $[0].event_type: compute.instance.create.end
gord chungace7de62017-02-09 17:16:52 +0000100 $[0].traits[?(@.name='resource_id')].value: $HISTORY['list servers grow'].$RESPONSE['$.servers[0].id']
gord chung7014db62017-01-10 21:41:58 +0000101
Mehdi Abaakouk80081512015-07-29 19:03:26 +0200102 - name: check alarm
103 desc: Check the aodh alarm and its state
104 url: $ENVIRON['AODH_SERVICE_URL']/v2/alarms
105 method: GET
Mehdi Abaakouk7f089ac2015-08-05 08:49:45 +0200106 poll:
107 count: 30
108 delay: 1
Mehdi Abaakouk80081512015-07-29 19:03:26 +0200109 response_strings:
110 - "integration_test-cpu_alarm_high-"
111 response_json_paths:
112 $[0].state: alarm
113
Mehdi Abaakouk7f089ac2015-08-05 08:49:45 +0200114 - name: get stack location for update
115 desc: Get the stack location
116 url: $ENVIRON['HEAT_SERVICE_URL']/stacks/integration_test
117 method: GET
118 status: 302
119
120 - name: update stack
121 desc: Update an autoscaling stack
122 url: $LOCATION
123 method: PUT
124 request_headers:
125 content-type: application/json
126 data: <@update_stack.json
127 status: 202
128
129 - name: waiting for stack update
130 desc: Wait for the third event on the stack resource, it can be a success or failure
131 url: $ENVIRON['HEAT_SERVICE_URL']/stacks/integration_test/events?resource_name=integration_test
132 redirects: true
133 method: GET
134 status: 200
135 poll:
136 count: 300
137 delay: 1
138 response_json_paths:
139 $.events[3].resource_name: integration_test
140
141 - name: control stack status
142 desc: Checks the stack have been created successfully
143 url: $ENVIRON['HEAT_SERVICE_URL']/stacks/integration_test
144 redirects: true
145 method: GET
146 status: 200
147 poll:
148 count: 5
149 delay: 1
150 response_json_paths:
151 $.stack.stack_status: "UPDATE_COMPLETE"
152
gord chungace7de62017-02-09 17:16:52 +0000153 - name: list servers shrink
Mehdi Abaakouk6f1e34e2015-08-28 10:10:51 +0200154 desc: Wait the autoscaling stack shrink to one server
Mehdi Abaakouk7f089ac2015-08-05 08:49:45 +0200155 url: $ENVIRON['NOVA_SERVICE_URL']/servers/detail
156 method: GET
157 poll:
158 count: 600
159 delay: 1
160 response_json_paths:
161 $.servers[0].metadata.'metering.server_group': $RESPONSE['$.stack.id']
162 $.servers[0].status: ACTIVE
163 $.servers.`len`: 1
164
Mehdi Abaakouk80081512015-07-29 19:03:26 +0200165 - name: get stack location
166 desc: Get the stack location
167 url: $ENVIRON['HEAT_SERVICE_URL']/stacks/integration_test
168 method: GET
169 status: 302
170
171 - name: delete stack
172 desc: Delete the stack
173 url: $LOCATION
174 method: DELETE
175 status: 204
176
177 - name: get deleted stack
178 desc: Check the stack have been deleted
179 url: $ENVIRON['HEAT_SERVICE_URL']/stacks/integration_test
180 redirects: true
181 method: GET
182 poll:
Mehdi Abaakouke3a1aca2016-12-16 10:53:22 +0100183 count: 300
Mehdi Abaakouk80081512015-07-29 19:03:26 +0200184 delay: 1
185 status: 404
186
187 - name: list alarms deleted
188 desc: List alarms, no more exist
189 url: $ENVIRON['AODH_SERVICE_URL']/v2/alarms
190 method: GET
191 response_strings:
192 - "[]"
193
194 - name: list servers deleted
195 desc: List servers, no more exists
196 url: $ENVIRON['NOVA_SERVICE_URL']/servers
197 method: GET
198 response_strings:
199 - "[]"