Add a
VMware vSphere
Endpoint

As a DevOps administrator, you create a publisher in
vCenter
to store all captured
vSphere
templates. Then you configure the publisher endpoint in
VMware Aria Suite Lifecycle
. As a developer, you create a
vSphere
capture endpoint.
  • Verify that the appliance name and fully qualified domain name of the
    VMware Aria Suite Lifecycle
    instance are available.
  • Verify that the URL variable is assigned.
    url='https://LCM-Hostname'
  • Verify that the DevOps administrator has used
    vCenter
    to create the publisher that will be used to store templates captured from various
    vSphere
    capture points.
In addition, you can create a
vSphere
test and deploy endpoint. But because
VMware Aria Suite Lifecycle
uses the
vSphere
subscriber for versioning templates, your DevOps administrator must use
vCenter
to create a subscriber to the publisher before you create your endpoint. In this way, you can configure your test and deploy endpoint with the subscriber that has template support.
  1. As a DevOps administrator, configure a
    vSphere
    publisher endpoint in
    VMware Aria Suite Lifecycle
    . For the server, use the FQDN, IP address, or host name of the
    vCenter
    that you are adding to
    VMware Aria Suite Lifecycle
    . The parameter
    contentLibraryId
    identifies the publisher content library.
    curl -X POST \ '$url/lcm/cms/api/v1/endpoints' \ -H 'Authorization: Basic YWRtaW5AbG9jYWw6VGhpc0lzUGFzc3dvcmQ=' \ -H 'Content-Type: application/json' \ -d '{ "supportCapture":false, "supportTest":false, "supportRelease":false, "supportTemplates":true, "supportOnlySourceControlledContent":false, "storeTemplates":false, "requestedBy":"admin@local", "name":"system-virtualcenter", "enabled":false, "category":"vSphere", "systemEndpoint":true, "server": "{<
    VC_IP_FQDN
    >}", "userName": "{<
    vcUsername
    >}", "password": "{<
    vcPassword
    >}", "reviewRequired":false, "contentLibraryId":"6036cf9a-2833-40a0-9c46-13dbd567e5e1", "endpointType":"SERVER_ENDPOINT", "userIdentity":"admin@local", "contentLibraryName":"" }' | jq "."
  2. Examine the response to check the progress of the request and get the reference ID.
    { requestId":"eb405741-81fa-479c-912e-875644a1e392", "status":"IN_PROGRESS", "message":"Endpoint Successfully Created", "referenceId":"system-virtualcenter" }
  3. Assign the reference ID of the endpoint to a variable name.
    vSpherePublisherEndpoint = '<
    referenceID
    >'
  4. Get information about the
    vSphere
    publisher endpoint.
    curl -X GET \ '$url/lcm/cms/api/v1/endpoints/{$vSpherePublisherEndpoint}' \ -H 'Accept: application/json' \ -H 'Authorization: Basic YWRtaW5AbG9jYWw6VGhpc0lzUGFzc3dvcmQ=' \ -H 'Content-Type: application/json' | jq "."
  5. To validate the information provided to create the
    vSphere
    publisher endpoint, examine the response.
    { "id":"system-virtualcenter", "createdOn":1579251621392, "lastUpdatedOn":1579251621736, "errorMessage":"Endpoint policies are not configured", "supportCapture":false, "supportTest":false, "supportRelease":false, "supportTemplates":true, "supportOnlySourceControlledContent":false, "storeTemplates":false, "requestedBy":"admin@local", "name":"system-virtualcenter", "enabled":false, "category":"vSphere", "systemEndpoint":true, "server": "vCserver.my.company.com", "userName": "user@my.company.local", "password": "example_user_password", "reviewRequired":false, "contentLibraryId":"6036cf9a-2833-40a0-9c46-13dbd567e5e1", "endpointType":"SERVER_ENDPOINT", "userIdentity":"admin@local" }
  6. As a developer, create a
    vSphere
    endpoint to capture templates.
    curl -X POST \ '$url/lcm/cms/api/v1/endpoints' \ -H 'Authorization: Basic YWRtaW5AbG9jYWw6VGhpc0lzUGFzc3dvcmQ=' \ -H 'Content-Type: application/json' \ -d '{ "supportTemplates": false, "tagNames": ["tag1"], "endpointType": "CONTENT_ENDPOINT", "category": "vSphere", "name": "vc-endpoint", "server": "{<
    VC_IP_FQDN
    >}", "userName": "{<
    vcUsername
    >}", "password": "{<
    vcPassword
    >}", "supportCapture": true, "supportRelease": false }' | jq "."
  7. Examine the response to check the progress of the request and to get the reference ID.
    { "requestId":"eb405741-81fa-479c-912e-875644a1e392", "status":"IN_PROGRESS", "message":"Endpoint Successfully Created", "referenceId":"06f793ba-606f-4838-803d-c6819255d50b" }
  8. Assign the reference ID of the endpoint to a variable name.
    vSphereCaptureEndpoint = '<
    referenceID
    >'
  9. Get information about the
    vSphere
    capture endpoint.
    curl -X GET \ '$url/lcm/cms/api/v1/endpoints/{$vSphereCaptureEndpoint}' \ -H 'Accept: application/json' \ -H 'Authorization: Basic YWRtaW5AbG9jYWw6VGhpc0lzUGFzc3dvcmQ=' \ -H 'Content-Type: application/json' | jq "."
  10. To validate the information provided to create the
    vSphere
    capture endpoint, examine the response.
    { "id":"06f793ba-606f-4838-803d-c6819255d50b", "createdOn":1579251801788, "lastUpdatedOn":1579251801870, "supportCapture":true, "supportTest":false, "supportRelease":false, "supportTemplates":false, "supportOnlySourceControlledContent":false, "storeTemplates":false, "requestedBy":"admin@local", "name":"vc-endpoint", "enabled":true, "category":"vSphere", "systemEndpoint":false, "server": "vCserver.my.company.com", "userName": "user@my.company.local", "password": "example_user_password", "reviewRequired":false, "endpointType":"CONTENT_ENDPOINT", "userIdentity":"admin@local" }
  11. As a DevOps administrator, use
    vCenter
    to configure a library that subscribes to the
    vSphere
    environment where the developer wants to deploy templates.
  12. As a developer, add a
    vSphere
    endpoint that is configured with
    vCenter
    details to deploy a template to a network, datastore, or folder.
    curl -X POST \ '$url/lcm/cms/api/v1/endpoints' \ -H 'Authorization: Basic YWRtaW5AbG9jYWw6VGhpc0lzUGFzc3dvcmQ=' \ -H 'Content-Type: application/json' \ -d '{ "supportCapture": false, "supportTest": true, "supportRelease": true, "supportTemplates": true, "supportOnlySourceControlledContent": false, "storeTemplates": false, "requestedBy": "admin@local", "name": "lcm-vc1", "enabled": true, "category": "vSphere", "systemEndpoint": false, "server": "{<
    VC_IP_FQDN
    >}", "userName": "{<
    vcUsername
    >}", "password": "{<
    vcPassword
    >}", "targetDatacenter": "example_DC", "vcTargetHostName": "example_cluster, "vmTargetDatastore": "example_datastore", "vmTargetFolderPath": "/example_folder/", "vmTargetNetwork": "example_network", "reviewRequired": false, "endpointType": "CONTENT_ENDPOINT", "userIdentity": "admin@local", "tagNames": [] }' | jq "."
  13. Examine the response to check the progress of the request and to get the reference ID.
    { "requestId":"eb405741-81fa-479c-912e-875644a1e392", "status":"IN_PROGRESS", "message":"Endpoint Successfully Created", "referenceId":"06f793ba-606f-4838-803d-c6819255d50b" }
  14. Assign the reference ID of the endpoint to a variable name.
    vSphereDeployEndpoint = '<
    referenceID
    >'
  15. Get information about the
    vSphere
    deploy endpoint.
    curl -X GET \ '$url/lcm/cms/api/v1/endpoints/{$vSphereDeployEndpoint}' \ -H 'Accept: application/json' \ -H 'Authorization: Basic YWRtaW5AbG9jYWw6VGhpc0lzUGFzc3dvcmQ=' \ -H 'Content-Type: application/json' | jq "."
  16. To validate the information provided to create the
    vSphere
    deploy endpoint, examine the response.
    { "id":"06f793ba-606f-4838-803d-c6819255d50b", "createdOn":1579251801788, "lastUpdatedOn":1579251801870, "supportCapture": false, "supportTest": true, "supportRelease": true, "supportTemplates": true, "supportOnlySourceControlledContent": false, "storeTemplates": false, "requestedBy": "admin@local", "name": "lcm-vc1", "enabled": true, "category": "vSphere", "systemEndpoint": false, "server": "vCserver.my.company.com", "userName": "user@my.company.local", "password": "example_user_password", "targetDatacenter": "example_DC", "vcTargetHostName": "example_cluster, "vmTargetDatastore": "example_datastore", "vmTargetFolderPath": "/example_folder/", "vmTargetNetwork": "example_network", "reviewRequired": false, "endpointType": "CONTENT_ENDPOINT", "userIdentity": "admin@local", "tagNames": [] }
Use your endpoint to manage the following types of
vSphere
content:
  • vSphere-Template
  • vSphere-Custom Spec