BatchGetDeploymentTargets Powershell Example
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll"
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
$rest = New-Object Chilkat.Rest
$authAws = New-Object Chilkat.AuthAws
$authAws.AccessKey = "AWS_ACCESS_KEY"
$authAws.SecretKey = "AWS_SECRET_KEY"
# Don't forget to change the region to your particular region. (Also make the same change in the call to Connect below.)
$authAws.Region = "us-west-2"
$authAws.ServiceName = "codedeploy"
# SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
$rest.SetAuthAws($authAws)
# URL: https://codedeploy.us-west-2.amazonaws.com/
# Use the same region as specified above.
$success = $rest.Connect("codedeploy.us-west-2.amazonaws.com",443,$true,$true)
if ($success -ne $true) {
$("ConnectFailReason: " + $rest.ConnectFailReason)
$($rest.LastErrorText)
exit
}
# The following code creates the JSON request body.
# The JSON created by this code is shown below.
# Use this online tool to generate code from sample JSON:
# Generate Code to Create JSON
$json = New-Object Chilkat.JsonObject
$json.UpdateString("deploymentId","string")
$json.UpdateString("targetIds[0]","string")
# The JSON request body created by the above code:
# {
# "deploymentId": "string",
# "targetIds": [
# "string"
# ]
# }
$rest.AddHeader("Content-Type","application/x-amz-json-1.1")
$rest.AddHeader("X-Amz-Target","CodeDeploy_20141006.BatchGetDeploymentTargets")
$sbRequestBody = New-Object Chilkat.StringBuilder
$json.EmitSb($sbRequestBody)
$sbResponseBody = New-Object Chilkat.StringBuilder
$success = $rest.FullRequestSb("POST","/",$sbRequestBody,$sbResponseBody)
if ($success -ne $true) {
$($rest.LastErrorText)
exit
}
$respStatusCode = $rest.ResponseStatusCode
$("response status code = " + $respStatusCode)
if ($respStatusCode -ne 200) {
$("Response Header:")
$($rest.ResponseHeader)
$("Response Body:")
$($sbResponseBody.GetAsString())
exit
}
$jResp = New-Object Chilkat.JsonObject
$jResp.LoadSb($sbResponseBody)
# The following code parses the JSON response.
# A sample JSON response is shown below the sample code.
# Use this online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
$i = 0
$count_i = $jResp.SizeOfArray("deploymentTargets")
while ($i -lt $count_i) {
$jResp.I = $i
$DeploymentId = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.deploymentId")
$LastUpdatedAt = $jResp.IntOf("deploymentTargets[i].cloudFormationTarget.lastUpdatedAt")
$ResourceType = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.resourceType")
$Status = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.status")
$TargetId = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.targetId")
$TargetVersionWeight = $jResp.IntOf("deploymentTargets[i].cloudFormationTarget.targetVersionWeight")
$deploymentTargetType = $jResp.StringOf("deploymentTargets[i].deploymentTargetType")
$ecsTargetDeploymentId = $jResp.StringOf("deploymentTargets[i].ecsTarget.deploymentId")
$ecsTargetLastUpdatedAt = $jResp.IntOf("deploymentTargets[i].ecsTarget.lastUpdatedAt")
$ecsTargetStatus = $jResp.StringOf("deploymentTargets[i].ecsTarget.status")
$TargetArn = $jResp.StringOf("deploymentTargets[i].ecsTarget.targetArn")
$ecsTargetTargetId = $jResp.StringOf("deploymentTargets[i].ecsTarget.targetId")
$instanceTargetDeploymentId = $jResp.StringOf("deploymentTargets[i].instanceTarget.deploymentId")
$InstanceLabel = $jResp.StringOf("deploymentTargets[i].instanceTarget.instanceLabel")
$instanceTargetLastUpdatedAt = $jResp.IntOf("deploymentTargets[i].instanceTarget.lastUpdatedAt")
$instanceTargetStatus = $jResp.StringOf("deploymentTargets[i].instanceTarget.status")
$instanceTargetTargetArn = $jResp.StringOf("deploymentTargets[i].instanceTarget.targetArn")
$instanceTargetTargetId = $jResp.StringOf("deploymentTargets[i].instanceTarget.targetId")
$lambdaTargetDeploymentId = $jResp.StringOf("deploymentTargets[i].lambdaTarget.deploymentId")
$CurrentVersion = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lambdaFunctionInfo.currentVersion")
$FunctionAlias = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lambdaFunctionInfo.functionAlias")
$FunctionName = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lambdaFunctionInfo.functionName")
$TargetVersion = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lambdaFunctionInfo.targetVersion")
$LambdaFunctionInfoTargetVersionWeight = $jResp.IntOf("deploymentTargets[i].lambdaTarget.lambdaFunctionInfo.targetVersionWeight")
$lambdaTargetLastUpdatedAt = $jResp.IntOf("deploymentTargets[i].lambdaTarget.lastUpdatedAt")
$lambdaTargetStatus = $jResp.StringOf("deploymentTargets[i].lambdaTarget.status")
$lambdaTargetTargetArn = $jResp.StringOf("deploymentTargets[i].lambdaTarget.targetArn")
$lambdaTargetTargetId = $jResp.StringOf("deploymentTargets[i].lambdaTarget.targetId")
$j = 0
$count_j = $jResp.SizeOfArray("deploymentTargets[i].cloudFormationTarget.lifecycleEvents")
while ($j -lt $count_j) {
$jResp.J = $j
$ErrorCode = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].diagnostics.errorCode")
$LogTail = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].diagnostics.logTail")
$Message = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].diagnostics.message")
$ScriptName = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].diagnostics.scriptName")
$endTime = $jResp.IntOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].endTime")
$lifecycleEventName = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].lifecycleEventName")
$startTime = $jResp.IntOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].startTime")
$status = $jResp.StringOf("deploymentTargets[i].cloudFormationTarget.lifecycleEvents[j].status")
$j = $j + 1
}
$j = 0
$count_j = $jResp.SizeOfArray("deploymentTargets[i].ecsTarget.lifecycleEvents")
while ($j -lt $count_j) {
$jResp.J = $j
$diagnosticsErrorCode = $jResp.StringOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].diagnostics.errorCode")
$diagnosticsLogTail = $jResp.StringOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].diagnostics.logTail")
$diagnosticsMessage = $jResp.StringOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].diagnostics.message")
$diagnosticsScriptName = $jResp.StringOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].diagnostics.scriptName")
$endTime = $jResp.IntOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].endTime")
$lifecycleEventName = $jResp.StringOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].lifecycleEventName")
$startTime = $jResp.IntOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].startTime")
$status = $jResp.StringOf("deploymentTargets[i].ecsTarget.lifecycleEvents[j].status")
$j = $j + 1
}
$j = 0
$count_j = $jResp.SizeOfArray("deploymentTargets[i].ecsTarget.taskSetsInfo")
while ($j -lt $count_j) {
$jResp.J = $j
$desiredCount = $jResp.IntOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].desiredCount")
$identifer = $jResp.StringOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].identifer")
$pendingCount = $jResp.IntOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].pendingCount")
$runningCount = $jResp.IntOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].runningCount")
$status = $jResp.StringOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].status")
$Name = $jResp.StringOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].targetGroup.name")
$taskSetLabel = $jResp.StringOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].taskSetLabel")
$trafficWeight = $jResp.IntOf("deploymentTargets[i].ecsTarget.taskSetsInfo[j].trafficWeight")
$j = $j + 1
}
$j = 0
$count_j = $jResp.SizeOfArray("deploymentTargets[i].instanceTarget.lifecycleEvents")
while ($j -lt $count_j) {
$jResp.J = $j
$diagnosticsErrorCode = $jResp.StringOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].diagnostics.errorCode")
$diagnosticsLogTail = $jResp.StringOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].diagnostics.logTail")
$diagnosticsMessage = $jResp.StringOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].diagnostics.message")
$diagnosticsScriptName = $jResp.StringOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].diagnostics.scriptName")
$endTime = $jResp.IntOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].endTime")
$lifecycleEventName = $jResp.StringOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].lifecycleEventName")
$startTime = $jResp.IntOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].startTime")
$status = $jResp.StringOf("deploymentTargets[i].instanceTarget.lifecycleEvents[j].status")
$j = $j + 1
}
$j = 0
$count_j = $jResp.SizeOfArray("deploymentTargets[i].lambdaTarget.lifecycleEvents")
while ($j -lt $count_j) {
$jResp.J = $j
$diagnosticsErrorCode = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].diagnostics.errorCode")
$diagnosticsLogTail = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].diagnostics.logTail")
$diagnosticsMessage = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].diagnostics.message")
$diagnosticsScriptName = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].diagnostics.scriptName")
$endTime = $jResp.IntOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].endTime")
$lifecycleEventName = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].lifecycleEventName")
$startTime = $jResp.IntOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].startTime")
$status = $jResp.StringOf("deploymentTargets[i].lambdaTarget.lifecycleEvents[j].status")
$j = $j + 1
}
$i = $i + 1
}
# A sample JSON response body parsed by the above code:
# {
# "deploymentTargets": [
# {
# "cloudFormationTarget": {
# "deploymentId": "string",
# "lastUpdatedAt": number,
# "lifecycleEvents": [
# {
# "diagnostics": {
# "errorCode": "string",
# "logTail": "string",
# "message": "string",
# "scriptName": "string"
# },
# "endTime": number,
# "lifecycleEventName": "string",
# "startTime": number,
# "status": "string"
# }
# ],
# "resourceType": "string",
# "status": "string",
# "targetId": "string",
# "targetVersionWeight": number
# },
# "deploymentTargetType": "string",
# "ecsTarget": {
# "deploymentId": "string",
# "lastUpdatedAt": number,
# "lifecycleEvents": [
# {
# "diagnostics": {
# "errorCode": "string",
# "logTail": "string",
# "message": "string",
# "scriptName": "string"
# },
# "endTime": number,
# "lifecycleEventName": "string",
# "startTime": number,
# "status": "string"
# }
# ],
# "status": "string",
# "targetArn": "string",
# "targetId": "string",
# "taskSetsInfo": [
# {
# "desiredCount": number,
# "identifer": "string",
# "pendingCount": number,
# "runningCount": number,
# "status": "string",
# "targetGroup": {
# "name": "string"
# },
# "taskSetLabel": "string",
# "trafficWeight": number
# }
# ]
# },
# "instanceTarget": {
# "deploymentId": "string",
# "instanceLabel": "string",
# "lastUpdatedAt": number,
# "lifecycleEvents": [
# {
# "diagnostics": {
# "errorCode": "string",
# "logTail": "string",
# "message": "string",
# "scriptName": "string"
# },
# "endTime": number,
# "lifecycleEventName": "string",
# "startTime": number,
# "status": "string"
# }
# ],
# "status": "string",
# "targetArn": "string",
# "targetId": "string"
# },
# "lambdaTarget": {
# "deploymentId": "string",
# "lambdaFunctionInfo": {
# "currentVersion": "string",
# "functionAlias": "string",
# "functionName": "string",
# "targetVersion": "string",
# "targetVersionWeight": number
# },
# "lastUpdatedAt": number,
# "lifecycleEvents": [
# {
# "diagnostics": {
# "errorCode": "string",
# "logTail": "string",
# "message": "string",
# "scriptName": "string"
# },
# "endTime": number,
# "lifecycleEventName": "string",
# "startTime": number,
# "status": "string"
# }
# ],
# "status": "string",
# "targetArn": "string",
# "targetId": "string"
# }
# }
# ]
# }