Deprecate and remove the Spotinst integration
- Dominant language
- Go
- Stars
- 16.7k
- Forks
- 4.7k
- Avg merge
- 17h 21m
- Merged PRs (30d)
- 68
Description
## Summary
Proposed schedule:
- **kOps 1.37:** Deprecate the Spotinst integration.
- **kOps 1.38:** Block creation of new Spotinst clusters.
- **kOps 1.39:** Remove the integration.
In December 2022, kOps added a Help Wanted request for a maintainer and warned that the integration could be phased out. Spot responded in May 2023 (#15357) and contributed through November 2024 (#16931), but the integration remains alpha, feature-gated, and unmaintained.
## Why
- No integration-specific maintainer activity since November 2024.
- The Spotinst OWNERS files have no approvers or reviewers.
- `spotinst-sdk-go` is pinned at v1.372.0, 43 releases behind, and explicitly excluded from automated dependency updates.
- There are no dedicated unit, integration, or e2e tests.
- The integration contains about 7,100 lines of code plus 26,000 vendored SDK lines and is coupled into shared AWS code.
Removal must prevent `kops update cluster` from silently creating duplicate ASGs alongside a live Ocean or Elastigroup cluster. The Spot resource deletion path must remain available for one additional release so existing clusters can still be deleted safely.
**Production users: please comment with your kOps version and the Spot features you depend on.**
Anyone willing to maintain the integration should reply on this issue.
/kind cleanup
/area provider/spotinst
Contributor guide
Research direction
Trace the Spotinst provider through the shared AWS code and the `kops update cluster` entry point; review the Spotinst OWNERS files and the `spotinst-sdk-go` dependency. Confirm the staged 1.37/1.38/1.39 plan, including retaining Spot resource deletion for one release, and verify that updates cannot create duplicate ASGs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, go
- Domain
- cloud, infrastructure
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100