mirror of
https://github.com/mulgadc/spinifex.git
synced 2026-10-20 11:21:49 +00:00
87608a3b52
Host reservations, ECR image scanning and the flow-logs integration template were declared not applicable, and the reserved instance family with them. None of those are ruled out: reservations and scheduled instances can be mocked over capacity reservations the way spot instances already are, scanning needs only a scanner behind the API, and the template needs CloudFormation. What stays is what the platform cannot have: retired AWS features, operations whose content is an AWS price or counterparty, and AWS-hosted services with nothing behind them here.
title, seoTitle, description, category, sections, tags
| title | seoTitle | description | category | sections | tags | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| EC2 API Coverage | Amazon EC2 API Coverage on Spinifex — Spinifex Docs | The Amazon EC2 API operations Spinifex implements, covering instances, EBS volumes, VPC networking, tags and security groups, with those it does not offer. | Coverage |
|
|
EC2 API Coverage
Overview
Spinifex implements 125 operations in the EC2 2016-11-15 API model.
Spot Instances Are a Mock
Spot Instance Requests are a mock over the on-demand RunInstances path. A request synchronously launches real VMs on the operator's own compute and is then reported active and fulfilled. There is no spot market: no bidding, no price rejection, no interruption and no reclamation, and instances are never taken back.
Operations
| Operation | Status |
|---|---|
AllocateAddress |
✅ Implemented |
AssociateAddress |
✅ Implemented |
AssociateIamInstanceProfile |
✅ Implemented |
AssociateRouteTable |
✅ Implemented |
AttachClassicLinkVpc |
⛔ Not applicable 4 |
AttachInternetGateway |
✅ Implemented |
AttachNetworkInterface |
✅ Implemented |
AttachVolume |
✅ Implemented |
AuthorizeSecurityGroupEgress |
✅ Implemented |
AuthorizeSecurityGroupIngress |
✅ Implemented |
CancelCapacityReservation |
✅ Implemented |
CancelReservedInstancesListing |
⛔ Not applicable 9 |
CancelSpotInstanceRequests |
✅ Implemented |
ConfirmProductInstance |
⛔ Not applicable 7 |
CopyFpgaImage |
⛔ Not applicable 5 |
CopyImage |
✅ Implemented |
CopySnapshot |
✅ Implemented |
CreateCapacityReservation |
✅ Implemented |
CreateCarrierGateway |
⛔ Not applicable 2 |
CreateEgressOnlyInternetGateway |
✅ Implemented |
CreateFpgaImage |
⛔ Not applicable 5 |
CreateImage |
✅ Implemented |
CreateInternetGateway |
✅ Implemented |
CreateKeyPair |
✅ Implemented |
CreateLaunchTemplate |
✅ Implemented |
CreateLaunchTemplateVersion |
✅ Implemented |
CreateNatGateway |
✅ Implemented |
CreateNetworkInterface |
✅ Implemented |
CreatePlacementGroup |
✅ Implemented |
CreateReservedInstancesListing |
⛔ Not applicable 9 |
CreateRoute |
✅ Implemented |
CreateRouteTable |
✅ Implemented |
CreateSecurityGroup |
✅ Implemented |
CreateSnapshot |
✅ Implemented |
CreateSubnet |
✅ Implemented |
CreateTags |
✅ Implemented |
CreateVolume |
✅ Implemented |
CreateVpc |
✅ Implemented |
DeleteCarrierGateway |
⛔ Not applicable 2 |
DeleteEgressOnlyInternetGateway |
✅ Implemented |
DeleteFpgaImage |
⛔ Not applicable 5 |
DeleteInternetGateway |
✅ Implemented |
DeleteKeyPair |
✅ Implemented |
DeleteLaunchTemplate |
✅ Implemented |
DeleteLaunchTemplateVersions |
✅ Implemented |
DeleteNatGateway |
✅ Implemented |
DeleteNetworkInterface |
✅ Implemented |
DeletePlacementGroup |
✅ Implemented |
DeleteRoute |
✅ Implemented |
DeleteRouteTable |
✅ Implemented |
DeleteSecurityGroup |
✅ Implemented |
DeleteSnapshot |
✅ Implemented |
DeleteSubnet |
✅ Implemented |
DeleteTags |
✅ Implemented |
DeleteVolume |
✅ Implemented |
DeleteVpc |
✅ Implemented |
DeregisterImage |
✅ Implemented |
DescribeAccountAttributes |
✅ Implemented |
DescribeAddresses |
✅ Implemented |
DescribeAddressesAttribute |
✅ Implemented |
DescribeAggregateIdFormat |
⛔ Not applicable 6 |
DescribeAvailabilityZones |
✅ Implemented |
DescribeAwsNetworkPerformanceMetricSubscriptions |
⛔ Not applicable 1 |
DescribeCapacityReservations |
✅ Implemented |
DescribeCarrierGateways |
⛔ Not applicable 2 |
DescribeClassicLinkInstances |
⛔ Not applicable 4 |
DescribeEgressOnlyInternetGateways |
✅ Implemented |
DescribeElasticGpus |
⛔ Not applicable 8 |
DescribeFpgaImageAttribute |
⛔ Not applicable 5 |
DescribeFpgaImages |
⛔ Not applicable 5 |
DescribeIamInstanceProfileAssociations |
✅ Implemented |
DescribeIdFormat |
⛔ Not applicable 6 |
DescribeIdentityIdFormat |
⛔ Not applicable 6 |
DescribeImageAttribute |
✅ Implemented |
DescribeImages |
✅ Implemented |
DescribeInstanceAttribute |
✅ Implemented |
DescribeInstanceCreditSpecifications |
✅ Implemented |
DescribeInstanceStatus |
✅ Implemented |
DescribeInstanceTypeOfferings |
✅ Implemented |
DescribeInstanceTypes |
✅ Implemented |
DescribeInstances |
✅ Implemented |
DescribeInternetGateways |
✅ Implemented |
DescribeKeyPairs |
✅ Implemented |
DescribeLaunchTemplateVersions |
✅ Implemented |
DescribeLaunchTemplates |
✅ Implemented |
DescribeMovingAddresses |
⛔ Not applicable 4 |
DescribeNatGateways |
✅ Implemented |
DescribeNetworkInterfaces |
✅ Implemented |
DescribePlacementGroups |
✅ Implemented |
DescribePrincipalIdFormat |
⛔ Not applicable 6 |
DescribeRegions |
✅ Implemented |
DescribeReservedInstancesListings |
⛔ Not applicable 9 |
DescribeRouteTables |
✅ Implemented |
DescribeSecurityGroupRules |
✅ Implemented |
DescribeSecurityGroups |
✅ Implemented |
DescribeSnapshots |
✅ Implemented |
DescribeSpotInstanceRequests |
✅ Implemented |
DescribeSpotPriceHistory |
⛔ Not applicable 10 |
DescribeSubnets |
✅ Implemented |
DescribeTags |
✅ Implemented |
DescribeVolumeStatus |
✅ Implemented |
DescribeVolumes |
✅ Implemented |
DescribeVolumesModifications |
✅ Implemented |
DescribeVpcAttribute |
✅ Implemented |
DescribeVpcClassicLink |
⛔ Not applicable 4 |
DescribeVpcClassicLinkDnsSupport |
⛔ Not applicable 4 |
DescribeVpcs |
✅ Implemented |
DetachClassicLinkVpc |
⛔ Not applicable 4 |
DetachInternetGateway |
✅ Implemented |
DetachNetworkInterface |
✅ Implemented |
DetachVolume |
✅ Implemented |
DisableAwsNetworkPerformanceMetricSubscription |
⛔ Not applicable 1 |
DisableEbsEncryptionByDefault |
✅ Implemented |
DisableSerialConsoleAccess |
✅ Implemented |
DisableVpcClassicLink |
⛔ Not applicable 4 |
DisableVpcClassicLinkDnsSupport |
⛔ Not applicable 4 |
DisassociateAddress |
✅ Implemented |
DisassociateIamInstanceProfile |
✅ Implemented |
DisassociateRouteTable |
✅ Implemented |
EnableAwsNetworkPerformanceMetricSubscription |
⛔ Not applicable 1 |
EnableEbsEncryptionByDefault |
✅ Implemented |
EnableSerialConsoleAccess |
✅ Implemented |
EnableVpcClassicLink |
⛔ Not applicable 4 |
EnableVpcClassicLinkDnsSupport |
⛔ Not applicable 4 |
GetAwsNetworkPerformanceData |
⛔ Not applicable 1 |
GetConsoleOutput |
✅ Implemented |
GetEbsEncryptionByDefault |
✅ Implemented |
GetPasswordData |
✅ Implemented |
GetSecurityGroupsForVpc |
✅ Implemented |
GetSerialConsoleAccessStatus |
✅ Implemented |
ImportKeyPair |
✅ Implemented |
ModifyFpgaImageAttribute |
⛔ Not applicable 5 |
ModifyIdFormat |
⛔ Not applicable 6 |
ModifyIdentityIdFormat |
⛔ Not applicable 6 |
ModifyImageAttribute |
✅ Implemented |
ModifyInstanceAttribute |
✅ Implemented |
ModifyInstanceMetadataOptions |
✅ Implemented |
ModifyLaunchTemplate |
✅ Implemented |
ModifyNetworkInterfaceAttribute |
✅ Implemented |
ModifySubnetAttribute |
✅ Implemented |
ModifyVolume |
✅ Implemented |
ModifyVpcAttribute |
✅ Implemented |
MonitorInstances |
✅ Implemented |
MoveAddressToVpc |
⛔ Not applicable 4 |
RebootInstances |
✅ Implemented |
RegisterImage |
✅ Implemented |
ReleaseAddress |
✅ Implemented |
ReplaceIamInstanceProfileAssociation |
✅ Implemented |
ReplaceRoute |
✅ Implemented |
ReplaceRouteTableAssociation |
✅ Implemented |
ReportInstanceStatus |
⛔ Not applicable 3 |
RequestSpotInstances |
✅ Implemented |
ResetFpgaImageAttribute |
⛔ Not applicable 5 |
ResetImageAttribute |
✅ Implemented |
RestoreAddressToClassic |
⛔ Not applicable 4 |
RevokeSecurityGroupEgress |
✅ Implemented |
RevokeSecurityGroupIngress |
✅ Implemented |
RunInstances |
✅ Implemented |
StartInstances |
✅ Implemented |
StopInstances |
✅ Implemented |
TerminateInstances |
✅ Implemented |
UnmonitorInstances |
✅ Implemented |
UpdateSecurityGroupRuleDescriptionsEgress |
✅ Implemented |
UpdateSecurityGroupRuleDescriptionsIngress |
✅ Implemented |
Notes
- These report performance across AWS's own global network between its regions and zones.
- Carrier gateways route to a telecommunications carrier's 5G network in an AWS Wavelength Zone.
- Reporting an instance as impaired files a report with AWS support about AWS hardware.
- EC2-Classic is the pre-VPC network AWS retired in 2022. Every instance here is in a VPC.
- FPGA images are built and ingested through AWS's own AFI pipeline for its F1 instances.
- These switched resource IDs between the short and long forms during AWS's 2016 migration, which has long since finished.
- Product codes belong to AWS Marketplace, which has no equivalent here.
- Elastic Graphics was retired by AWS, and attached nothing but an AWS-hosted accelerator while it existed.
- The Reserved Instance Marketplace resells a reservation to another AWS customer, so AWS is the counterparty.
- On owned hardware there is no spot-to-on-demand price differential, so any figure would be invented.