aws / aws/eks-anywhere

Push-button EKS Anywhere release

Open
#1,781 1 comment 5 reactions 0 assignees View on GitHub
area/release
Dominant language
Go
Stars
2.1k
Forks
328
Avg merge
1d 4h
Merged PRs (30d)
9

Description

**Releasing an EKS Anywhere binary should require a single 'button push' to run.**

As an EKS Anywhere Release Manager, I want to 'press a button' which kicks off an automated release process, so that I can reduce the time and energy required to publish a release and reduce the potential for error by eliminating variable steps and human interaction from the process.

By automating this process we will enable increased delivery cadence, reduce skill-based bottlenecks, and allow for quick, stable and error-free releases, which can be especially important in the face of bugs or security concerns.

Each task in the release process should be individually automated, and an orchestration layer will coordinate the execution of those tasks in order to perform a whole release. When manual approval is required for a specific step, a human operator will be notified (via some mechanism, probably Slack) in order to provide their input at that stage.

**Steps**
- cut release branch from `main`
- set up test infrastructure
- add release branch to integration test infrastructure
- add permissions for created release branch pipeline role to create test instances
- create and test a staging release
- create and test a prod release
- publish release to GitHub
- upload binaries
- upload binary checksums
- publish documentation

Each step should be automated to the fullest extent possible. An orchestration layer should coordinate the invocation of automated steps with human checkpoints and approval steps where necessary. Human interaction should be limited to the approval of the output of automated steps, such as approving a PR or reviewing anomalous test results.
![eks-a-release-process](https://user-images.githubusercontent.com/11739241/162282125-d580c386-6921-4e86-b319-ef648b35ee5b.svg)

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points; first map the existing release process and its pipeline configuration. Done means the listed branch, infrastructure, staging, production, GitHub publication, and documentation steps run through an orchestrated process, with human approvals only where required.

Written by the indexing model from the issue text.

Assessment

Tech stack
github
Domain
ci-cd, devops, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.