Step 2: Run the Clone Operation
Once the checkpoint is confirmed, you can clone the current environment from a specified checkpoint by running the following steps:
When an environment is cloned, it replicates all the configuration and staged data used by the original environment. This process does not include data specific to the operational environment.
Also, clone is a long-term operation that will take up to 60 minutes and the target environment is unavailable during this period.
The schema is updated automatically as the best effort, but there is a chance it will fail when cloning across different major versions. In case of a failed clone, please submit a Service Request. |
Environment specific operational data such as credentials and properties are not replicated. Data that is not replicated can be controlled through an external configuration. However, provisioning information is cloned. |
Create a Clone
To create a clone of a specific checkpoint, submit the following work request:
HTTP Method |
|
Base URL |
|
Content-Type |
|
- Request Body Example
{ "<name>": <checkpointValue> }
In the body, replace name
and checkpointValue
with the name of the checkpoint that you have created and want to clone.
- Response Example
-
The successful creation of the checkpoint returns a 200 OK response with the following response body:
{ "uuid": "<uuid>", "requestType": "clone", "status": "<statusType>", "requestInfo": "{<request_Information>}", "createdBy": "<user_name>", "createdAt": "2022-05-31T06:04:18.39486333Z", "updatedBy": null, "lastUpdatedAt": "2022-05-31T06:04:18.394870245Z", "confirm": "https://<app-deployment-name>/console/workRequest/confirm/{uuid}", "cancel": "https://<app-deployment-name>/console/workRequest/cancel/{uuid}" }
Confirm the Clone Operation
To confirm the clone and save the configuration, submit the following GET
request with the appropriate UUID:
HTTP Method |
|
Base URL |
|
Content-Type |
|
Here, replace {uuid}
with uuid value that returned by POST http://<app-deployment-name>/workRequest/create/clone
.
- Response Example
{ "uuid": "<uuid>", "requestType": "clone", "status": "COMPLETED", "requestInfo": "{<request_Information>}", "createdBy": "<user_name>", "createdAt": "2022-05-17T06:02:14.908Z", "updatedBy": null, "lastUpdatedAt": "2022-05-17T06:16:54.409Z", "confirm": null, "cancel": null }
You can also confirm the work request by clicking on the Confirm URL returned in the POST http://<app-deployment-name>/workRequest/create/clone
response body.
It will redirect you to the GET request body and then sends the request.
Verify the Status
To know the status of the clone, submit the following GET request with the appropriate UUID:
HTTP Method |
|
Base URL |
|
Content-Type |
|
Here, replace {uuid} with uuid value that is returned by POST http://<app-deployment-name>/workRequest/create/clone.
- Response Example
{ "uuid": "<uuid>", "requestType": "<requestType>", "status": "COMPLETED", "requestInfo": "{<request_Information>}", "createdBy": "userName", "createdAt": "2022-05-17T06:02:14.908Z", "updatedBy": null, "lastUpdatedAt": "2022-05-17T06:16:54.409Z", "confirm": null, "cancel": null }
The response contains the following types of status:
-
New: Returns if the checkpoint is newly created.
-
Confirmed: Returns if the checkpoint is in-progress state.
-
Completed: Returns if the replication of the environment is completed.
-
Canceled: Returns if a user cancels the operation.
-
Expired: Returns if created checkpoint is expired.
-
Error: Returns if an error occurs in the operation.
List Clone Operations
To retrieve the details of a previous clone operation, send the following request:
HTTP Method |
|
Base URL |
|
Content-Type |
|
- Response Example
[ { "uuid": "<uuid>", "requestType": "<requestType>", "status": "<statusType>", "requestInfo": "{<request_Information>}", "createdBy": "<user_name>", "createdAt": "2022-04-25T06:41:56.422Z", "updatedBy": null, "lastUpdatedAt": "2022-05-12T11:25:50.718Z", "confirm": null, "cancel": null }, { "uuid": "<uuid>", "requestType": "<requestType>", "status": "<statusType>", "requestInfo": "{<request_Information>}", "createdBy": "<user_name>", "createdAt": "2022-04-25T00:59:28.263Z", "updatedBy": null, "lastUpdatedAt": "2022-05-12T11:25:50.712Z", "confirm": null, "cancel": null }, { "uuid": "<uuid>", "requestType": "<requestType>", "status": "<statusType>", "requestInfo": "{<request_Information>}", "createdBy": "<user_name>", "createdAt": "2022-04-26T08:09:09.376Z", "updatedBy": null, "lastUpdatedAt": "2022-04-26T08:14:44.992Z", "confirm": null, "cancel": null }, { "uuid": "<uuid>", "requestType": "<requestType>", "status": "<statusType>", "requestInfo": "{<request_Information>}", "createdBy": "<user_name>", "createdAt": "2022-04-26T08:14:46.434Z", "updatedBy": null, "lastUpdatedAt": "2022-04-26T08:22:29.072Z", "confirm": null, "cancel": null }, ]
Retrieve Specific Work Request
You can also retrieve the specific work request, by sending the following GET
request with the appropriate UUID:
HTTP Method |
|
Base URL |
|
Content-Type |
|
- Response Example
{ "createdAt": "2022-05-24T11:06:59.939Z", "createdBy": "<user_name", "lastUpdatedAt": "2022-05-24T11:06:59.939Z", "requestInfo": "{<request_Information>}", "requestType": "<request_type>", "status": <status_type>, "updatedBy": null, "uuid": "<uuid>", "cancel": "<url>", "confirm": "<url>" }
List All Work Request
You can also retrieve all the work request, by sending the following GET
request:
HTTP Method |
|
Base URL |
|
Content-Type |
|
- Response Example
[ { "uuid": "<uuid>", "requestType": "<request_type>", "status": "COMPLETED", "requestInfo": "{<request_Information>}", "createdBy": "<user_name>", "createdAt": "2023-04-27T12:55:28.453285Z", "updatedBy": null, "lastUpdatedAt": "2023-04-27T13:00:47.29001Z", "confirm": null, "cancel": null }, { "uuid": "<uuid>", "requestType": "<request_type>", "status": "ERRORED", "requestInfo": "{<request_Information>}" "createdBy": "<user_name>", "createdAt": "2023-05-01T18:23:57.40588Z", "updatedBy": null, "lastUpdatedAt": "2023-05-01T18:24:17.131344Z", "confirm": null, "cancel": null },