defaults: request_headers: X-Auth-Token: $ENVIRON['OS_TOKEN'] tests: - name: create stack with resources POST: /stacks request_headers: content-type: application/json data: files: {} disable_rollback: true parameters: {} stack_name: $ENVIRON['PREFIX']-rsrcstack template: heat_template_version: '2016-04-08' parameters: test_val: type: string default: test resources: test: type: OS::Heat::TestResource properties: value: {get_param: test_val} status: 201 response_headers: location: //stacks/$ENVIRON['PREFIX']-rsrcstack/[a-f0-9-]+/ - name: poll for rsrcstack CREATE_COMPLETE GET: $LOCATION redirects: True poll: count: 5 delay: 1.0 response_json_paths: $.stack.stack_status: CREATE_COMPLETE - name: list resources GET: $LAST_URL/resources request_headers: content-type: application/json status: 200 response_json_paths: $.resources[0].logical_resource_id: test $.resources[0].resource_status: CREATE_COMPLETE - name: list filtered resources GET: $LAST_URL request_headers: content-type: application/json query_parameters: type: OS::Nova::Server status: 200 response_json_paths: $.resources: [] - name: show resource GET: $LAST_URL/test request_headers: content-type: application/json status: 200 response_json_paths: $.resource.attributes.output: test - name: mark resource unhealthy PATCH: $LAST_URL request_headers: content-type: application/json data: mark_unhealthy: true resource_status_reason: 'resource deleted' status: 200 - name: show unhealthy resource GET: $LAST_URL status: 200 response_json_paths: $.resource.resource_status: CHECK_FAILED $.resource.resource_status_reason: 'resource deleted' - name: signal resource POST: $LAST_URL/signal status: 400 - name: delete stack with resources DELETE: /stacks/$ENVIRON['PREFIX']-rsrcstack redirects: True status: 204