Test Your Cloud Template
Deployment
To test the deployment of a cloud template, you use the Blueprint APIs to make a POST
request with the cloud template ID as input.
- Verify that all general prerequisites and prerequisites for theAutomation AssemblerBlueprint service have been satisfied. See Prerequisites for API Use Case Examples.
- Verify that the flavor mapping and image mapping specified in the releasedAutomatiseringcloud template version exist in your cloud account. See Create Flavor Mappings and Create Image Mappings.
- Verify that you have the ID for the cloud template you want to deploy. See Create and Update a Cloud Template.
Before deploying a cloud
template, you can test the syntax and placement of your cloud template to ensure
deployment viability. If errors are reported in the test, you must fix the errors and
test again before deploying the cloud template.
- Assign the cloud template ID variable.cloud_template_id='<your_cloud_template_id>'
- Assign image mapping and flavor mapping variables for the cloud template you intend to deploy.image_mapping='<your_image_mapping_name>' flavor_mapping='<your_flavor_mapping_name>'The image mapping specifies the OS image for a VM. The flavor mapping specifies the CPU count and RAM of a VM.
- Test the cloud template deployment.curl -X POST \ $url/blueprint/api/blueprint-requests?apiVersion=$api_version \ -H "Authorization: Bearer $access_token" \ -H 'Content-Type: application/json' \ -d '{ "simulate":true, "blueprintId": "'"$cloud_template_id"'", "inputs": { "count": 2, "image":"'"$image_mapping"'", "flavor":"'"$flavor_mapping"'" } }' | jq "."
- Examine the response and assign the cloud template request ID.cloud_template_request_id='<your_cloud_template_request_id>'
- Get the status of the test request.curl -X GET \ $url/blueprint/api/blueprint-requests/$cloud_template_request_id?apiVersion=$api_version \ -H "Authorization: Bearer $access_token" | jq "."
Test a Deployment
For a cloud template with ID
1f170637-81a3-4257-b1cd-b2219ee8034c
, test the deployment
with image mapping set to ubuntu
and flavor mapping set to
small
. Assign variables.
$ url='https://appliance.domain.com' $ api_version='2019-09-12' $ cloud_template_id='1f170637-81a3-4257-b1cd-b2219ee8034c' $ image_mapping='ubuntu' $ flavor_mapping='small'
Test the cloud template deployment.
$ curl -X POST \ $url/blueprint/api/blueprint-requests?apiVersion=$api_version \ -H "Authorization: Bearer $access_token" \ -H 'Content-Type: application/json' \ -d '{ "simulate":true, "blueprintId": "'"$cloud_template_id"'", "inputs": { "count": 2, "image":"'"$image_mapping"'", "flavor":"'"$flavor_mapping"'" } }' | jq "."
A snippet of the response shows the cloud
template request ID.
{ "id": "5c33355e-fc52-4a30-97c3-3752cf9b644e", "createdAt": "2019-10-11T00:11:55.544Z", ... "blueprintId": "1f170637-81a3-4257-b1cd-b2219ee8034c", ...
Assign the cloud template request ID
variable.
$ cloud_template_request_id='5c33355e-fc52-4a30-97c3-3752cf9b644e'
Request the status of the deployment.
$ curl -X GET \ $url/blueprint/api/blueprint-requests/$cloud_template_request_id?apiVersion=$api_version \ -H "Authorization: Bearer $access_token" | jq "."
A snippet of the response shows the
status of the deployment test request.
... "blueprintId": "1f170637-81a3-4257-b1cd-b2219ee8034c", "inputs": { "count": 2, "image": "ubuntu", "flavor": "small" }, "status": "FINISHED", ...
If your test deployment is successful, you are ready to deploy your cloud
template.