giantswarm / roadmap

Giant Swarm Product Roadmap
https://github.com/orgs/giantswarm/projects/273
Apache License 2.0
3 stars 0 forks source link

Versions of apps and components beyond the first CAPI release #3326

Open nprokopic opened 7 months ago

nprokopic commented 7 months ago

AKA feature development work after the migration.

Towards https://github.com/giantswarm/roadmap/issues/3057

User Story

Acceptance Criteria

Dependencies

Tasks

nprokopic commented 7 months ago

Proposal

TL;DR:

Next - deep dive.

nprokopic commented 7 months ago

Let’s start with the next Kubernetes version.

nprokopic commented 7 months ago

Now about even newer Kubernetes and the new app versions.

Other notes:

The following sections describe few scenarios.

nprokopic commented 7 months ago

Scenario 1: New releases for new patch versions of apps and components

This scenario shows how we:

Given we have these vintage (AWS) and CAPA releases:

When we release new patch version of MyApp v1.3.1 that does not have any braking changes for customers

Then we have to create these new patch vintage (AWS) and CAPI (CAPA) releases:

In case v27.0.0 also has MyApp v1.3.0, then we also create:

And the following upgrade and migration paths are then supported:

nprokopic commented 7 months ago

Scenario 2: k8s 1.27 and new app minor and major versions

This scenario shows how we:

Given we have these vintage (AWS) and CAPA releases:

When we release a new major version of BarApp v3.0.0 and a new minor version of FooApp v1.4.0

Then we have to create a new major CAPI (CAPA) release v27 with new Kubernetes version v1.27 and new app versions (previous major versions do not get new patch nor minor versions).

Note: in rare cases new FooApp version v1.4.0 can be delivered also in v20, v25, v26, if and only if it contains fixes for critical issues or CVEs. In that case we would have additional following releases with FooApp v1.4.0:

And the following upgrade and migration paths are then supported:

nprokopic commented 7 months ago

I will add more comments about the development and testing.