This documentation relates to QuickBuild 12.0.x
Select here if you are using a different version

Interact with Cloud Profiles

Version 1 by Robin Shen
on Jan 08, 2022 05:53.


 
compared with
Current by Robin Shen
on May 27, 2022 02:08.


 
Key
These lines were removed. This word was removed.
These lines were added. This word was added.

View page history


There are 2 changes. View first change.

 h1. Get all cloud profiles in the system
  
 h2. Syntax
 Cloud profiles in the system can be accessed using http GET method through below url:
 {code}http://localhost:8810/rest/cloud_profiles{code}
 The response is of mime type _application/xml_ and the content is XML representation of all cloud profiles in the system.
  
 h2. Security
 You will need to use http BASIC authentication to login as QuickBuild administrator if the anonymous does not have adminstrative right.
  
 h2. Demo
 Below [curl|http://curl.haxx.se/] command demonstrates how to get all cloud profiles:
 {code}curl -u admin:admin http://localhost:8810/rest/cloud_profiles{code}
  
 h1. Access cloud profile by id
  
 h2. Syntax
 Cloud profile can be accessed by id using http GET method through below url:
 {code}http://localhost:8810/rest/cloud_profiles/<cloud profile id>{code}
 The response is of mime type _application/xml_ and the content is XML representation of the cloud profile.
  
 h2. Security
 You will need to use http BASIC authentication to login as QuickBuild administrator if the anonymous does not have adminstrative right.
  
 h2. Demo
 Below [curl|http://curl.haxx.se/] command demonstrates how to get cloud profile of id _1_:
 {code}curl -u admin:admin http://localhost:8810/rest/cloud_profiles/1{code}
  
 h1. Update cloud profile
  
 h2. Syntax
 Cloud profile can be updated by posting xml representation of the cloud profile to below url:
 {code}http://localhost:8810/rest/cloud_profiles{code}
 Normally you do not need to create the XML from scratch: you may retrieve XML representation of the cloud profile using http GET method, modify certain parts of the XML and post back to above url.
 The response is of mime type _text/plain_ and the content is string representation of the cloud profile id being updated.
  
 h2. Security
 You will need to use http BASIC authentication to login as QuickBuild administrator if the anonymous does not have administrative right.
  
 h2. Demo
 We will use [curl|http://curl.haxx.se/] to demonstrate how to modify description of cloud profile _profile1_:
 # Get id of cloud profile _profile1_ with [id service|retrieve object identifier]
 {code}curl http://localhost/rest/ids?cloud_profile_name=profile1{code}
 Assume returned id is _1_.
 # Retrieve xml representation of cloud profile _profile1_ into a temp file using below command:
 {code}curl -u admin:admin http://localhost:8810/rest/cloud_profiles/1 > tempfile.xml{code}
 # Edit _tempfile.xml_ and change _description_ element to desired value (or add the _description_ element if it does not already exist).
 # Post back modified content using below command:
 {code}curl -X POST -u admin:admin -d@tempfile.xml http://localhost:8810/rest/cloud_profiles{code}
  {code}curl -X POST -u admin:admin --data-binary "@tempfile.xml" http://localhost:8810/rest/cloud_profiles{code}
  
 h1. Create cloud profile
  
 h2. Syntax
 Cloud profile can be created by posting XML representation of the cloud profile to below url:
 {code}http://localhost:8810/rest/cloud_profiles{code}
 Please note that the posted XML should NOT contain the _id_ element; otherwise, QuickBuild will treat the post as an updating to the cloud profile with that id.
 Normally you do not need to create the XML from scratch: you may retrieve XML representation of a templating cloud profile using http GET method, remove the _id_ element, modify certain parts and post back to above url.
 The response is of mime type _text/plain_ and the content is string representation of the newly created cloud profile id.
  
 h2. Security
 You will need to use http BASIC authentication to login as QuickBuild administrator if the anonymous does not have administrative right.
  
 h2. Demo
 We will use [curl|http://curl.haxx.se/] to demonstrate how to create a new cloud profile _profile2_ by copying the existing cloud profile _profile1_.
 # Get id of cloud profile _profile1_ with [id service|retrieve object identifier]
 {code}curl http://localhost/rest/ids?cloud_profile_name=profile1{code}
 Assume returned id is _1_.
 # Retrieve xml representation of cloud profile _profile1_ into a temp file using below command:
 {code}curl -u admin:admin http://localhost:8810/rest/cloud_profiles/1 > tempfile.xml{code}
 # Edit _tempfile.xml_, remove the _id_ element, and change the _name_ element to be _profile2_
 # Post back modified content using below command:
 {code}curl -X POST -u admin:admin -d@tempfile.xml http://localhost:8810/rest/cloud_profiles{code}
  {code}curl -X POST -u admin:admin --data-binary "@tempfile.xml" http://localhost:8810/rest/cloud_profiles{code}
  
 h1. Test cloud profile (added since 11.0.24)
  
 h2. Syntax
 Cloud profile can be tested using http GET method through below url:
 {code}http://localhost:8810/rest/cloud_profiles/<cloud profile id>/test{code}
 Here _<cloud profile id>_ stands for id of the cloud profile to be tested.
  
 h2. Security
 You will need to use http BASIC authentication to login as QuickBuild administrator if the anonymous does not have administrative right.
  
 h2. Demo
 Below [curl|http://curl.haxx.se/] command demonstrates how to test the cloud profile with id _2_:
 {code}curl -u admin:admin http://localhost:8810/rest/cloud_profiles/2/test{code}
  
 h1. Delete cloud profile
  
 h2. Syntax
 Cloud profile can be deleted using http DELETE method through below url:
 {code}http://localhost:8810/rest/cloud_profiles/<cloud profile id>{code}
 Here _<cloud profile id>_ stands for id of the cloud profile to be deleted.
  
 h2. Security
 You will need to use http BASIC authentication to login as QuickBuild administrator if the anonymous does not have administrative right.
  
 h2. Demo
 Below [curl|http://curl.haxx.se/] command demonstrates how to delete the cloud profile with id _2_:
 {code}curl -X DELETE -u admin:admin http://localhost:8810/rest/cloud_profiles/2{code}