← All Modules

assay.aws.ec2

AWS EC2 read-only client built on assay.aws.sigv4. Describes instances, EBS volumes, and security groups via the EC2 Query API (signed GET requests, XML responses). Read-only — no mutating actions.

Client

Describe

All three accept an optional opts table:

Mutation

None. Every method issues a signed http.get, so read-only and approval modes leave them unrestricted.

Example:

local ec2 = require("assay.aws.ec2")
local c = ec2.client({
  access_key = env.get("AWS_ACCESS_KEY_ID"),
  secret_key = env.get("AWS_SECRET_ACCESS_KEY"),
  session_token = env.get("AWS_SESSION_TOKEN"),
  region = "us-east-1",
})

local running = c:describe_instances({
  filters = { { name = "instance-state-name", values = { "running" } } },
})
for _, i in ipairs(running) do
  print(i.instance_id, i.instance_type, i.availability_zone)
end