System Prechecks APIs

System Prechecks APIs

APIs for managing System Prechecks

Table of Contents

1. Perform System Precheck

Precheck System API is used to perform the required system level health checks and upgrade pre-checks for an upgrade to be successful. Make sure to run these checks before performing any upgrade.

Tip : Refer to: Get the Upgradables to query for the list of upgradables which can be used for performing Domain, Cluster level checks.

1.1. Prerequisites API

The following data is required:

  • Resource ID. Ex: Domain ID, Cluster ID.

  • Resource Type. Ex: DOMAIN, CLUSTER.

Tip : Refer to: PrecheckSpec and Resource.

Note : Supported Resource Type's are DOMAIN, CLUSTER. For Cluster level checks, the Cluster ID's can be retrieved based on the Host's that are available for upgrade, Refer to: Get the Hosts and Get the Clusters API's.

1.2. Steps API

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

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/system/prechecks' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "resources" : [ {
    "resourceId" : "bbd38966-8537-46f1-9a54-06fbfe7079c6",
    "type" : "DOMAIN"
  } ]
}'

HTTP Request

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

{
  "resources" : [ {
    "resourceId" : "bbd38966-8537-46f1-9a54-06fbfe7079c6",
    "type" : "DOMAIN"
  } ]
}

HTTP Response

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/system/prechecks/tasks/0a165b4b-ba28-4749-9f46-3ccbd3f0b006
Content-Length: 692

{
  "id" : "0a165b4b-ba28-4749-9f46-3ccbd3f0b006",
  "name" : "Precheck Task",
  "type" : "PRECHECK",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2024-06-21T02:47:47.411Z",
  "completionTimestamp" : "2024-06-21T02:47:47.411Z",
  "subTasks" : [ {
    "name" : "Upgrade - DOMAIN ",
    "description" : "Upgrade - DOMAIN ",
    "status" : "PENDING",
    "creationTimestamp" : "2024-06-21T02:47:47.411Z",
    "resources" : [ {
      "resourceId" : "12fd6423-00db-474f-8b61-be184505e455",
      "type" : "DOMAIN"
    } ]
  } ],
  "resources" : [ {
    "resourceId" : "12fd6423-00db-474f-8b61-be184505e455",
    "type" : "DOMAIN"
  } ],
  "isCancellable" : false,
  "isRetryable" : false
}
  • Poll the status of the task using the precheck task API with the ID from the response of the previous API.

Tip : Refer to: Get System Precheck Task.

[_getupgradables] API [_startprecheck] API [_getprechecktask] API [_performupgrade] API

2. Get System Precheck Task

Get Precheck Task by ID API is used to retrieve a precheck task.

2.1. Prerequisites API

The following data is required

  • ID of the precheck task

2.2. Steps API

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

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/system/prechecks/tasks/0a165b4b-ba28-4749-9f46-3ccbd3f0b006' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Response

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

{
  "id" : "0a165b4b-ba28-4749-9f46-3ccbd3f0b006",
  "name" : "Precheck Task",
  "type" : "PRECHECK",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2024-06-21T02:47:48.259Z",
  "completionTimestamp" : "2024-06-21T02:47:48.259Z",
  "subTasks" : [ {
    "name" : "Upgrade - DOMAIN ",
    "description" : "Upgrade - DOMAIN ",
    "status" : "PENDING",
    "creationTimestamp" : "2024-06-21T02:47:48.259Z",
    "resources" : [ {
      "resourceId" : "12fd6423-00db-474f-8b61-be184505e455",
      "type" : "DOMAIN"
    } ]
  } ],
  "resources" : [ {
    "resourceId" : "12fd6423-00db-474f-8b61-be184505e455",
    "type" : "DOMAIN"
  } ],
  "isCancellable" : false,
  "isRetryable" : false
}

HTTP Response

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

{
  "id" : "0a165b4b-ba28-4749-9f46-3ccbd3f0b006",
  "name" : "Precheck Task",
  "type" : "PRECHECK",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2024-06-21T02:47:48.259Z",
  "completionTimestamp" : "2024-06-21T02:47:48.259Z",
  "subTasks" : [ {
    "name" : "Upgrade - DOMAIN ",
    "description" : "Upgrade - DOMAIN ",
    "status" : "PENDING",
    "creationTimestamp" : "2024-06-21T02:47:48.259Z",
    "resources" : [ {
      "resourceId" : "12fd6423-00db-474f-8b61-be184505e455",
      "type" : "DOMAIN"
    } ]
  } ],
  "resources" : [ {
    "resourceId" : "12fd6423-00db-474f-8b61-be184505e455",
    "type" : "DOMAIN"
  } ],
  "isCancellable" : false,
  "isRetryable" : false
}

[_getupgradables] API [_startprecheck] API [_getprechecktask] API [_performupgrade] API
Last updated 2024-06-21 01:22:12 -0700

Operations
GET
Get Precheck Task Deprecated
Retrieve a precheck task by its id
POST
Start Precheck Deprecated
Start a system precheck