Skip to content

Conversation

@fonta-rh
Copy link
Contributor

Summary

  • Add pre-deployment EC2 capacity validation before CloudFormation stack creation
  • Auto-detect first available AZ with capacity in the configured region
  • Create targeted capacity reservation to guarantee instance provisioning
  • Provide actionable error messages when no capacity is available

JIRA

OCPEDGE-2286

🤖 Generated with Claude Code

…oyment

Add pre-deployment capacity validation before CloudFormation stack creation
to prevent failures due to EC2 capacity constraints.

Changes:
- Add create_capacity_reservation() function that auto-detects available AZs
  and creates a targeted capacity reservation
- Add cancel_capacity_reservation() for cleanup on destroy or failure
- Update CloudFormation template with CapacityReservationId and
  AvailabilityZone parameters with conditional usage
- Add ENABLE_CAPACITY_RESERVATION config variable (default: true)
- Add error handling flags to destroy.sh for consistency

The capacity check runs before stack creation, trying each AZ in the region
until one with available capacity is found. On failure, users get actionable
error messages suggesting alternative regions or instance types.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jan 23, 2026
@openshift-ci-robot
Copy link

openshift-ci-robot commented Jan 23, 2026

@fonta-rh: This pull request references OCPEDGE-2286 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.22.0" version, but no target version was set.

Details

In response to this:

Summary

  • Add pre-deployment EC2 capacity validation before CloudFormation stack creation
  • Auto-detect first available AZ with capacity in the configured region
  • Create targeted capacity reservation to guarantee instance provisioning
  • Provide actionable error messages when no capacity is available

JIRA

OCPEDGE-2286

🤖 Generated with Claude Code

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot requested review from jaypoulz and qJkee January 23, 2026 13:50
@openshift-ci
Copy link

openshift-ci bot commented Jan 23, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fonta-rh

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 23, 2026
@openshift-ci
Copy link

openshift-ci bot commented Jan 23, 2026

@fonta-rh: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/shellcheck 3e5e866 link true /test shellcheck

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants