Skip to main content

API Reference

Complete reference documentation for Infra Operator Custom Resource Definitions (CRDs).

API Group

All Infra Operator resources use the following API group:

API Group:

aws-infra-operator.runner.codes/v1alpha1

Available Resources

Core Resources

KindDescriptionStatus
AWSProviderAWS credentials and configurationStable

Networking Resources

KindDescriptionStatus
VPCVirtual Private CloudStable
SubnetVPC SubnetStable
InternetGatewayInternet GatewayStable
NATGatewayNAT GatewayStable
RouteTableRoute TableStable
SecurityGroupSecurity GroupStable
ElasticIPElastic IP AddressStable
ALBApplication Load BalancerStable
NLBNetwork Load BalancerStable

Compute Resources

KindDescriptionStatus
EC2InstanceEC2 InstanceStable
EKSClusterEKS Kubernetes ClusterStable
ECSClusterECS Container ClusterStable
LambdaFunctionLambda FunctionStable
ComputeStackAll-in-one InfrastructureStable

Storage Resources

KindDescriptionStatus
S3BucketS3 BucketStable

Database Resources

KindDescriptionStatus
RDSInstanceRDS Database InstanceStable
DynamoDBTableDynamoDB TableStable
ElastiCacheClusterElastiCache ClusterStable

Container Resources

KindDescriptionStatus
ECRRepositoryECR Container RegistryStable

Messaging Resources

KindDescriptionStatus
SQSQueueSQS QueueStable
SNSTopicSNS TopicStable

Security Resources

KindDescriptionStatus
IAMRoleIAM RoleStable
KMSKeyKMS Encryption KeyStable
SecretsManagerSecretSecrets Manager SecretStable
CertificateACM CertificateStable
EC2KeyPairEC2 SSH Key PairStable

CDN & DNS Resources

KindDescriptionStatus
CloudFrontCloudFront DistributionStable
Route53HostedZoneRoute53 Hosted ZoneStable
Route53RecordSetRoute53 DNS RecordStable

API Management

KindDescriptionStatus
APIGatewayAPI GatewayStable

Common Fields

ProviderRef

All AWS resources require a reference to an AWSProvider:

Example:

spec:
providerRef:
name: aws-production # Name of AWSProvider resource

Tags

Most resources support AWS tags:

Example:

spec:
tags:
Environment: production
Team: platform
ManagedBy: infra-operator

DeletionPolicy

Controls what happens when the Kubernetes resource is deleted:

Example:

spec:
deletionPolicy: Delete # Delete | Retain | Orphan
  • Delete: Delete the AWS resource when CR is deleted (default)
  • Retain: Keep the AWS resource but remove from operator management
  • Orphan: Keep the AWS resource and remove ownership metadata

Status Fields

All resources expose common status fields:

FieldTypeDescription
readybooleanWhether resource is ready for use
lastSyncTimestringLast successful sync with AWS
conditionsarrayDetailed status conditions

Example

Example:

apiVersion: aws-infra-operator.runner.codes/v1alpha1
kind: VPC
metadata:
name: production-vpc
namespace: infra-operator
spec:
providerRef:
name: aws-production
cidrBlock: "10.0.0.0/16"
enableDnsSupport: true
enableDnsHostnames: true
tags:
Environment: production
deletionPolicy: Retain
status:
vpcID: vpc-0123456789abcdef0
cidrBlock: "10.0.0.0/16"
state: available
ready: true
lastSyncTime: "2025-11-22T20:18:08Z"

Next Steps