Chilkat Online Tools

DescribeJobDefinitions phpAx Example

AWS Batch

<?php

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

$rest = new COM("Chilkat_9_5_0.Rest");

$authAws = new COM("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 = 'batch';
// SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
$rest->SetAuthAws($authAws);

// URL: https://batch.us-west-2.amazonaws.com/
// Use the same region as specified above.
$success = $rest->Connect('batch.us-west-2.amazonaws.com',443,1,1);
if ($success != 1) {
    print 'ConnectFailReason: ' . $rest->ConnectFailReason . "\n";
    print $rest->LastErrorText . "\n";
    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 COM("Chilkat_9_5_0.JsonObject");
$json->UpdateString('jobDefinitionName','string');
$json->UpdateString('jobDefinitions[0]','string');
$json->UpdateInt('maxResults',123);
$json->UpdateString('nextToken','string');
$json->UpdateString('status','string');

// The JSON request body created by the above code:

// {
//   "jobDefinitionName": "string",
//   "jobDefinitions": [
//     "string"
//   ],
//   "maxResults": number,
//   "nextToken": "string",
//   "status": "string"
// }

$rest->AddHeader('Content-Type','application/x-amz-json-1.1');
$rest->AddHeader('X-Amz-Target','DescribeJobDefinitions');

$sbRequestBody = new COM("Chilkat_9_5_0.StringBuilder");
$json->EmitSb($sbRequestBody);
$sbResponseBody = new COM("Chilkat_9_5_0.StringBuilder");
$success = $rest->FullRequestSb('POST','/v1/describejobdefinitions',$sbRequestBody,$sbResponseBody);
if ($success != 1) {
    print $rest->LastErrorText . "\n";
    exit;
}

$respStatusCode = $rest->ResponseStatusCode;
print 'response status code = ' . $respStatusCode . "\n";
if ($respStatusCode != 200) {
    print 'Response Header:' . "\n";
    print $rest->ResponseHeader . "\n";
    print 'Response Body:' . "\n";
    print $sbResponseBody->getAsString() . "\n";
    exit;
}

$jResp = new COM("Chilkat_9_5_0.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

$nextToken = $jResp->stringOf('nextToken');
$i = 0;
$count_i = $jResp->SizeOfArray('jobDefinitions');
while ($i < $count_i) {
    $jResp->I = $i;
    $ExecutionRoleArn = $jResp->stringOf('jobDefinitions[i].containerProperties.executionRoleArn');
    $PlatformVersion = $jResp->stringOf('jobDefinitions[i].containerProperties.fargatePlatformConfiguration.platformVersion');
    $Image = $jResp->stringOf('jobDefinitions[i].containerProperties.image');
    $InstanceType = $jResp->stringOf('jobDefinitions[i].containerProperties.instanceType');
    $JobRoleArn = $jResp->stringOf('jobDefinitions[i].containerProperties.jobRoleArn');
    $InitProcessEnabled = $jResp->IntOf('jobDefinitions[i].containerProperties.linuxParameters.initProcessEnabled');
    $MaxSwap = $jResp->IntOf('jobDefinitions[i].containerProperties.linuxParameters.maxSwap');
    $SharedMemorySize = $jResp->IntOf('jobDefinitions[i].containerProperties.linuxParameters.sharedMemorySize');
    $Swappiness = $jResp->IntOf('jobDefinitions[i].containerProperties.linuxParameters.swappiness');
    $LogDriver = $jResp->stringOf('jobDefinitions[i].containerProperties.logConfiguration.logDriver');
    $v_String = $jResp->stringOf('jobDefinitions[i].containerProperties.logConfiguration.options.string');
    $Memory = $jResp->IntOf('jobDefinitions[i].containerProperties.memory');
    $AssignPublicIp = $jResp->stringOf('jobDefinitions[i].containerProperties.networkConfiguration.assignPublicIp');
    $Privileged = $jResp->IntOf('jobDefinitions[i].containerProperties.privileged');
    $ReadonlyRootFilesystem = $jResp->IntOf('jobDefinitions[i].containerProperties.readonlyRootFilesystem');
    $User = $jResp->stringOf('jobDefinitions[i].containerProperties.user');
    $Vcpus = $jResp->IntOf('jobDefinitions[i].containerProperties.vcpus');
    $jobDefinitionArn = $jResp->stringOf('jobDefinitions[i].jobDefinitionArn');
    $jobDefinitionName = $jResp->stringOf('jobDefinitions[i].jobDefinitionName');
    $MainNode = $jResp->IntOf('jobDefinitions[i].nodeProperties.mainNode');
    $NumNodes = $jResp->IntOf('jobDefinitions[i].nodeProperties.numNodes');
    $parametersString = $jResp->stringOf('jobDefinitions[i].parameters.string');
    $propagateTags = $jResp->IntOf('jobDefinitions[i].propagateTags');
    $Attempts = $jResp->IntOf('jobDefinitions[i].retryStrategy.attempts');
    $revision = $jResp->IntOf('jobDefinitions[i].revision');
    $schedulingPriority = $jResp->IntOf('jobDefinitions[i].schedulingPriority');
    $status = $jResp->stringOf('jobDefinitions[i].status');
    $tagsString = $jResp->stringOf('jobDefinitions[i].tags.string');
    $AttemptDurationSeconds = $jResp->IntOf('jobDefinitions[i].timeout.attemptDurationSeconds');
    $v_type = $jResp->stringOf('jobDefinitions[i].type');
    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.command');
    while ($j < $count_j) {
        $jResp->J = $j;
        $strVal = $jResp->stringOf('jobDefinitions[i].containerProperties.command[j]');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.environment');
    while ($j < $count_j) {
        $jResp->J = $j;
        $name = $jResp->stringOf('jobDefinitions[i].containerProperties.environment[j].name');
        $value = $jResp->stringOf('jobDefinitions[i].containerProperties.environment[j].value');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.linuxParameters.devices');
    while ($j < $count_j) {
        $jResp->J = $j;
        $containerPath = $jResp->stringOf('jobDefinitions[i].containerProperties.linuxParameters.devices[j].containerPath');
        $hostPath = $jResp->stringOf('jobDefinitions[i].containerProperties.linuxParameters.devices[j].hostPath');
        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.linuxParameters.devices[j].permissions');
        while ($k < $count_k) {
            $jResp->K = $k;
            $strVal = $jResp->stringOf('jobDefinitions[i].containerProperties.linuxParameters.devices[j].permissions[k]');
            $k = $k + 1;
        }

        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.linuxParameters.tmpfs');
    while ($j < $count_j) {
        $jResp->J = $j;
        $containerPath = $jResp->stringOf('jobDefinitions[i].containerProperties.linuxParameters.tmpfs[j].containerPath');
        $size = $jResp->IntOf('jobDefinitions[i].containerProperties.linuxParameters.tmpfs[j].size');
        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.linuxParameters.tmpfs[j].mountOptions');
        while ($k < $count_k) {
            $jResp->K = $k;
            $strVal = $jResp->stringOf('jobDefinitions[i].containerProperties.linuxParameters.tmpfs[j].mountOptions[k]');
            $k = $k + 1;
        }

        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.logConfiguration.secretOptions');
    while ($j < $count_j) {
        $jResp->J = $j;
        $name = $jResp->stringOf('jobDefinitions[i].containerProperties.logConfiguration.secretOptions[j].name');
        $valueFrom = $jResp->stringOf('jobDefinitions[i].containerProperties.logConfiguration.secretOptions[j].valueFrom');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.mountPoints');
    while ($j < $count_j) {
        $jResp->J = $j;
        $containerPath = $jResp->stringOf('jobDefinitions[i].containerProperties.mountPoints[j].containerPath');
        $readOnly = $jResp->IntOf('jobDefinitions[i].containerProperties.mountPoints[j].readOnly');
        $sourceVolume = $jResp->stringOf('jobDefinitions[i].containerProperties.mountPoints[j].sourceVolume');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.resourceRequirements');
    while ($j < $count_j) {
        $jResp->J = $j;
        $v_type = $jResp->stringOf('jobDefinitions[i].containerProperties.resourceRequirements[j].type');
        $value = $jResp->stringOf('jobDefinitions[i].containerProperties.resourceRequirements[j].value');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.secrets');
    while ($j < $count_j) {
        $jResp->J = $j;
        $name = $jResp->stringOf('jobDefinitions[i].containerProperties.secrets[j].name');
        $valueFrom = $jResp->stringOf('jobDefinitions[i].containerProperties.secrets[j].valueFrom');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.ulimits');
    while ($j < $count_j) {
        $jResp->J = $j;
        $hardLimit = $jResp->IntOf('jobDefinitions[i].containerProperties.ulimits[j].hardLimit');
        $name = $jResp->stringOf('jobDefinitions[i].containerProperties.ulimits[j].name');
        $softLimit = $jResp->IntOf('jobDefinitions[i].containerProperties.ulimits[j].softLimit');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].containerProperties.volumes');
    while ($j < $count_j) {
        $jResp->J = $j;
        $AccessPointId = $jResp->stringOf('jobDefinitions[i].containerProperties.volumes[j].efsVolumeConfiguration.authorizationConfig.accessPointId');
        $Iam = $jResp->stringOf('jobDefinitions[i].containerProperties.volumes[j].efsVolumeConfiguration.authorizationConfig.iam');
        $FileSystemId = $jResp->stringOf('jobDefinitions[i].containerProperties.volumes[j].efsVolumeConfiguration.fileSystemId');
        $RootDirectory = $jResp->stringOf('jobDefinitions[i].containerProperties.volumes[j].efsVolumeConfiguration.rootDirectory');
        $TransitEncryption = $jResp->stringOf('jobDefinitions[i].containerProperties.volumes[j].efsVolumeConfiguration.transitEncryption');
        $TransitEncryptionPort = $jResp->IntOf('jobDefinitions[i].containerProperties.volumes[j].efsVolumeConfiguration.transitEncryptionPort');
        $SourcePath = $jResp->stringOf('jobDefinitions[i].containerProperties.volumes[j].host.sourcePath');
        $name = $jResp->stringOf('jobDefinitions[i].containerProperties.volumes[j].name');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties');
    while ($j < $count_j) {
        $jResp->J = $j;
        $containerExecutionRoleArn = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.executionRoleArn');
        $FargatePlatformConfigurationPlatformVersion = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.fargatePlatformConfiguration.platformVersion');
        $containerImage = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.image');
        $containerInstanceType = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.instanceType');
        $containerJobRoleArn = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.jobRoleArn');
        $LinuxParametersInitProcessEnabled = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.initProcessEnabled');
        $LinuxParametersMaxSwap = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.maxSwap');
        $LinuxParametersSharedMemorySize = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.sharedMemorySize');
        $LinuxParametersSwappiness = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.swappiness');
        $LogConfigurationLogDriver = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.logDriver');
        $OptionsString = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.options.string');
        $containerMemory = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.memory');
        $NetworkConfigurationAssignPublicIp = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.networkConfiguration.assignPublicIp');
        $containerPrivileged = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.privileged');
        $containerReadonlyRootFilesystem = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.readonlyRootFilesystem');
        $containerUser = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.user');
        $containerVcpus = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.vcpus');
        $targetNodes = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].targetNodes');
        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.command');
        while ($k < $count_k) {
            $jResp->K = $k;
            $strVal = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.command[k]');
            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.environment');
        while ($k < $count_k) {
            $jResp->K = $k;
            $name = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.environment[k].name');
            $value = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.environment[k].value');
            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices');
        while ($k < $count_k) {
            $jResp->K = $k;
            $containerPath = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices[k].containerPath');
            $hostPath = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices[k].hostPath');

            // json1 is a Chilkat_9_5_0.JsonObject
            $json1 = $jResp->ObjectOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.devices[k]');
            $i1 = 0;
            $count_i1 = $json1->SizeOfArray('permissions');
            while ($i1 < $count_i1) {
                $json1->I = $i1;
                $strVal = $json1->stringOf('permissions[i]');
                $i1 = $i1 + 1;
            }

            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs');
        while ($k < $count_k) {
            $jResp->K = $k;
            $containerPath = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs[k].containerPath');
            $size = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs[k].size');

            // json1 is a Chilkat_9_5_0.JsonObject
            $json1 = $jResp->ObjectOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.linuxParameters.tmpfs[k]');
            $i1 = 0;
            $count_i1 = $json1->SizeOfArray('mountOptions');
            while ($i1 < $count_i1) {
                $json1->I = $i1;
                $strVal = $json1->stringOf('mountOptions[i]');
                $i1 = $i1 + 1;
            }

            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.secretOptions');
        while ($k < $count_k) {
            $jResp->K = $k;
            $name = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.secretOptions[k].name');
            $valueFrom = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.logConfiguration.secretOptions[k].valueFrom');
            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.mountPoints');
        while ($k < $count_k) {
            $jResp->K = $k;
            $containerPath = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.mountPoints[k].containerPath');
            $readOnly = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.mountPoints[k].readOnly');
            $sourceVolume = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.mountPoints[k].sourceVolume');
            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.resourceRequirements');
        while ($k < $count_k) {
            $jResp->K = $k;
            $v_type = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.resourceRequirements[k].type');
            $value = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.resourceRequirements[k].value');
            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.secrets');
        while ($k < $count_k) {
            $jResp->K = $k;
            $name = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.secrets[k].name');
            $valueFrom = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.secrets[k].valueFrom');
            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.ulimits');
        while ($k < $count_k) {
            $jResp->K = $k;
            $hardLimit = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.ulimits[k].hardLimit');
            $name = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.ulimits[k].name');
            $softLimit = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.ulimits[k].softLimit');
            $k = $k + 1;
        }

        $k = 0;
        $count_k = $jResp->SizeOfArray('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes');
        while ($k < $count_k) {
            $jResp->K = $k;
            $AuthorizationConfigAccessPointId = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.authorizationConfig.accessPointId');
            $AuthorizationConfigIam = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.authorizationConfig.iam');
            $efsVolumeConfigurationFileSystemId = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.fileSystemId');
            $efsVolumeConfigurationRootDirectory = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.rootDirectory');
            $efsVolumeConfigurationTransitEncryption = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.transitEncryption');
            $efsVolumeConfigurationTransitEncryptionPort = $jResp->IntOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].efsVolumeConfiguration.transitEncryptionPort');
            $hostSourcePath = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].host.sourcePath');
            $name = $jResp->stringOf('jobDefinitions[i].nodeProperties.nodeRangeProperties[j].container.volumes[k].name');
            $k = $k + 1;
        }

        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].platformCapabilities');
    while ($j < $count_j) {
        $jResp->J = $j;
        $strVal = $jResp->stringOf('jobDefinitions[i].platformCapabilities[j]');
        $j = $j + 1;
    }

    $j = 0;
    $count_j = $jResp->SizeOfArray('jobDefinitions[i].retryStrategy.evaluateOnExit');
    while ($j < $count_j) {
        $jResp->J = $j;
        $action = $jResp->stringOf('jobDefinitions[i].retryStrategy.evaluateOnExit[j].action');
        $onExitCode = $jResp->stringOf('jobDefinitions[i].retryStrategy.evaluateOnExit[j].onExitCode');
        $onReason = $jResp->stringOf('jobDefinitions[i].retryStrategy.evaluateOnExit[j].onReason');
        $onStatusReason = $jResp->stringOf('jobDefinitions[i].retryStrategy.evaluateOnExit[j].onStatusReason');
        $j = $j + 1;
    }

    $i = $i + 1;
}

// A sample JSON response body parsed by the above code:

// {
//   "jobDefinitions": [
//     {
//       "containerProperties": {
//         "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"
//           }
//         ]
//       },
//       "jobDefinitionArn": "string",
//       "jobDefinitionName": "string",
//       "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"
//           }
//         ]
//       },
//       "revision": number,
//       "schedulingPriority": number,
//       "status": "string",
//       "tags": {
//         "string": "string"
//       },
//       "timeout": {
//         "attemptDurationSeconds": number
//       },
//       "type": "string"
//     }
//   ],
//   "nextToken": "string"
// }

?>