DescribeJobs DataFlex Example
Use ChilkatAx-9.5.0-win32.pkg
Procedure Test
Handle hoRest
Boolean iSuccess
Variant vAuthAws
Handle hoAuthAws
Handle hoJson
Variant vSbRequestBody
Handle hoSbRequestBody
Variant vSbResponseBody
Handle hoSbResponseBody
Integer iRespStatusCode
Handle hoJResp
Integer iIndex
Integer iSize
Integer iV_String
String sContainerInstanceArn
String sExecutionRoleArn
Integer iExitCode
String sPlatformVersion
String sImage
String sInstanceType
String sJobRoleArn
Integer iInitProcessEnabled
Integer iMaxSwap
Integer iSharedMemorySize
Integer iSwappiness
String sLogDriver
String sOptionsString
String sLogStreamName
Integer iMemory
String sAssignPublicIp
Integer iPrivileged
Integer iReadonlyRootFilesystem
String sReason
String sTaskArn
String sUser
Integer iVcpus
Integer iCreatedAt
String sJobArn
String sJobDefinition
String sJobId
String sJobName
String sJobQueue
Integer iIsMainNode
Integer iNodeIndex
Integer iMainNode
Integer iNumNodes
String sParametersString
Integer iPropagateTags
Integer iAttempts
Integer iSchedulingPriority
String sShareIdentifier
Integer iStartedAt
String sStatus
String sStatusReason
Integer iStoppedAt
String sTagsString
Integer iAttemptDurationSeconds
Integer j
Integer iCount_j
String sContainerContainerInstanceArn
Integer iContainerExitCode
String sContainerLogStreamName
String sContainerReason
String sContainerTaskArn
Integer k
Integer iCount_k
String sAttachmentId
String sIpv6Address
String sPrivateIpv4Address
String sStrVal
String sName
String sValue
String sContainerPath
String sHostPath
Integer iSize
String sValueFrom
Integer iReadOnly
String sSourceVolume
String sV_type
Integer iHardLimit
Integer iSoftLimit
String sAccessPointId
String sIam
String sFileSystemId
String sRootDirectory
String sTransitEncryption
Integer iTransitEncryptionPort
String sSourcePath
String sContainerExecutionRoleArn
String sFargatePlatformConfigurationPlatformVersion
String sContainerImage
String sContainerInstanceType
String sContainerJobRoleArn
Integer iLinuxParametersInitProcessEnabled
Integer iLinuxParametersMaxSwap
Integer iLinuxParametersSharedMemorySize
Integer iLinuxParametersSwappiness
String sLogConfigurationLogDriver
Integer iContainerMemory
String sNetworkConfigurationAssignPublicIp
Integer iContainerPrivileged
Integer iContainerReadonlyRootFilesystem
String sContainerUser
Integer iContainerVcpus
String sTargetNodes
Variant vJson1
Handle hoJson1
Integer iI1
Integer iCount_i1
String sAuthorizationConfigAccessPointId
String sAuthorizationConfigIam
String sEfsVolumeConfigurationFileSystemId
String sEfsVolumeConfigurationRootDirectory
String sEfsVolumeConfigurationTransitEncryption
Integer iEfsVolumeConfigurationTransitEncryptionPort
String sHostSourcePath
String sAction
String sOnExitCode
String sOnReason
String sOnStatusReason
Integer i
Integer iCount_i
String sTemp1
Integer iTemp1
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatRest)) To hoRest
If (Not(IsComObjectCreated(hoRest))) Begin
Send CreateComObject of hoRest
End
Get Create (RefClass(cComChilkatAuthAws)) To hoAuthAws
If (Not(IsComObjectCreated(hoAuthAws))) Begin
Send CreateComObject of hoAuthAws
End
Set ComAccessKey Of hoAuthAws To "AWS_ACCESS_KEY"
Set ComSecretKey Of hoAuthAws To "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.)
Set ComRegion Of hoAuthAws To "us-west-2"
Set ComServiceName Of hoAuthAws To "batch"
// SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
Get pvComObject of hoAuthAws to vAuthAws
Get ComSetAuthAws Of hoRest vAuthAws To iSuccess
// URL: https://batch.us-west-2.amazonaws.com/
// Use the same region as specified above.
Get ComConnect Of hoRest "batch.us-west-2.amazonaws.com" 443 True True To iSuccess
If (iSuccess <> True) Begin
Get ComConnectFailReason Of hoRest To iTemp1
Showln "ConnectFailReason: " iTemp1
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
// 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
Get Create (RefClass(cComChilkatJsonObject)) To hoJson
If (Not(IsComObjectCreated(hoJson))) Begin
Send CreateComObject of hoJson
End
Get ComUpdateString Of hoJson "jobs[0]" "string" To iSuccess
// The JSON request body created by the above code:
// {
// "jobs": [
// "string"
// ]
// }
Get ComAddHeader Of hoRest "Content-Type" "application/x-amz-json-1.1" To iSuccess
Get ComAddHeader Of hoRest "X-Amz-Target" "DescribeJobs" To iSuccess
Get Create (RefClass(cComChilkatStringBuilder)) To hoSbRequestBody
If (Not(IsComObjectCreated(hoSbRequestBody))) Begin
Send CreateComObject of hoSbRequestBody
End
Get pvComObject of hoSbRequestBody to vSbRequestBody
Get ComEmitSb Of hoJson vSbRequestBody To iSuccess
Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
Send CreateComObject of hoSbResponseBody
End
Get pvComObject of hoSbRequestBody to vSbRequestBody
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComFullRequestSb Of hoRest "POST" "/v1/describejobs" vSbRequestBody vSbResponseBody To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComResponseStatusCode Of hoRest To iRespStatusCode
Showln "response status code = " iRespStatusCode
If (iRespStatusCode <> 200) Begin
Showln "Response Header:"
Get ComResponseHeader Of hoRest To sTemp1
Showln sTemp1
Showln "Response Body:"
Get ComGetAsString Of hoSbResponseBody To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatJsonObject)) To hoJResp
If (Not(IsComObjectCreated(hoJResp))) Begin
Send CreateComObject of hoJResp
End
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComLoadSb Of hoJResp vSbResponseBody To iSuccess
// 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
Move 0 To i
Get ComSizeOfArray Of hoJResp "jobs" To iCount_i
While (i < iCount_i)
Set ComI Of hoJResp To i
Get ComIntOf Of hoJResp "jobs[i].arrayProperties.index" To iIndex
Get ComIntOf Of hoJResp "jobs[i].arrayProperties.size" To iSize
Get ComIntOf Of hoJResp "jobs[i].arrayProperties.statusSummary.string" To iV_String
Get ComStringOf Of hoJResp "jobs[i].container.containerInstanceArn" To sContainerInstanceArn
Get ComStringOf Of hoJResp "jobs[i].container.executionRoleArn" To sExecutionRoleArn
Get ComIntOf Of hoJResp "jobs[i].container.exitCode" To iExitCode
Get ComStringOf Of hoJResp "jobs[i].container.fargatePlatformConfiguration.platformVersion" To sPlatformVersion
Get ComStringOf Of hoJResp "jobs[i].container.image" To sImage
Get ComStringOf Of hoJResp "jobs[i].container.instanceType" To sInstanceType
Get ComStringOf Of hoJResp "jobs[i].container.jobRoleArn" To sJobRoleArn
Get ComIntOf Of hoJResp "jobs[i].container.linuxParameters.initProcessEnabled" To iInitProcessEnabled
Get ComIntOf Of hoJResp "jobs[i].container.linuxParameters.maxSwap" To iMaxSwap
Get ComIntOf Of hoJResp "jobs[i].container.linuxParameters.sharedMemorySize" To iSharedMemorySize
Get ComIntOf Of hoJResp "jobs[i].container.linuxParameters.swappiness" To iSwappiness
Get ComStringOf Of hoJResp "jobs[i].container.logConfiguration.logDriver" To sLogDriver
Get ComStringOf Of hoJResp "jobs[i].container.logConfiguration.options.string" To sOptionsString
Get ComStringOf Of hoJResp "jobs[i].container.logStreamName" To sLogStreamName
Get ComIntOf Of hoJResp "jobs[i].container.memory" To iMemory
Get ComStringOf Of hoJResp "jobs[i].container.networkConfiguration.assignPublicIp" To sAssignPublicIp
Get ComIntOf Of hoJResp "jobs[i].container.privileged" To iPrivileged
Get ComIntOf Of hoJResp "jobs[i].container.readonlyRootFilesystem" To iReadonlyRootFilesystem
Get ComStringOf Of hoJResp "jobs[i].container.reason" To sReason
Get ComStringOf Of hoJResp "jobs[i].container.taskArn" To sTaskArn
Get ComStringOf Of hoJResp "jobs[i].container.user" To sUser
Get ComIntOf Of hoJResp "jobs[i].container.vcpus" To iVcpus
Get ComIntOf Of hoJResp "jobs[i].createdAt" To iCreatedAt
Get ComStringOf Of hoJResp "jobs[i].jobArn" To sJobArn
Get ComStringOf Of hoJResp "jobs[i].jobDefinition" To sJobDefinition
Get ComStringOf Of hoJResp "jobs[i].jobId" To sJobId
Get ComStringOf Of hoJResp "jobs[i].jobName" To sJobName
Get ComStringOf Of hoJResp "jobs[i].jobQueue" To sJobQueue
Get ComIntOf Of hoJResp "jobs[i].nodeDetails.isMainNode" To iIsMainNode
Get ComIntOf Of hoJResp "jobs[i].nodeDetails.nodeIndex" To iNodeIndex
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.mainNode" To iMainNode
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.numNodes" To iNumNodes
Get ComStringOf Of hoJResp "jobs[i].parameters.string" To sParametersString
Get ComIntOf Of hoJResp "jobs[i].propagateTags" To iPropagateTags
Get ComIntOf Of hoJResp "jobs[i].retryStrategy.attempts" To iAttempts
Get ComIntOf Of hoJResp "jobs[i].schedulingPriority" To iSchedulingPriority
Get ComStringOf Of hoJResp "jobs[i].shareIdentifier" To sShareIdentifier
Get ComIntOf Of hoJResp "jobs[i].startedAt" To iStartedAt
Get ComStringOf Of hoJResp "jobs[i].status" To sStatus
Get ComStringOf Of hoJResp "jobs[i].statusReason" To sStatusReason
Get ComIntOf Of hoJResp "jobs[i].stoppedAt" To iStoppedAt
Get ComStringOf Of hoJResp "jobs[i].tags.string" To sTagsString
Get ComIntOf Of hoJResp "jobs[i].timeout.attemptDurationSeconds" To iAttemptDurationSeconds
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].attempts" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].attempts[j].container.containerInstanceArn" To sContainerContainerInstanceArn
Get ComIntOf Of hoJResp "jobs[i].attempts[j].container.exitCode" To iContainerExitCode
Get ComStringOf Of hoJResp "jobs[i].attempts[j].container.logStreamName" To sContainerLogStreamName
Get ComStringOf Of hoJResp "jobs[i].attempts[j].container.reason" To sContainerReason
Get ComStringOf Of hoJResp "jobs[i].attempts[j].container.taskArn" To sContainerTaskArn
Get ComIntOf Of hoJResp "jobs[i].attempts[j].startedAt" To iStartedAt
Get ComStringOf Of hoJResp "jobs[i].attempts[j].statusReason" To sStatusReason
Get ComIntOf Of hoJResp "jobs[i].attempts[j].stoppedAt" To iStoppedAt
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].attempts[j].container.networkInterfaces" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].attempts[j].container.networkInterfaces[k].attachmentId" To sAttachmentId
Get ComStringOf Of hoJResp "jobs[i].attempts[j].container.networkInterfaces[k].ipv6Address" To sIpv6Address
Get ComStringOf Of hoJResp "jobs[i].attempts[j].container.networkInterfaces[k].privateIpv4Address" To sPrivateIpv4Address
Move (k + 1) To k
Loop
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.command" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.command[j]" To sStrVal
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.environment" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.environment[j].name" To sName
Get ComStringOf Of hoJResp "jobs[i].container.environment[j].value" To sValue
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.linuxParameters.devices" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.linuxParameters.devices[j].containerPath" To sContainerPath
Get ComStringOf Of hoJResp "jobs[i].container.linuxParameters.devices[j].hostPath" To sHostPath
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].container.linuxParameters.devices[j].permissions" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].container.linuxParameters.devices[j].permissions[k]" To sStrVal
Move (k + 1) To k
Loop
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.linuxParameters.tmpfs" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.linuxParameters.tmpfs[j].containerPath" To sContainerPath
Get ComIntOf Of hoJResp "jobs[i].container.linuxParameters.tmpfs[j].size" To iSize
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].container.linuxParameters.tmpfs[j].mountOptions" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].container.linuxParameters.tmpfs[j].mountOptions[k]" To sStrVal
Move (k + 1) To k
Loop
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.logConfiguration.secretOptions" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.logConfiguration.secretOptions[j].name" To sName
Get ComStringOf Of hoJResp "jobs[i].container.logConfiguration.secretOptions[j].valueFrom" To sValueFrom
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.mountPoints" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.mountPoints[j].containerPath" To sContainerPath
Get ComIntOf Of hoJResp "jobs[i].container.mountPoints[j].readOnly" To iReadOnly
Get ComStringOf Of hoJResp "jobs[i].container.mountPoints[j].sourceVolume" To sSourceVolume
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.networkInterfaces" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.networkInterfaces[j].attachmentId" To sAttachmentId
Get ComStringOf Of hoJResp "jobs[i].container.networkInterfaces[j].ipv6Address" To sIpv6Address
Get ComStringOf Of hoJResp "jobs[i].container.networkInterfaces[j].privateIpv4Address" To sPrivateIpv4Address
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.resourceRequirements" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.resourceRequirements[j].type" To sV_type
Get ComStringOf Of hoJResp "jobs[i].container.resourceRequirements[j].value" To sValue
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.secrets" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.secrets[j].name" To sName
Get ComStringOf Of hoJResp "jobs[i].container.secrets[j].valueFrom" To sValueFrom
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.ulimits" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComIntOf Of hoJResp "jobs[i].container.ulimits[j].hardLimit" To iHardLimit
Get ComStringOf Of hoJResp "jobs[i].container.ulimits[j].name" To sName
Get ComIntOf Of hoJResp "jobs[i].container.ulimits[j].softLimit" To iSoftLimit
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].container.volumes" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].container.volumes[j].efsVolumeConfiguration.authorizationConfig.accessPointId" To sAccessPointId
Get ComStringOf Of hoJResp "jobs[i].container.volumes[j].efsVolumeConfiguration.authorizationConfig.iam" To sIam
Get ComStringOf Of hoJResp "jobs[i].container.volumes[j].efsVolumeConfiguration.fileSystemId" To sFileSystemId
Get ComStringOf Of hoJResp "jobs[i].container.volumes[j].efsVolumeConfiguration.rootDirectory" To sRootDirectory
Get ComStringOf Of hoJResp "jobs[i].container.volumes[j].efsVolumeConfiguration.transitEncryption" To sTransitEncryption
Get ComIntOf Of hoJResp "jobs[i].container.volumes[j].efsVolumeConfiguration.transitEncryptionPort" To iTransitEncryptionPort
Get ComStringOf Of hoJResp "jobs[i].container.volumes[j].host.sourcePath" To sSourcePath
Get ComStringOf Of hoJResp "jobs[i].container.volumes[j].name" To sName
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].dependsOn" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].dependsOn[j].jobId" To sJobId
Get ComStringOf Of hoJResp "jobs[i].dependsOn[j].type" To sV_type
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.executionRoleArn" To sContainerExecutionRoleArn
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.fargatePlatformConfiguration.platformVersion" To sFargatePlatformConfigurationPlatformVersion
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.image" To sContainerImage
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.instanceType" To sContainerInstanceType
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.jobRoleArn" To sContainerJobRoleArn
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.initProcessEnabled" To iLinuxParametersInitProcessEnabled
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.maxSwap" To iLinuxParametersMaxSwap
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.sharedMemorySize" To iLinuxParametersSharedMemorySize
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.swappiness" To iLinuxParametersSwappiness
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.logDriver" To sLogConfigurationLogDriver
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.options.string" To sOptionsString
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.memory" To iContainerMemory
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.networkConfiguration.assignPublicIp" To sNetworkConfigurationAssignPublicIp
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.privileged" To iContainerPrivileged
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.readonlyRootFilesystem" To iContainerReadonlyRootFilesystem
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.user" To sContainerUser
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.vcpus" To iContainerVcpus
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].targetNodes" To sTargetNodes
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.command" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.command[k]" To sStrVal
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.environment" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.environment[k].name" To sName
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.environment[k].value" To sValue
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices[k].containerPath" To sContainerPath
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices[k].hostPath" To sHostPath
Get ComObjectOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices[k]" To vJson1
If (IsComObject(vJson1)) Begin
Get Create (RefClass(cComChilkatJsonObject)) To hoJson1
Set pvComObject Of hoJson1 To vJson1
End
Move 0 To iI1
Get ComSizeOfArray Of hoJson1 "permissions" To iCount_i1
While (iI1 < iCount_i1)
Set ComI Of hoJson1 To iI1
Get ComStringOf Of hoJson1 "permissions[i]" To sStrVal
Move (iI1 + 1) To iI1
Loop
Send Destroy of hoJson1
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs[k].containerPath" To sContainerPath
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs[k].size" To iSize
Get ComObjectOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs[k]" To vJson1
If (IsComObject(vJson1)) Begin
Get Create (RefClass(cComChilkatJsonObject)) To hoJson1
Set pvComObject Of hoJson1 To vJson1
End
Move 0 To iI1
Get ComSizeOfArray Of hoJson1 "mountOptions" To iCount_i1
While (iI1 < iCount_i1)
Set ComI Of hoJson1 To iI1
Get ComStringOf Of hoJson1 "mountOptions[i]" To sStrVal
Move (iI1 + 1) To iI1
Loop
Send Destroy of hoJson1
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.secretOptions" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.secretOptions[k].name" To sName
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.secretOptions[k].valueFrom" To sValueFrom
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.mountPoints" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.mountPoints[k].containerPath" To sContainerPath
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.mountPoints[k].readOnly" To iReadOnly
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.mountPoints[k].sourceVolume" To sSourceVolume
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.resourceRequirements" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.resourceRequirements[k].type" To sV_type
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.resourceRequirements[k].value" To sValue
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.secrets" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.secrets[k].name" To sName
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.secrets[k].valueFrom" To sValueFrom
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.ulimits" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.ulimits[k].hardLimit" To iHardLimit
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.ulimits[k].name" To sName
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.ulimits[k].softLimit" To iSoftLimit
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes" To iCount_k
While (k < iCount_k)
Set ComK Of hoJResp To k
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.authorizationConfig.accessPointId" To sAuthorizationConfigAccessPointId
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.authorizationConfig.iam" To sAuthorizationConfigIam
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.fileSystemId" To sEfsVolumeConfigurationFileSystemId
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.rootDirectory" To sEfsVolumeConfigurationRootDirectory
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.transitEncryption" To sEfsVolumeConfigurationTransitEncryption
Get ComIntOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.transitEncryptionPort" To iEfsVolumeConfigurationTransitEncryptionPort
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].host.sourcePath" To sHostSourcePath
Get ComStringOf Of hoJResp "jobs[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].name" To sName
Move (k + 1) To k
Loop
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].platformCapabilities" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].platformCapabilities[j]" To sStrVal
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJResp "jobs[i].retryStrategy.evaluateOnExit" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJResp To j
Get ComStringOf Of hoJResp "jobs[i].retryStrategy.evaluateOnExit[j].action" To sAction
Get ComStringOf Of hoJResp "jobs[i].retryStrategy.evaluateOnExit[j].onExitCode" To sOnExitCode
Get ComStringOf Of hoJResp "jobs[i].retryStrategy.evaluateOnExit[j].onReason" To sOnReason
Get ComStringOf Of hoJResp "jobs[i].retryStrategy.evaluateOnExit[j].onStatusReason" To sOnStatusReason
Move (j + 1) To j
Loop
Move (i + 1) To i
Loop
// A sample JSON response body parsed by the above code:
// {
// "jobs": [
// {
// "arrayProperties": {
// "index": number,
// "size": number,
// "statusSummary": {
// "string": number
// }
// },
// "attempts": [
// {
// "container": {
// "containerInstanceArn": "string",
// "exitCode": number,
// "logStreamName": "string",
// "networkInterfaces": [
// {
// "attachmentId": "string",
// "ipv6Address": "string",
// "privateIpv4Address": "string"
// }
// ],
// "reason": "string",
// "taskArn": "string"
// },
// "startedAt": number,
// "statusReason": "string",
// "stoppedAt": number
// }
// ],
// "container": {
// "command": [
// "string"
// ],
// "containerInstanceArn": "string",
// "environment": [
// {
// "name": "string",
// "value": "string"
// }
// ],
// "executionRoleArn": "string",
// "exitCode": number,
// "fargatePlatformConfiguration": {
// "platformVersion": "string"
// },
// "image": "string",
// "instanceType": "string",
// "jobRoleArn": "string",
// "linuxParameters": {
// "devices": [
// {
// "containerPath": "string",
// "hostPath": "string",
// "permissions": [
// "string"
// ]
// }
// ],
// "initProcessEnabled": boolean,
// "maxSwap": number,
// "sharedMemorySize": number,
// "swappiness": number,
// "tmpfs": [
// {
// "containerPath": "string",
// "mountOptions": [
// "string"
// ],
// "size": number
// }
// ]
// },
// "logConfiguration": {
// "logDriver": "string",
// "options": {
// "string": "string"
// },
// "secretOptions": [
// {
// "name": "string",
// "valueFrom": "string"
// }
// ]
// },
// "logStreamName": "string",
// "memory": number,
// "mountPoints": [
// {
// "containerPath": "string",
// "readOnly": boolean,
// "sourceVolume": "string"
// }
// ],
// "networkConfiguration": {
// "assignPublicIp": "string"
// },
// "networkInterfaces": [
// {
// "attachmentId": "string",
// "ipv6Address": "string",
// "privateIpv4Address": "string"
// }
// ],
// "privileged": boolean,
// "readonlyRootFilesystem": boolean,
// "reason": "string",
// "resourceRequirements": [
// {
// "type": "string",
// "value": "string"
// }
// ],
// "secrets": [
// {
// "name": "string",
// "valueFrom": "string"
// }
// ],
// "taskArn": "string",
// "ulimits": [
// {
// "hardLimit": number,
// "name": "string",
// "softLimit": number
// }
// ],
// "user": "string",
// "vcpus": number,
// "volumes": [
// {
// "efsVolumeConfiguration": {
// "authorizationConfig": {
// "accessPointId": "string",
// "iam": "string"
// },
// "fileSystemId": "string",
// "rootDirectory": "string",
// "transitEncryption": "string",
// "transitEncryptionPort": number
// },
// "host": {
// "sourcePath": "string"
// },
// "name": "string"
// }
// ]
// },
// "createdAt": number,
// "dependsOn": [
// {
// "jobId": "string",
// "type": "string"
// }
// ],
// "jobArn": "string",
// "jobDefinition": "string",
// "jobId": "string",
// "jobName": "string",
// "jobQueue": "string",
// "nodeDetails": {
// "isMainNode": boolean,
// "nodeIndex": number
// },
// "nodeProperties": {
// "mainNode": number,
// "nodeRangeProperties": [
// {
// "container": {
// "command": [
// "string"
// ],
// "environment": [
// {
// "name": "string",
// "value": "string"
// }
// ],
// "executionRoleArn": "string",
// "fargatePlatformConfiguration": {
// "platformVersion": "string"
// },
// "image": "string",
// "instanceType": "string",
// "jobRoleArn": "string",
// "linuxParameters": {
// "devices": [
// {
// "containerPath": "string",
// "hostPath": "string",
// "permissions": [
// "string"
// ]
// }
// ],
// "initProcessEnabled": boolean,
// "maxSwap": number,
// "sharedMemorySize": number,
// "swappiness": number,
// "tmpfs": [
// {
// "containerPath": "string",
// "mountOptions": [
// "string"
// ],
// "size": number
// }
// ]
// },
// "logConfiguration": {
// "logDriver": "string",
// "options": {
// "string": "string"
// },
// "secretOptions": [
// {
// "name": "string",
// "valueFrom": "string"
// }
// ]
// },
// "memory": number,
// "mountPoints": [
// {
// "containerPath": "string",
// "readOnly": boolean,
// "sourceVolume": "string"
// }
// ],
// "networkConfiguration": {
// "assignPublicIp": "string"
// },
// "privileged": boolean,
// "readonlyRootFilesystem": boolean,
// "resourceRequirements": [
// {
// "type": "string",
// "value": "string"
// }
// ],
// "secrets": [
// {
// "name": "string",
// "valueFrom": "string"
// }
// ],
// "ulimits": [
// {
// "hardLimit": number,
// "name": "string",
// "softLimit": number
// }
// ],
// "user": "string",
// "vcpus": number,
// "volumes": [
// {
// "efsVolumeConfiguration": {
// "authorizationConfig": {
// "accessPointId": "string",
// "iam": "string"
// },
// "fileSystemId": "string",
// "rootDirectory": "string",
// "transitEncryption": "string",
// "transitEncryptionPort": number
// },
// "host": {
// "sourcePath": "string"
// },
// "name": "string"
// }
// ]
// },
// "targetNodes": "string"
// }
// ],
// "numNodes": number
// },
// "parameters": {
// "string": "string"
// },
// "platformCapabilities": [
// "string"
// ],
// "propagateTags": boolean,
// "retryStrategy": {
// "attempts": number,
// "evaluateOnExit": [
// {
// "action": "string",
// "onExitCode": "string",
// "onReason": "string",
// "onStatusReason": "string"
// }
// ]
// },
// "schedulingPriority": number,
// "shareIdentifier": "string",
// "startedAt": number,
// "status": "string",
// "statusReason": "string",
// "stoppedAt": number,
// "tags": {
// "string": "string"
// },
// "timeout": {
// "attemptDurationSeconds": number
// }
// }
// ]
// }
End_Procedure