RetryBuild Classic ASP Example
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
set rest = Server.CreateObject("Chilkat_9_5_0.Rest")
set authAws = Server.CreateObject("Chilkat_9_5_0.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 = "codebuild"
' SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
success = rest.SetAuthAws(authAws)
' URL: https://codebuild.us-west-2.amazonaws.com/
' Use the same region as specified above.
success = rest.Connect("codebuild.us-west-2.amazonaws.com",443,1,1)
If (success <> 1) Then
Response.Write "<pre>" & Server.HTMLEncode( "ConnectFailReason: " & rest.ConnectFailReason) & "</pre>"
Response.Write "<pre>" & Server.HTMLEncode( rest.LastErrorText) & "</pre>"
Response.End
End If
' 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
set json = Server.CreateObject("Chilkat_9_5_0.JsonObject")
success = json.UpdateString("id","string")
success = json.UpdateString("idempotencyToken","string")
' The JSON request body created by the above code:
' {
' "id": "string",
' "idempotencyToken": "string"
' }
success = rest.AddHeader("Content-Type","application/x-amz-json-1.1")
success = rest.AddHeader("X-Amz-Target","CodeBuild_20161006.RetryBuild")
set sbRequestBody = Server.CreateObject("Chilkat_9_5_0.StringBuilder")
success = json.EmitSb(sbRequestBody)
set sbResponseBody = Server.CreateObject("Chilkat_9_5_0.StringBuilder")
success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody)
If (success <> 1) Then
Response.Write "<pre>" & Server.HTMLEncode( rest.LastErrorText) & "</pre>"
Response.End
End If
respStatusCode = rest.ResponseStatusCode
Response.Write "<pre>" & Server.HTMLEncode( "response status code = " & respStatusCode) & "</pre>"
If (respStatusCode <> 200) Then
Response.Write "<pre>" & Server.HTMLEncode( "Response Header:") & "</pre>"
Response.Write "<pre>" & Server.HTMLEncode( rest.ResponseHeader) & "</pre>"
Response.Write "<pre>" & Server.HTMLEncode( "Response Body:") & "</pre>"
Response.Write "<pre>" & Server.HTMLEncode( sbResponseBody.GetAsString()) & "</pre>"
Response.End
End If
set jResp = Server.CreateObject("Chilkat_9_5_0.JsonObject")
success = 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
Arn = jResp.StringOf("build.arn")
ArtifactIdentifier = jResp.StringOf("build.artifacts.artifactIdentifier")
BucketOwnerAccess = jResp.StringOf("build.artifacts.bucketOwnerAccess")
EncryptionDisabled = jResp.IntOf("build.artifacts.encryptionDisabled")
Location = jResp.StringOf("build.artifacts.location")
Md5sum = jResp.StringOf("build.artifacts.md5sum")
OverrideArtifactName = jResp.IntOf("build.artifacts.overrideArtifactName")
Sha256sum = jResp.StringOf("build.artifacts.sha256sum")
BuildBatchArn = jResp.StringOf("build.buildBatchArn")
BuildComplete = jResp.IntOf("build.buildComplete")
BuildNumber = jResp.IntOf("build.buildNumber")
BuildStatus = jResp.StringOf("build.buildStatus")
CacheLocation = jResp.StringOf("build.cache.location")
v_Type = jResp.StringOf("build.cache.type")
CurrentPhase = jResp.StringOf("build.currentPhase")
SessionEnabled = jResp.IntOf("build.debugSession.sessionEnabled")
SessionTarget = jResp.StringOf("build.debugSession.sessionTarget")
EncryptionKey = jResp.StringOf("build.encryptionKey")
EndTime = jResp.IntOf("build.endTime")
Certificate = jResp.StringOf("build.environment.certificate")
ComputeType = jResp.StringOf("build.environment.computeType")
Image = jResp.StringOf("build.environment.image")
ImagePullCredentialsType = jResp.StringOf("build.environment.imagePullCredentialsType")
PrivilegedMode = jResp.IntOf("build.environment.privilegedMode")
Credential = jResp.StringOf("build.environment.registryCredential.credential")
CredentialProvider = jResp.StringOf("build.environment.registryCredential.credentialProvider")
EnvironmentType = jResp.StringOf("build.environment.type")
Id = jResp.StringOf("build.id")
Initiator = jResp.StringOf("build.initiator")
GroupName = jResp.StringOf("build.logs.cloudWatchLogs.groupName")
Status = jResp.StringOf("build.logs.cloudWatchLogs.status")
StreamName = jResp.StringOf("build.logs.cloudWatchLogs.streamName")
CloudWatchLogsArn = jResp.StringOf("build.logs.cloudWatchLogsArn")
DeepLink = jResp.StringOf("build.logs.deepLink")
LogsGroupName = jResp.StringOf("build.logs.groupName")
S3DeepLink = jResp.StringOf("build.logs.s3DeepLink")
S3LogsBucketOwnerAccess = jResp.StringOf("build.logs.s3Logs.bucketOwnerAccess")
S3LogsEncryptionDisabled = jResp.IntOf("build.logs.s3Logs.encryptionDisabled")
S3LogsLocation = jResp.StringOf("build.logs.s3Logs.location")
S3LogsStatus = jResp.StringOf("build.logs.s3Logs.status")
S3LogsArn = jResp.StringOf("build.logs.s3LogsArn")
LogsStreamName = jResp.StringOf("build.logs.streamName")
NetworkInterfaceId = jResp.StringOf("build.networkInterface.networkInterfaceId")
SubnetId = jResp.StringOf("build.networkInterface.subnetId")
ProjectName = jResp.StringOf("build.projectName")
QueuedTimeoutInMinutes = jResp.IntOf("build.queuedTimeoutInMinutes")
ResolvedSourceVersion = jResp.StringOf("build.resolvedSourceVersion")
ServiceRole = jResp.StringOf("build.serviceRole")
Resource = jResp.StringOf("build.source.auth.resource")
AuthType = jResp.StringOf("build.source.auth.type")
Buildspec = jResp.StringOf("build.source.buildspec")
Context = jResp.StringOf("build.source.buildStatusConfig.context")
TargetUrl = jResp.StringOf("build.source.buildStatusConfig.targetUrl")
GitCloneDepth = jResp.IntOf("build.source.gitCloneDepth")
FetchSubmodules = jResp.IntOf("build.source.gitSubmodulesConfig.fetchSubmodules")
InsecureSsl = jResp.IntOf("build.source.insecureSsl")
SourceLocation = jResp.StringOf("build.source.location")
ReportBuildStatus = jResp.IntOf("build.source.reportBuildStatus")
SourceIdentifier = jResp.StringOf("build.source.sourceIdentifier")
SourceType = jResp.StringOf("build.source.type")
SourceVersion = jResp.StringOf("build.sourceVersion")
StartTime = jResp.IntOf("build.startTime")
TimeoutInMinutes = jResp.IntOf("build.timeoutInMinutes")
VpcId = jResp.StringOf("build.vpcConfig.vpcId")
i = 0
count_i = jResp.SizeOfArray("build.cache.modes")
Do While i < count_i
jResp.I = i
strVal = jResp.StringOf("build.cache.modes[i]")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.environment.environmentVariables")
Do While i < count_i
jResp.I = i
name = jResp.StringOf("build.environment.environmentVariables[i].name")
v_type = jResp.StringOf("build.environment.environmentVariables[i].type")
value = jResp.StringOf("build.environment.environmentVariables[i].value")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.exportedEnvironmentVariables")
Do While i < count_i
jResp.I = i
name = jResp.StringOf("build.exportedEnvironmentVariables[i].name")
value = jResp.StringOf("build.exportedEnvironmentVariables[i].value")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.fileSystemLocations")
Do While i < count_i
jResp.I = i
identifier = jResp.StringOf("build.fileSystemLocations[i].identifier")
location = jResp.StringOf("build.fileSystemLocations[i].location")
mountOptions = jResp.StringOf("build.fileSystemLocations[i].mountOptions")
mountPoint = jResp.StringOf("build.fileSystemLocations[i].mountPoint")
v_type = jResp.StringOf("build.fileSystemLocations[i].type")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.phases")
Do While i < count_i
jResp.I = i
durationInSeconds = jResp.IntOf("build.phases[i].durationInSeconds")
endTime = jResp.IntOf("build.phases[i].endTime")
phaseStatus = jResp.StringOf("build.phases[i].phaseStatus")
phaseType = jResp.StringOf("build.phases[i].phaseType")
startTime = jResp.IntOf("build.phases[i].startTime")
j = 0
count_j = jResp.SizeOfArray("build.phases[i].contexts")
Do While j < count_j
jResp.J = j
message = jResp.StringOf("build.phases[i].contexts[j].message")
statusCode = jResp.StringOf("build.phases[i].contexts[j].statusCode")
j = j + 1
Loop
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.reportArns")
Do While i < count_i
jResp.I = i
strVal = jResp.StringOf("build.reportArns[i]")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.secondaryArtifacts")
Do While i < count_i
jResp.I = i
artifactIdentifier = jResp.StringOf("build.secondaryArtifacts[i].artifactIdentifier")
bucketOwnerAccess = jResp.StringOf("build.secondaryArtifacts[i].bucketOwnerAccess")
encryptionDisabled = jResp.IntOf("build.secondaryArtifacts[i].encryptionDisabled")
location = jResp.StringOf("build.secondaryArtifacts[i].location")
md5sum = jResp.StringOf("build.secondaryArtifacts[i].md5sum")
overrideArtifactName = jResp.IntOf("build.secondaryArtifacts[i].overrideArtifactName")
sha256sum = jResp.StringOf("build.secondaryArtifacts[i].sha256sum")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.secondarySources")
Do While i < count_i
jResp.I = i
authResource = jResp.StringOf("build.secondarySources[i].auth.resource")
authType = jResp.StringOf("build.secondarySources[i].auth.type")
buildspec = jResp.StringOf("build.secondarySources[i].buildspec")
buildStatusConfigContext = jResp.StringOf("build.secondarySources[i].buildStatusConfig.context")
buildStatusConfigTargetUrl = jResp.StringOf("build.secondarySources[i].buildStatusConfig.targetUrl")
gitCloneDepth = jResp.IntOf("build.secondarySources[i].gitCloneDepth")
gitSubmodulesConfigFetchSubmodules = jResp.IntOf("build.secondarySources[i].gitSubmodulesConfig.fetchSubmodules")
insecureSsl = jResp.IntOf("build.secondarySources[i].insecureSsl")
location = jResp.StringOf("build.secondarySources[i].location")
reportBuildStatus = jResp.IntOf("build.secondarySources[i].reportBuildStatus")
sourceIdentifier = jResp.StringOf("build.secondarySources[i].sourceIdentifier")
v_type = jResp.StringOf("build.secondarySources[i].type")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.secondarySourceVersions")
Do While i < count_i
jResp.I = i
sourceIdentifier = jResp.StringOf("build.secondarySourceVersions[i].sourceIdentifier")
sourceVersion = jResp.StringOf("build.secondarySourceVersions[i].sourceVersion")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.vpcConfig.securityGroupIds")
Do While i < count_i
jResp.I = i
strVal = jResp.StringOf("build.vpcConfig.securityGroupIds[i]")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("build.vpcConfig.subnets")
Do While i < count_i
jResp.I = i
strVal = jResp.StringOf("build.vpcConfig.subnets[i]")
i = i + 1
Loop
' A sample JSON response body parsed by the above code:
' {
' "build": {
' "arn": "string",
' "artifacts": {
' "artifactIdentifier": "string",
' "bucketOwnerAccess": "string",
' "encryptionDisabled": boolean,
' "location": "string",
' "md5sum": "string",
' "overrideArtifactName": boolean,
' "sha256sum": "string"
' },
' "buildBatchArn": "string",
' "buildComplete": boolean,
' "buildNumber": number,
' "buildStatus": "string",
' "cache": {
' "location": "string",
' "modes": [
' "string"
' ],
' "type": "string"
' },
' "currentPhase": "string",
' "debugSession": {
' "sessionEnabled": boolean,
' "sessionTarget": "string"
' },
' "encryptionKey": "string",
' "endTime": number,
' "environment": {
' "certificate": "string",
' "computeType": "string",
' "environmentVariables": [
' {
' "name": "string",
' "type": "string",
' "value": "string"
' }
' ],
' "image": "string",
' "imagePullCredentialsType": "string",
' "privilegedMode": boolean,
' "registryCredential": {
' "credential": "string",
' "credentialProvider": "string"
' },
' "type": "string"
' },
' "exportedEnvironmentVariables": [
' {
' "name": "string",
' "value": "string"
' }
' ],
' "fileSystemLocations": [
' {
' "identifier": "string",
' "location": "string",
' "mountOptions": "string",
' "mountPoint": "string",
' "type": "string"
' }
' ],
' "id": "string",
' "initiator": "string",
' "logs": {
' "cloudWatchLogs": {
' "groupName": "string",
' "status": "string",
' "streamName": "string"
' },
' "cloudWatchLogsArn": "string",
' "deepLink": "string",
' "groupName": "string",
' "s3DeepLink": "string",
' "s3Logs": {
' "bucketOwnerAccess": "string",
' "encryptionDisabled": boolean,
' "location": "string",
' "status": "string"
' },
' "s3LogsArn": "string",
' "streamName": "string"
' },
' "networkInterface": {
' "networkInterfaceId": "string",
' "subnetId": "string"
' },
' "phases": [
' {
' "contexts": [
' {
' "message": "string",
' "statusCode": "string"
' }
' ],
' "durationInSeconds": number,
' "endTime": number,
' "phaseStatus": "string",
' "phaseType": "string",
' "startTime": number
' }
' ],
' "projectName": "string",
' "queuedTimeoutInMinutes": number,
' "reportArns": [
' "string"
' ],
' "resolvedSourceVersion": "string",
' "secondaryArtifacts": [
' {
' "artifactIdentifier": "string",
' "bucketOwnerAccess": "string",
' "encryptionDisabled": boolean,
' "location": "string",
' "md5sum": "string",
' "overrideArtifactName": boolean,
' "sha256sum": "string"
' }
' ],
' "secondarySources": [
' {
' "auth": {
' "resource": "string",
' "type": "string"
' },
' "buildspec": "string",
' "buildStatusConfig": {
' "context": "string",
' "targetUrl": "string"
' },
' "gitCloneDepth": number,
' "gitSubmodulesConfig": {
' "fetchSubmodules": boolean
' },
' "insecureSsl": boolean,
' "location": "string",
' "reportBuildStatus": boolean,
' "sourceIdentifier": "string",
' "type": "string"
' }
' ],
' "secondarySourceVersions": [
' {
' "sourceIdentifier": "string",
' "sourceVersion": "string"
' }
' ],
' "serviceRole": "string",
' "source": {
' "auth": {
' "resource": "string",
' "type": "string"
' },
' "buildspec": "string",
' "buildStatusConfig": {
' "context": "string",
' "targetUrl": "string"
' },
' "gitCloneDepth": number,
' "gitSubmodulesConfig": {
' "fetchSubmodules": boolean
' },
' "insecureSsl": boolean,
' "location": "string",
' "reportBuildStatus": boolean,
' "sourceIdentifier": "string",
' "type": "string"
' },
' "sourceVersion": "string",
' "startTime": number,
' "timeoutInMinutes": number,
' "vpcConfig": {
' "securityGroupIds": [
' "string"
' ],
' "subnets": [
' "string"
' ],
' "vpcId": "string"
' }
' }
' }
%>
</body>
</html>