Bundles APIs

Bundles APIs

APIs for managing Bundles

Table of Contents

1. Upload a Bundle

Offline:

  • Upload a Bundle API is used to upload Bundles which are downloaded using Bundle Transfer Utility tool.

Tip : Please refer to the VMware Cloud Foundation documentation for more information on the Bundle Transfer Utility tool.

1.1. Prerequisites

The following data is required:

  • Bundle file path.

  • Bundle manifest file path.

  • Bundle manifest signature file path.

Tip : Refer to: BundleUploadSpec.

1.2. Steps

  • Invoke the API. This API returns a task which can be polled and monitored.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "bundleFilePath" : "/home/vcf/bundles/bundle-11237.tar",
  "manifestFilePath" : "/home/vcf/bundles/bundle-11237.manifest",
  "signatureFilePath" : "/home/vcf/bundles/bundle-11237.manifest.sig"
}'

HTTP Request

POST /v1/bundles HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 198
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "bundleFilePath" : "/home/vcf/bundles/bundle-11237.tar",
  "manifestFilePath" : "/home/vcf/bundles/bundle-11237.manifest",
  "signatureFilePath" : "/home/vcf/bundles/bundle-11237.manifest.sig"
}

HTTP Response

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/8f4e606b-af58-4a4f-80c8-00b3cfb30a47
Content-Length: 366

{
  "id" : "8f4e606b-af58-4a4f-80c8-00b3cfb30a47",
  "name" : "Upload BUNDLE - PSC:6.7.0-13010631 VCENTER:6.7.0-13010631",
  "type" : "BUNDLE_UPLOAD",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2022-09-28T07:27:22.129Z",
  "resources" : [ {
    "resourceId" : "c47bced6-4cc9-4748-9e5a-8bd20a7d1da1",
    "type" : "BUNDLE"
  } ],
  "isCancellable" : false
}
  • Poll the status of the task using the task API with the ID from the response of the previous API.

Tip : Refer to: Get a Task.

2. Upload a Partner Bundle

Offline:

  • Upload a Bundle API is used to upload partner Bundles.

Tip : Please refer to the VMware Cloud Foundation documentation for more information.

2.1. Prerequisites

The following data is required:

  • Partner bundle version.

  • Partner bundle metadata file path.

  • Software compatibility sets file path.

Tip : Refer to: BundleUploadSpec.

2.2. Steps

  • Invoke the API. This API returns a task which can be polled and monitored.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json",
  "partnerExtensionSpec" : {
    "partnerBundleVersion" : "4.7.410-26262335",
    "partnerBundleMetadataFilePath" : "/home/vcf/bundles/partnerBundleMetadata.json"
  }
}'

HTTP Request

POST /v1/bundles HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 254
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json",
  "partnerExtensionSpec" : {
    "partnerBundleVersion" : "4.7.410-26262335",
    "partnerBundleMetadataFilePath" : "/home/vcf/bundles/partnerBundleMetadata.json"
  }
}

HTTP Response

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/8f4e606b-af58-4a4f-80c8-00b3cfb30a47
Content-Length: 346

{
  "id" : "8f4e606b-af58-4a4f-80c8-00b3cfb30a47",
  "name" : "Upload BUNDLE - VXRAIL:6.7.0-13006603",
  "type" : "BUNDLE_UPLOAD",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2022-09-28T07:27:20.868Z",
  "resources" : [ {
    "resourceId" : "c47bced6-4cc9-4748-9e5a-8bd20a7d1da1",
    "type" : "BUNDLE"
  } ],
  "isCancellable" : false
}
  • Poll the status of the task using the task API with the ID from the response of the previous API.

Tip : Refer to: Get a Task.

3. Update Software compatibility sets

Offline:

  • Update software compatibility sets for Bundles API is used to update software compatibility sets for Bundles.

Tip : Please refer to the VMware Cloud Foundation documentation for more information.

3.1. Prerequisites

The following data is required:

  • Software compatibility sets file path.

Tip : Refer to: BundleUpdateSpec.

3.2. Steps

  • Invoke the API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles/' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json"
}'

HTTP Request

PATCH /v1/bundles/ HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 86
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json"
}

HTTP Response

HTTP/1.1 202 Accepted

4. Get the Bundles

  • Get the Bundles API is used to get all the bundles.

4.1. Prerequisites

None

4.2. Steps

  • Invoke the API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles' -i -X GET \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/bundles HTTP/1.1
Accept: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1773

{
  "elements" : [ {
    "id" : "c47bced6-4cc9-4748-9e5a-8bd20a7d1da1",
    "type" : "VMWARE_SOFTWARE",
    "description" : "ESX update bundle -  13004448(67EP7)==>13010696 (vsphere67U2)",
    "version" : "253.0.0-111959",
    "severity" : null,
    "vendor" : "VMware",
    "releasedDate" : "2019-05-10T10:29:10.645Z",
    "isCumulative" : false,
    "isCompliant" : null,
    "sizeMB" : 453.0,
    "downloadStatus" : "SUCCESSFUL",
    "components" : [ {
      "description" : "ESX_HOST Update Bundle",
      "vendor" : "VMware",
      "releasedDate" : "2019-05-10T10:29:10.645Z",
      "toVersion" : "6.7.0-13006603",
      "fromVersion" : "6.7.0-13004448",
      "imageType" : "PATCH",
      "id" : "a65d9d83-88b9-475f-a2ba-ee5d9be34f8d",
      "type" : "HOST",
      "isUserInputRequired" : null
    } ],
    "applicabilityStatus" : null,
    "applicabilityOrder" : null,
    "isPartiallyUpgraded" : null
  }, {
    "id" : "d4463586-8a27-4b58-8a48-f7c37996bd53",
    "type" : "VMWARE_SOFTWARE",
    "description" : "vCenter update bundle",
    "version" : "253.0.0-111959",
    "severity" : null,
    "vendor" : "VMware",
    "releasedDate" : "2019-05-10T10:29:10.645Z",
    "isCumulative" : false,
    "isCompliant" : null,
    "sizeMB" : 453.0,
    "downloadStatus" : "SUCCESSFUL",
    "components" : [ {
      "description" : "vCenter Update Bundle",
      "vendor" : "VMware",
      "releasedDate" : "2019-05-10T10:29:10.645Z",
      "toVersion" : "6.7.0-13006603",
      "fromVersion" : "6.7.0-13004448",
      "imageType" : "PATCH",
      "id" : "a67d9d83-88b9-475f-a2ba-ee5d9be34f4d",
      "type" : "VCENTER",
      "isUserInputRequired" : null
    } ],
    "applicabilityStatus" : null,
    "applicabilityOrder" : null,
    "isPartiallyUpgraded" : null
  } ]
}

5. Get a Bundle

  • Get a Bundle API is used to get a specific bundle.

5.1. Prerequisites

The following data is required:

  • ID of the Bundle

5.2. Steps

  • Invoke the API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles/c47bced6-4cc9-4748-9e5a-8bd20a7d1da1' -i -X GET \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/bundles/c47bced6-4cc9-4748-9e5a-8bd20a7d1da1 HTTP/1.1
Accept: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 803

{
  "id" : "d4463586-8a27-4b58-8a48-f7c37996bd53",
  "type" : "VMWARE_SOFTWARE",
  "description" : "vCenter update bundle",
  "version" : "253.0.0-111959",
  "severity" : null,
  "vendor" : "VMware",
  "releasedDate" : "2019-05-10T10:29:10.645Z",
  "isCumulative" : false,
  "isCompliant" : null,
  "sizeMB" : 453.0,
  "downloadStatus" : "SUCCESSFUL",
  "components" : [ {
    "description" : "vCenter Update Bundle",
    "vendor" : "VMware",
    "releasedDate" : "2019-05-10T10:29:10.645Z",
    "toVersion" : "6.7.0-13006603",
    "fromVersion" : "6.7.0-13004448",
    "imageType" : "PATCH",
    "id" : "a67d9d83-88b9-475f-a2ba-ee5d9be34f4d",
    "type" : "VCENTER",
    "isUserInputRequired" : null
  } ],
  "applicabilityStatus" : null,
  "applicabilityOrder" : null,
  "isPartiallyUpgraded" : null
}

6. Update Bundle for Downloading

Online:

  • Update a Bundle for downloading from depot API is used to Download Bundles from the depot.

Tip : Refer to: Update Depot Settings to configure My VMware and Dell EMC Support Account in SDDC Manager.

6.1. Prerequisites

The following data is required

  • ID of the bundle to be downloaded.

Tip : Refer to: BundleUpdateSpec and BundleDownloadSpec.

6.2. Steps

  • Invoke the API. This API returns a task which can be polled and monitored.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles/c47bced6-4cc9-4748-9e5a-8bd20a7d1da1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "bundleDownloadSpec" : {
    "downloadNow" : true
  }
}'

HTTP Request

PATCH /v1/bundles/c47bced6-4cc9-4748-9e5a-8bd20a7d1da1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 59
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "bundleDownloadSpec" : {
    "downloadNow" : true
  }
}

HTTP Response

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/5106a75e-b106-4e6c-bbbd-29aeaaf5691e
Content-Length: 370

{
  "id" : "5106a75e-b106-4e6c-bbbd-29aeaaf5691e",
  "name" : "Download BUNDLE - PSC:6.7.0-13010631 VCENTER:6.7.0-13010631",
  "type" : "BUNDLE_DOWNLOAD",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2022-09-28T07:27:20.529Z",
  "resources" : [ {
    "resourceId" : "c47bced6-4cc9-4748-9e5a-8bd20a7d1da1",
    "type" : "BUNDLE"
  } ],
  "isCancellable" : false
}
  • Poll the status of the task using the task API with the ID from the response of the previous API.

Tip : Refer to: Get a Task.

Last updated 2023-04-27 11:11:38 PDT

Operations
GET
Get Bundle
Get a Bundle
GET
Get Bundles
Get the Bundles
GET
Get Bundles For Skip Upgrade Using GET
Get bundles for skip upgrade a domain from current version to target version.
PATCH
Update Bundle
Update a Bundle for downloading from depot
PATCH
Update Bundle Compatibility Sets
Update software compatibility sets for Bundles
POST
Upload Bundle
Upload a Bundle