Cloud Services

DevOps Intelligence

Bring Your Own Deploy
Published On Nov 05, 2024 - 1:34 PM

Bring Your Own Deploy

Learn how to integrate deploy tools to DevOps Intelligence
As a DevOps Intelligence user, you can leverage Deploy Service, our centralized service that displays all deployment results from various deployment tools within your DevOps Pipeline. Our platform shows data from tools like Argo CD and various cloud endpoints, as displayed in the following figure when data is populated. With Deploy Service, you can easily bring in deployments from multiple tools and also post deployments from different tools to DevOps Intelligence Deploy by utilizing the APIs that we provide. This way, you can efficiently monitor and manage your deployments across your entire DevOps ecosystem.

Bring Data into DevOps Intelligence

To bring your own Deploy tools complete the following steps:
  1. Go to the DevOps Intelligence Tools Configuration page and navigate to the Tokens tab.
  2. Click on Create Token and give a unique Token name.
  3. Select Token Type as Deployments, then click on the Create button.
  4. A new entry will be added to the table in the table entry.
  5. Click on the vertical ellipsis icon on the respective row and select the view/regenerate token option.
  6. Copy that token by clicking copy icon in the token field.
To Post Data to the APIs mentioned below, add the service Token (see: Create Service Token) to the
Authorization
header of the request. See the cURL Example for reference

Format

Step 1: TOKEN {the-service-token-from-step1}
Example :
TOKEN B8FkfCC3PRVrezteLHp0rPROs2p6yZk_swVLpP_36D7pd5HHLhx7UXqlH_BvpQGo
Step 2:  API Reference
API: /services/deployments
URL : https://{devops-intelligence-host}/dash/api/deployments/v4/technical-services/deployments
Parameters:
Parameter
Type
Explanation
Example Value
Deployment *
BODY
Deployment Data in Json
{ { "id": "6325a4ce1bb54ed5487e5911", "connections": [], "deploymentid": "256t767t7", "template_name": "sampleTechnicalService", "provider": "gocd", "providerCode": "gocd", "tool": "BYOD", "environment": "string", "release": "release-2022.09.30", "status": "Deployed", "name": "di-dashboard", "creation_date": "2022-09-12T07:20:50.52Z", "duration": 10057200, "endpoint_technical_service_id": "di-dashboard", "endpoint_hostname": "https://travis.com", "href": "https://appsvt2-di-release.multicloud-ibm.com/dash/api/deployments/v4/deployments/6325a4ce1bb54ed5487e5911", "servicehref": { "deployments": "https://appsvt2-di-release.multicloud-ibm.com/dash/api/deployments/v4/deployments/6325a4ce1bb54ed5487e5911/templates" }, "providerhref": "https://travis.com/1234", "technical_service": "sampleTechnicalService", "technical_service_id": "6325a67a2cf73f8af6382211", "unique_technical_service_id": "6325a4ce7f9d5f0c984d2d5c", "application_relationships": [ { "application_name": "Domino1", "application_id": "6325b3c277a1e154206b6985", "relationship_types": [ "uses" ] } ], "kcmp_app_href": "", "kcmp_app_name": "CCM", "technical_service_tag": { "SERVICE-UNIQUE-ID": "gocd:https://travis.com:di-dashboard:sampleTechnicalService", "additionalProp1": "string", "additionalProp2": "string", "additionalProp3": "string" }, "ismetered": true, "isproduction": true }, }

cURL Example :

Request
curl -X POST \ https://peer-core.gravitant.net/dash/api/deployments/v4/technical-services/dash_aws/deployments \ -H 'Authorization: Token zkkh_KmDI2Ib3-6i9eFzdm72zG32UtG4oQqkn63iDUeA5QoMC9RcAxU1Vy5sVFEG' \ -H 'Content-Type: application/json' \ -H 'cache-control: no-cache' \ -d '{ "creation_date": "2020-07-26T05:06:10.949Z", "deploymentid": "endpointID_1", "duration": 2345171, "name": "AWS", "provider": "AWS", "Details": { "CreationTime": "2020-07-27T13:30:39.181Z" }, "technical_service_name": "MCMP-DevOps-Intelligence/serviceName", "technicalserviceoverride": true }'
Response 200
{ "ID": "5f22c301ac17b7ba55644fba","EntityID":"endpointID_1" }

Build Request Body Explained

Field
Data Type
Explanation
Example Value
DeploymentID*
string
Object ID
5d69de78674bf10001ed4ce1
Name
string
Name of deployment
225-mcmp-aws-lamp-job
Provider*
string
Provider name
AWS
Status*
string
The deployment status
Deployed, deployed, DEPLOYED, Failed, failed, FAILED
Duration*
int64
Time required to run deployment in
microseconds
1005720
CreationDate*
string
Date and time of deployment
2019-10-12T07:20:50.52Z
ProviderHref
string
Endpoint Url
https://ec2-164-8-1.us-west-2.compute.amazonaws.com/api/v4/job_templates/16/jobs/?id=225
Details
map[string]interface{}
Additional details of a template(raw json file contents)
Raw JSON
technical_service_name*
string
Technical serviceName is an abstraction for deployments group
MCMP-DevOps-Intelligence/devProject1
serviceoverride
boolean
Override flag for the service
true
isProduction
boolean
If deployment is Production
true
Do you have two minutes for a quick survey?
Take Survey