AWS Batch
Manage compute-environment, job-queue and job-definition records.
Plan: Pro21 of 48 operations implemented, 1 failed in testing
Submitting a job returns HTTP 501 NotIncluded in Vera 1.2.0-rc.3: the job engine isn't included, and a Pro license doesn't add it.
Example checked on Vera 1.2.2, 8 November 2026. Each coverage note names its own evidence and date.
Connect
Section titled “Connect”Activate your license key and start the emulator with the Vera launcher, as in Activate Pro, then run this in a terminal of its own, from an empty scratch directory. It gives the official AWS CLI dummy credentials and a config file of its own, so no AWS account is needed and your own AWS profile isn't touched.
export VERA_ENDPOINT="http://localhost:5003"export AWS_ACCESS_KEY_ID=test AWS_SECRET_ACCESS_KEY=testexport AWS_REGION=us-east-1 AWS_DEFAULT_REGION=us-east-1export AWS_SHARED_CREDENTIALS_FILE=/dev/nullexport AWS_EC2_METADATA_DISABLED=trueexport AWS_PAGER="" AWS_CLI_AUTO_PROMPT=offunset AWS_PROFILE AWS_DEFAULT_PROFILEunset AWS_SESSION_TOKEN AWS_SECURITY_TOKENunset AWS_WEB_IDENTITY_TOKEN_FILE AWS_ROLE_ARN AWS_ROLE_SESSION_NAMEunset AWS_CONTAINER_CREDENTIALS_FULL_URIunset AWS_CONTAINER_CREDENTIALS_RELATIVE_URIcat > vera-aws-config <<'EOF'[default]region = us-east-1output = jsoncli_binary_format = base64s3 = addressing_style = pathEOFexport AWS_CONFIG_FILE="$PWD/vera-aws-config"When you've finished every example in this terminal, close it and delete vera-aws-config, not before.
Use the AWS CLI’s batch commands. The emulator serves the 2016-08-10 API over the REST JSON protocol, and the examples use us-east-1.
Example
Section titled “Example”Register a container job definition and describe it. The image is metadata: this sequence never submits or runs it, and the image is never pulled.
JOB_DEF_ARN=$(aws --endpoint-url "$VERA_ENDPOINT" batch register-job-definition \ --job-definition-name vera-docs-job --type container \ --container-properties '{"image":"example.net/docs-image:latest","vcpus":1,"memory":128,"command":["echo","metadata only"]}' \ --query jobDefinitionArn --output text)aws --endpoint-url "$VERA_ENDPOINT" batch describe-job-definitions \ --job-definitions "$JOB_DEF_ARN" \ --query 'jobDefinitions[].{Name:jobDefinitionName,Status:status,Type:type}'The --query picks the definition’s name, status and type:
[ { "Name": "vera-docs-job", "Status": "ACTIVE", "Type": "container" }]To clean up, deregister the job definition:
aws --endpoint-url "$VERA_ENDPOINT" batch deregister-job-definition \ --job-definition "$JOB_DEF_ARN"The deregistered job definition becomes inactive rather than erased, and lasts until the emulator’s state is discarded: see Running the emulator.
Submitting jobs isn’t available in Vera 1.2.0-rc.3. With a compute environment, a job queue and a job definition in place, submit-job returns HTTP 501 NotIncluded, with the message “Running Batch jobs needs an engine that is not included in this Vera release”. A Pro license doesn’t add the engine.
Supported features
Section titled “Supported features”- Job definitions as records: registered, described and deregistered, as in the example.
- Compute environments and job queues as records. In a separate check of Vera 1.2.0-rc.3, an
UNMANAGEDcompute environment, which provisions no capacity, and a job queue on it were created, described and cleaned up. - Listed in the earlier implementation inventory; not rechecked against Vera 1.2.0-rc.3: scheduling policies, job listings and job queue snapshots.
Limitations
Section titled “Limitations”The main limits are below. A few more apply to every service, and the API coverage notes cover smaller differences.
- Jobs can’t be submitted in Vera 1.2.0-rc.3.
SubmitJobreturnsNotIncluded, because this release doesn’t include Batch’s job engine, so there’s no new job to run, describe, cancel or terminate. In Vera 1.2.0 preview, a submitted job wasRUNNINGat once withcontainer.exitCode0, even forsh -c 'exit 97'in an image that doesn’t exist, though no worker pulled its image or ran its command. - Scheduling wasn’t verified. Retries, job dependencies, array jobs, timeouts, fair-share scheduling, worker capacity and logs weren’t shown to work.
- Managed capacity wasn’t tested. Only an
UNMANAGEDcompute environment was used, so no EC2 or ECS capacity was provisioned.
API coverage
Section titled “API coverage”Every operation in AWS's published 2016-08-10 API (SDK model, botocore 1.43.105), and whether the emulator implements it. Availability combines the earlier implementation inventory with the dated observations below; checking a page's example does not verify every operation. Each note names its evidence first; an observation given without a build or date comes from earlier testing, on 3 November 2026. What the statuses mean
No operation matches .
Try part of a name, such as CancelJob, or .
| Operation | Status | Notes |
|---|---|---|
| Cancel | Implemented | Succeeds, but the job stays RUNNING. Local observation: Vera 1.2.0 preview, 5 November 2026 — the same for a RUNNING job, which matches AWS: a running job needs TerminateJob. Cancelling SUBMITTED, PENDING or RUNNABLE jobs wasn't tested. |
| Cancel | Not implemented | |
| Create | Implemented | Local observation: Vera 1.2.0 preview, 5 November 2026 — created an UNMANAGED compute environment, which provisions no capacity. |
| Create | Not implemented | |
| Create | Implemented | Local observation: Vera 1.2.0 preview, 5 November 2026 — created a job queue. |
| Create | Not implemented | |
| Create | Implemented | |
| Create | Not implemented | |
| Delete | Implemented | Local observation: Vera 1.2.0 preview, 5 November 2026 — deleted the disabled compute environment. |
| Delete | Not implemented | |
| Delete | Implemented | Local observation: Vera 1.2.0 preview, 5 November 2026 — deleted the disabled job queue. |
| Delete | Not implemented | |
| Delete | Implemented | |
| Delete | Not implemented | |
| Deregister | Implemented | Local observation: Vera 1.2.0-rc.3, 6 November 2026 — deregistered the example's job definition, which can remain as an inactive record. |
| Describe | Implemented | |
| Describe | Not implemented | |
| Describe | Implemented | |
| Describe | Implemented | |
| Describe | Implemented | Local observation: Vera 1.2.0 preview, 5 November 2026 — described the job record before and after TerminateJob. In Vera 1.2.0-rc.3, SubmitJob returns NotIncluded, so this can't be repeated with a new job; this operation itself wasn't retested. |
| Describe | Not implemented | |
| Describe | Implemented | |
| Describe | Not implemented | |
| Describe | Not implemented | |
| Get | Implemented | |
| List | Not implemented | |
| List | Implemented | |
| List | Not implemented | |
| List | Not implemented | |
| List | Implemented | |
| List | Not implemented | |
| List | Not implemented | |
| Register | Implemented | Local observation: Vera 1.2.0-rc.3, 6 November 2026 — registered the example's container job definition, which read back ACTIVE. Its image is only metadata: nothing is pulled or run. |
| Submit | Failed in testing | Local observation: Vera 1.2.0-rc.3, 6 November 2026 — returns HTTP 501 NotIncluded: running Batch jobs needs an engine that isn't included in this Vera release. This was after a compute environment, job queue and job definition were created. A Pro license doesn't add the engine. The earlier observations that follow don't describe Vera 1.2.0-rc.3. Local observation: earlier testing, 3 November 2026 — the job was RUNNING at once, but nothing ran it: no worker pulled its image or ran its command. Local observation: Vera 1.2.0 preview, 5 November 2026 — the same, with container.exitCode 0 already set, even for a command of sh -c 'exit 97' in an image that doesn't exist. |
| Submit | Not implemented | |
| Tag | Not implemented | |
| Terminate | Implemented | Makes the job FAILED, with your reason as its status reason. Local observation: Vera 1.2.0 preview, 5 November 2026 — the same, and the terminated job's record stayed available to DescribeJobs. In a separate check, it recorded exit code 137. In Vera 1.2.0-rc.3, SubmitJob returns NotIncluded, so this can't be repeated with a new job; this operation itself wasn't retested. |
| Terminate | Not implemented | |
| Terminate | Not implemented | |
| Terminate | Not implemented | |
| Untag | Not implemented | |
| Update | Implemented | Local observation: Vera 1.2.0 preview, 5 November 2026 — disabled a compute environment. |
| Update | Not implemented | |
| Update | Implemented | Local observation: Vera 1.2.0 preview, 5 November 2026 — disabled a job queue. |
| Update | Not implemented | |
| Update | Implemented | |
| Update | Not implemented | |
| Update | Not implemented |