changes.
| 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} |