From b775d11a70979c258d6954e864b60a2cb8b3dd84 Mon Sep 17 00:00:00 2001 From: Scott Rigby Date: Sat, 13 Mar 2021 12:48:56 -0500 Subject: [PATCH] Flux Migration and Support Timetable * Set explicit column widths for timetable No need for old Firefox workaround. It appears fine on FF in 2021 See: - https://github.com/squidfunk/mkdocs-material/issues/922 - https://github.com/squidfunk/mkdocs-material/issues/118 * Hide TOC right column on migration table page * SDK->GOTK footnote * Cross-link admonitions between Roadmap and Timetable To-do: change structure and file names under migration menu dir when we move to fluxcd/website * Add custom heart admonition * Link to documentated deprecation of apiextensions.k8s.io/v1beta1 CustomResourceDefinition * Fix caret (^^ underlines short status) * Initial migration and Support Timetable Add mkdocs markdown_extensions and sort them alphabetically Co-authored-by: Stefan Prodan Signed-off-by: Scott Rigby --- docs/_static/custom.css | 27 +++++++++++++++++++++++++- docs/migration/timetable.md | 38 +++++++++++++++++++++++++++++++++++++ docs/roadmap/index.md | 1 + mkdocs.yml | 29 +++++++++++++++------------- 4 files changed, 81 insertions(+), 14 deletions(-) create mode 100644 docs/migration/timetable.md diff --git a/docs/_static/custom.css b/docs/_static/custom.css index fe31d76d..e17c215b 100644 --- a/docs/_static/custom.css +++ b/docs/_static/custom.css @@ -94,4 +94,29 @@ body { .progress-0plus .progress-bar { background-color: #ff1744; - } \ No newline at end of file + } + +/* Custom admonitions */ +/* See https://squidfunk.github.io/mkdocs-material/reference/admonitions */ +:root { + --md-admonition-icon--heart: url('data:image/svg+xml;charset=utf-8,') +} +.md-typeset .admonition.heart, +.md-typeset details.heart { + border-color: rgb(233, 30, 99); +} +.md-typeset .heart > .admonition-title, +.md-typeset .heart > summary { + background-color: rgba(233, 30, 99, 0.1); +} +.md-typeset .heart > .admonition-title::before, +.md-typeset .heart > summary::before { + background-color: rgb(233, 30, 99); + -webkit-mask-image: var(--md-admonition-icon--heart); + mask-image: var(--md-admonition-icon--heart); +} + +.timetable-explicit-col-widths th:nth-child(1) { width: 4%; } +.timetable-explicit-col-widths th:nth-child(2) { width: 32%; } +.timetable-explicit-col-widths th:nth-child(3) { width: 32%; } +.timetable-explicit-col-widths th:nth-child(4) { width: 32%; } diff --git a/docs/migration/timetable.md b/docs/migration/timetable.md new file mode 100644 index 00000000..537028a7 --- /dev/null +++ b/docs/migration/timetable.md @@ -0,0 +1,38 @@ +--- +hide: + # The table data on this page is easier to read when wider + # The TOC right column is already blank anyway + - toc +--- +# Migration and Support Timetable + +!!! heart "Flux Migration Commitment" + This public timetable clarifies our commitment to end users. + Its purpose is to help improve your experience in deciding how and when to plan infra decisions related to Flux versions. + Please refer to the [Roadmap](../roadmap/index.md) for additional details. + + + +
+ + + +| Date | Flux 1 | Flux 2 CLI | GOTK[^1] | +| -- | -- | -- | -- | +| Oct 6, 2020 | ^^[Maintenance Mode](https://github.com/fluxcd/website/pull/25)^^
  • Flux 1 releases only include critical bug fixes (which don’t require changing Flux 1 architecture), and security patches (for OS packages, Go runtime, and kubectl). No new features
  • Existing projects encouraged to test migration to Flux 2 pre-releases in non-production
| ^^Development Mode^^
  • Working to finish parity with Flux 1
  • New projects encouraged to test Flux 2 pre-releases in non-production
| ^^All Alpha^^[^2] | +Feb 18, 2021 | ^^Partial Migration Mode^^
  • Existing projects encouraged to migrate to `v1beta1`/`v2beta1` if you only use those features (Flux 1 read-only mode, and Helm Operator)
  • Existing projects encouraged to test image automation Alpha in non-production
| ^^Feature Parity^^ | ^^Image Automation Alpha. All others reached Feature Parity, Beta^^ | +| TBD | ^^Superseded^^
  • All existing projects encouraged to [migrate to Flux 2](https://toolkit.fluxcd.io/guides/flux-v1-migration/), and [report any bugs](https://github.com/fluxcd/flux2/issues/new/choose)
  • Flux 1 Helm Operator archived – no further updates due to unsupported dependencies
| ^^Needs further testing, may get breaking changes^^
  • CLI needs further user testing during this migration period
| ^^All Beta, Production Ready^^[^3]
  • All Flux 1 features stable and supported in Flux 2
  • Promoting Alpha versions to Beta makes this Production Ready
| +| TBD | ^^Migration and security support only^^
  • Flux 1 releases only include security patches (no bug fixes)
  • Maintainers support users with migration to Flux 2 only, no longer with Flux 1 issues
  • Flux 1 archive date announced
| ^^Public release (GA), Production Ready^^
  • CLI commits to backwards compatibility moving forward
  • CLI follows kubectl style backwards compatibility support: +1 -1 MINOR version for server components (e.g., APIs, Controllers, validation webhooks)
| ^^All Beta, Production Ready^^ | +| TBD | ^^Archived^^
  • Flux 1 obsolete, no further releases or maintainer support
  • Flux 1 repo archived
| ^^Continued active development^^ | ^^Continued active development^^ | + + +
+ +[^1]: GOTK is shorthand for the [GitOps Toolkit](https://toolkit.fluxcd.io/components/) APIs and Controllers + +[^2]: Versioning: Flux 2 is a multi-service architecture, so requires a more complex explanation than Flux 1: + - Flux 2 CLI follows [Semantic Versioning](https://semver.org/) scheme + - The GitOps Toolkit APIs follow the [Kubernetes API versioning](https://kubernetes.io/docs/reference/using-api/#api-versioning) pattern. See [Roadmap](https://toolkit.fluxcd.io/roadmap/) for component versions. + - These are coordinated for cross-compatibility: For each Flux 2 CLI tag, CLI and GOTK versions are end-to-end tested together, so you may safely upgrade from one MINOR/PATCH version to another. + +[^3]: The GOTK Custom Resource Definitions which are at `v1beta1` and `v2beta1` and their controllers are considered stable and production ready. Going forward, breaking changes to the beta CRDs will be accompanied by a conversion mechanism. diff --git a/docs/roadmap/index.md b/docs/roadmap/index.md index d4daccf4..b4088451 100644 --- a/docs/roadmap/index.md +++ b/docs/roadmap/index.md @@ -4,6 +4,7 @@ The Flux custom resource definitions which are at `v1beta1` and `v2beta1` and their controllers are considered stable and production ready. Going forward, breaking changes to the beta CRDs will be accompanied by a conversion mechanism. + Please see the [Migration and Suport Timetable](../migration/timetable.md) for our commitment to end users. The following components (included by default in [flux bootstrap](../guides/installation.md#bootstrap)) are considered production ready: diff --git a/mkdocs.yml b/mkdocs.yml index 5cbefe28..7e638081 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -26,31 +26,34 @@ plugins: markdown_extensions: - admonition - - meta - codehilite: guess_lang: false - - toc: - permalink: true + - footnotes + - meta + - pymdownx.caret + - pymdownx.emoji: + emoji_generator: !!python/name:materialx.emoji.to_svg + emoji_index: !!python/name:materialx.emoji.twemoji + - pymdownx.extra + - pymdownx.progressbar - pymdownx.superfences: highlight_code: true - pymdownx.tabbed - - pymdownx.tilde - - pymdownx.progressbar - pymdownx.tasklist - - pymdownx.superfences - - pymdownx.emoji: - emoji_index: !!python/name:materialx.emoji.twemoji - emoji_generator: !!python/name:materialx.emoji.to_svg + - pymdownx.tilde + - toc: + permalink: true nav: - Introduction: index.md - Core Concepts: core-concepts/index.md - Get Started: get-started/index.md - Migration: - - Migrate from Flux v1: guides/flux-v1-migration.md - - Migrate from Flux v1 image update automation: guides/flux-v1-automation-migration.md - - Migrate from the Helm Operator: guides/helm-operator-migration.md - - FAQ: guides/faq-migration.md + - Migration and Support Timetable: migration/timetable.md + - Migrate from Flux v1: guides/flux-v1-migration.md + - Migrate from Flux v1 image update automation: guides/flux-v1-automation-migration.md + - Migrate from the Helm Operator: guides/helm-operator-migration.md + - FAQ: guides/faq-migration.md - Guides: - Installation: guides/installation.md - Manage Helm Releases: guides/helmreleases.md