From 9865b4788c7ffe373e68e2642d9714da5bd37d15 Mon Sep 17 00:00:00 2001 From: Lars Francke Date: Tue, 27 Jun 2023 21:22:19 +0200 Subject: [PATCH 1/3] Adds various policies we will try to follow in the future. Enterprise Readiness, here we come! This is not wired up in the docs just yet. It is a draft for now. --- modules/ROOT/pages/policies.adoc | 148 +++++++++++++++++++++++++++++++ 1 file changed, 148 insertions(+) create mode 100644 modules/ROOT/pages/policies.adoc diff --git a/modules/ROOT/pages/policies.adoc b/modules/ROOT/pages/policies.adoc new file mode 100644 index 000000000..a0aa522db --- /dev/null +++ b/modules/ROOT/pages/policies.adoc @@ -0,0 +1,148 @@ += Lifecycle Policies + +This page details our current lifecycle policies around various parts of our product - the Stackable Data Platform (SDP). + +We define multiple lifecycle policies for different parts of our platform, but all these policies follow some common goals: + +* It should always be possible to upgrade to a new version of SDP without also changing any of your Kubernetes resources as long as you are not currently using anything that has already been marked as deprecated +** This means you can upgrade the control plane independently of the user-facing products + +* All deprecations follow a predictable lifecycle that allows planning of upgrades ahead of time + +The guarantees we give are on multiple levels as detailed below: + +* The SDP itself +* CustomResourceDefinition (CRD) versions +* Supported product versions +* Supported OpenShift & Kubernetes + +All these policies may evolve as we learn what works best for our customers and for us. + +These policies are from *June 2023*. + + +== Stackable Data Platform Lifecycle Policy + +NOTE: This policy concerns releases of our platform as a whole and how long and to which extent we support each version. + +We do releases of our Stackable Data Platform. + +These releases get a name based on the date they have been released (e.g. `23.4`, `23.7`). This name does not follow Semantic Versioning (Semver). We may release patches for a release, which then follow the PATCH naming semantics of Semver (e.g. `23.4.1`). See below for our policy on patches for the SDP. + +We do support an SDP release for a specific time after its release. + +An SDP release contains our operators and other code developed at Stackable as well as the product docker images. + +TIP: Our policy is inspired by the https://kubernetes.io/releases/patch-releases/[Kubernetes] and the https://access.redhat.com/support/policy/updates/openshift#ocp4[OpenShift] policies. + +=== Full Support Phase + +This phase begins once a new non-patch SDP version is released and ends after a 6-month period OR 3 months after the general availability of the superseding non-patch release, whichever is later. + +The following pictures show both scenarios: + +TODO: Insert diagrams here + +We _will_ release new patch releases of a SDP release (e.g. `23.4.1`) for any issues we deem Critical or High (see definition below) once fixes become available. + +=== Maintenance Phase + +This phase commences after the _Full Support_ phase for the respective SDP version and ends 12 months after general availability of the SDP release. + +We _may_ release new patch releases of a SDP release (e.g. `23.4.1`) for any issues we deem Critical or High (see definition below) once fixes become available. + +TODO: Insert diagram + +=== General + +We may release patches for other reasons. + +Customers are expected to upgrade their SDP environment to the most current supported patch (`23.4.z`) version. + + +== CRD Versioning Lifecycle Policy + +IMPORTANT: As of June 2023 all our CRDs are versioned as `alpha1`. We will start introducing other versions later in 2023. + +`CustomResourceDefinition`s at Stackable are versioned. + +Our policies around CRD versioning are inspired by the https://kubernetes.io/docs/reference/using-api/deprecation-policy/[Kubernetes Deprecation Policy]. + +Specifically we try to follow these rules: + +* API elements may only be removed by incrementing the version of the API group. + +* API objects must be able to round-trip between API versions in a given release without information loss, except for whole REST resources that do not exist in some versions. + +* An API version in a given track may not be deprecated in favor of a less stable API version. + +* API lifetime is determined by the API stability level +** Alpha API versions may be removed in any release without prior deprecation notice. + +** Beta API versions are deprecated at a minimum of 1 platform releases after introduction and removed at a minimum of 1 platform releases after deprecation. + +** GA (stable) API versions are deprecated at a minimum of 2 platform releases after introduction and removed at a minimum of 1 platform releases after deprecation. + +Similar to the Exception noted by the Kubernetes project itself, we will also evolve these policies as we go along and find that one of the rules doesn't fit a situation. + +NOTE: According to these rules it is legal to _add_ fields to a CRD without increasing the version as long as there is a default for this field. + + +== Product Lifecycle Policy + +SDP ships with a lot of different downstream products (e.g. Apache HBase, Apache Superset). + +All of these products follow their own version semantics and release cadences and lifecycles, which is why we do not define a product lifecycle policy based on version numbers alone. + +For every one of the products we ship we always support one LTS (Long Term Support) release line, which we generally recommend to use. A release line usually means that we are going to keep a `major.minor` release stable but will include newer patch versions in later SDP releases. + +Some products (e.g. Trino) don't follow Semver rules, for those we will follow separate rules and clearly document what version is considered LTS. + +Every LTS release line is shipped for at least one full year. +After a year we may switch to a new release line. +Which line we chose as our LTS release is at our own discretion and is based on popularity, upstream lifecycle policies, stability, our own experience and other factors. + +In addition to the LTS line we may also ship other versions, e.g. the latest upstream version. + +We do honor the same deprecation policy for non-LTS products as for LTS products, but we do not guarantee a long term support for these versions. They may be deprecated faster. + +=== Deprecation + +Every product version that gets removed will be deprecated for at least 1 SDP release before removal. +This guarantees that users can update the operators (e.g. from 23.1 to 23.4) without the need to simultaneously update the product version as well. The flow is to first update the control plane (the operators) and afterward the product versions if desired (e.g. when the currently used version is now deprecated). + +=== Definition of "support" + +We will ship new versions of the LTS release line in our currently supported SDP releases (see above) for any issues we deem Critical or High in severity when they become available. + +We will also engage with the upstream projects to try and solve issues. + +It is our explicit goal to limit the amount of times we have to ship a version of the products that deviates from the original upstream source. + +We may ship new versions for existing SDP releases for other issues as well. + + +== OpenShift & Kubernetes Support Policy + +For every SDP release we will publish a list of supported Kubernetes versions. + +We are aiming to support the last three Kubernetes versions but will make case-by-case decisions by taking into account the currently supported OpenShift versions as published by RedHat where it is our goal to support all versions that are in Full or Maintenance support. As the releases may be overlapping we might not always support the latest Kubernetes or OpenShift versions when we release a SDP version. + + +== Support Policy (Security & Bugs) + +Stackable will analyze all published security vulnerabilities (e.g. CVEs but other sources may apply as well) for all the products we support. We take various sources into account when assigning a criticality. Among those sources is the NVD database, but we place higher value on the self-assessments by the projects themselves, and we will additionally evaluate all vulnerabilities in the context of how they are used in the Stackable Data Platform. + +We will then assign a criticality to each vulnerability according to similar rating categories that https://access.redhat.com/security/updates/classification[RedHat has established]: + +Critical:: +This rating is given to flaws that could be easily exploited by a remote unauthenticated attacker and lead to system compromise (arbitrary code execution) without requiring user interaction. Flaws that require authentication, local or physical access to a system, or an unlikely configuration are not classified as Critical impact. These are the types of vulnerabilities that can be exploited by worms. + +High:: +This rating is given to flaws that can easily compromise the confidentiality, integrity or availability of resources. These are the types of vulnerabilities that allow local or authenticated users to gain additional privileges, allow unauthenticated remote users to view resources that should otherwise be protected by authentication or other controls, allow authenticated remote users to execute arbitrary code, or allow remote users to cause a denial of service. + +Medium:: +This rating is given to flaws that may be more difficult to exploit but could still lead to some compromise of the confidentiality, integrity or availability of resources under certain circumstances. These are the types of vulnerabilities that could have had a Critical or Important impact but are less easily exploited based on a technical evaluation of the flaw, and/or affect unlikely configurations. + +Low:: +This rating is given to all other issues that may have a security impact. These are the types of vulnerabilities that are believed to require unlikely circumstances to be able to be exploited, or where a successful exploit would give minimal consequences. This includes flaws that are present in a program’s source code but to which no current or theoretically possible, but unproven, exploitation vectors exist or were found during the technical analysis of the flaw. From a00a7703d460705ed7bca823e2dde42e3ccc7e34 Mon Sep 17 00:00:00 2001 From: Lars Francke Date: Tue, 18 Jul 2023 22:20:38 +0200 Subject: [PATCH 2/3] Review feedback --- modules/ROOT/pages/policies.adoc | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/modules/ROOT/pages/policies.adoc b/modules/ROOT/pages/policies.adoc index a0aa522db..bc5f86f04 100644 --- a/modules/ROOT/pages/policies.adoc +++ b/modules/ROOT/pages/policies.adoc @@ -14,11 +14,11 @@ The guarantees we give are on multiple levels as detailed below: * The SDP itself * CustomResourceDefinition (CRD) versions * Supported product versions -* Supported OpenShift & Kubernetes +* Supported OpenShift & Kubernetes versions All these policies may evolve as we learn what works best for our customers and for us. -These policies are from *June 2023*. +These policies are from *July 2023*. == Stackable Data Platform Lifecycle Policy @@ -26,8 +26,7 @@ These policies are from *June 2023*. NOTE: This policy concerns releases of our platform as a whole and how long and to which extent we support each version. We do releases of our Stackable Data Platform. - -These releases get a name based on the date they have been released (e.g. `23.4`, `23.7`). This name does not follow Semantic Versioning (Semver). We may release patches for a release, which then follow the PATCH naming semantics of Semver (e.g. `23.4.1`). See below for our policy on patches for the SDP. +These releases get a name based on the year and month they have been released in (e.g. `23.4`, `23.7`, also called https://calver.org/[CalVer]). This name does not follow Semantic Versioning (https://semver.org/[SemVer]). We may release patches for a release, which then follow the PATCH naming semantics of SemVer (e.g. `23.4.1`) or the _Micro_ name from CalVer. See below for our policy on patches for the SDP. We do support an SDP release for a specific time after its release. @@ -44,6 +43,7 @@ The following pictures show both scenarios: TODO: Insert diagrams here We _will_ release new patch releases of a SDP release (e.g. `23.4.1`) for any issues we deem Critical or High (see definition below) once fixes become available. +We _may_ release new patch releases for other reasons. === Maintenance Phase @@ -57,8 +57,8 @@ TODO: Insert diagram We may release patches for other reasons. -Customers are expected to upgrade their SDP environment to the most current supported patch (`23.4.z`) version. - +Customers are expected to upgrade their SDP environment to the most current supported patch/micro (`23.4.z`) version. +Make sure to follow our release notes to learn of valid upgrade paths, some intermediate updates might be necessary. == CRD Versioning Lifecycle Policy @@ -94,12 +94,13 @@ SDP ships with a lot of different downstream products (e.g. Apache HBase, Apache All of these products follow their own version semantics and release cadences and lifecycles, which is why we do not define a product lifecycle policy based on version numbers alone. -For every one of the products we ship we always support one LTS (Long Term Support) release line, which we generally recommend to use. A release line usually means that we are going to keep a `major.minor` release stable but will include newer patch versions in later SDP releases. +For every one of the products we ship we always support one LTS (Long Term Support) release line, which we generally recommend to use. +A release line usually means that we are going to keep a `major.minor` release stable but will include newer patch versions in later SDP releases. Some products (e.g. Trino) don't follow Semver rules, for those we will follow separate rules and clearly document what version is considered LTS. Every LTS release line is shipped for at least one full year. -After a year we may switch to a new release line. +After a year we may switch to a new release line - but there will always be at least an overlap of one release in which the old LTS version is deprecated, but a new LTS version is available. Which line we chose as our LTS release is at our own discretion and is based on popularity, upstream lifecycle policies, stability, our own experience and other factors. In addition to the LTS line we may also ship other versions, e.g. the latest upstream version. @@ -126,12 +127,13 @@ We may ship new versions for existing SDP releases for other issues as well. For every SDP release we will publish a list of supported Kubernetes versions. -We are aiming to support the last three Kubernetes versions but will make case-by-case decisions by taking into account the currently supported OpenShift versions as published by RedHat where it is our goal to support all versions that are in Full or Maintenance support. As the releases may be overlapping we might not always support the latest Kubernetes or OpenShift versions when we release a SDP version. +We are aiming to support the last three Kubernetes versions but will make case-by-case decisions by taking into account the currently supported Kubernetes versions. +We will also take into account currently supported OpenShift versions as published by RedHat. It is our goal to support all versions that are in Full or Maintenance support. As the releases may be overlapping we might not always support the latest Kubernetes or OpenShift versions when we release a SDP version. == Support Policy (Security & Bugs) -Stackable will analyze all published security vulnerabilities (e.g. CVEs but other sources may apply as well) for all the products we support. We take various sources into account when assigning a criticality. Among those sources is the NVD database, but we place higher value on the self-assessments by the projects themselves, and we will additionally evaluate all vulnerabilities in the context of how they are used in the Stackable Data Platform. +Stackable will analyze published security vulnerabilities (e.g. CVEs but other sources may apply as well) for all the products we support as well components developed by us and their dependencies. We take various sources into account when assigning a criticality. Among those sources is the NVD database, but we place higher value on the self-assessments by the projects themselves, and we will additionally evaluate vulnerabilities in the context of how they are used in the Stackable Data Platform. We will then assign a criticality to each vulnerability according to similar rating categories that https://access.redhat.com/security/updates/classification[RedHat has established]: From 36676127116e9e159a34a6088b6364958f21493e Mon Sep 17 00:00:00 2001 From: Lars Francke Date: Mon, 24 Jul 2023 13:26:22 +0200 Subject: [PATCH 3/3] Include images --- .../assets/images/full_support_scenario_1.png | Bin 0 -> 14169 bytes .../assets/images/full_support_scenario_2.png | Bin 0 -> 14366 bytes .../ROOT/assets/images/maintenance_phase.png | Bin 0 -> 12909 bytes modules/ROOT/assets/images/policies.drawio | 388 ++++++++++++++++++ .../assets/images/product_release_cycle.png | Bin 0 -> 48867 bytes modules/ROOT/pages/policies.adoc | 10 +- 6 files changed, 395 insertions(+), 3 deletions(-) create mode 100644 modules/ROOT/assets/images/full_support_scenario_1.png create mode 100644 modules/ROOT/assets/images/full_support_scenario_2.png create mode 100644 modules/ROOT/assets/images/maintenance_phase.png create mode 100644 modules/ROOT/assets/images/policies.drawio create mode 100644 modules/ROOT/assets/images/product_release_cycle.png diff --git a/modules/ROOT/assets/images/full_support_scenario_1.png b/modules/ROOT/assets/images/full_support_scenario_1.png new file mode 100644 index 0000000000000000000000000000000000000000..8f5755a45bba11ce7827a35bab8083c317811d81 GIT binary patch literal 14169 zcmb_@2UOGB(r*+Ml%_{|5tXBKf+9t_prV2hQ3y2%f=CCYgq9!(C>Q-XG67w|wuu``x?N%VM#@E;D=2%$_|n`^OWAi6QqPkwYL5 zi2Lf5i)J7Y8w>>6^NiyF&_c-jAOQlY9lv_s9*s=x zXw@pGeYv|nw>G!twZ4QP!bSz1?yjW|WYf^je|jUS%D$gStHaON97&CzR`gI9-fqd*MxzV`KpmMH4gtU^b88tnTkA5vNsUt zce`MJ0|dGkcBV^?; zPmwl6R1`?S==H^|k}9Tl`7^9Jc3TT&acH&0gFz{C1%dS9*fF^l=>$h~V%esXL-6*_ zy1pHBLM6~;*@D&-O!JiTngS2H&gVmr#x%a>w-UbeEpuLdN~>nsU3kMFh=LH%Gh3|NQp~4+e&ju@|Jb zlfoWF=j@ql%lEW(X0(?DC24*OFs(d#ox}fr5^>a;PX4X2UlcXMT^WHn2?DK{a>fMf zl44M)U}K~tCvUH!l&wOhAp7I#X~NqaHp%alA(PJPo4+j=>;7~2=<6~i~_7uQcuJXFkJF#Fty_rA#gtV>Z4G=vO&CLi9N z#V{C_pxUE!U@r;q6ZhoJC;W~0CV5>8m;keww^~kHzg=e`+$-(*42_<;boFsn`lC6M zmW0dfPfu)p1cAa4le2HNESm*o^TC!JBE5=fHdrO(^MJwmCjpL-Aa&9^g#}>x=<^5V z*v_?-eV}mGL<=g1x6&k@fpK=Y9WT4w_jR&v;K{0ARkpX(1UnCS;OBhRn>EUEUNI9I zrmzR}3i&v#vAJ#V*cCT>9>L-4sE6%^Un#Pgfk>%7a(2MD!IRu8tp;^!v@N>F7M*eN zEbZxF1L5_q-VVgzPLU?E)j#T<;@rz_ksfHQI=^C4T&_u<%}!>2E!6#XzA9%8DeCr6 zWLYOy{l|U~h}j^EI>za*-@W*3`dce%gwy{)^UB8HhE|dK@g{22jBf=ouH3p>l>XE4 zN|5Tz#)o{-u zM?v<(R^4Pi5XhQR6cuh(R9d)%`;KCXP@5q;9ebO2%u{V-NH?uYNbv!$;gi%Th)ckD zSg*DBn^EsNy2N2O5A@7c#)YnVC(kB-@#o2g7W@9~*`L;yQD{~Z0D<;__kn=}wD21q z7+=p>&-pK#CPmgqLcDRq0hBzsk_t18dtI;m>h}v83)+V+`ZaQ^8Fy+ee_f$hjh2dl zN(r0Pl{S0UecacxZEuYfYn*V4pF|6gn?1Qyp5L-Pr-mMM#-rXeZZ7BU49#uMRsTrv z>woVs<5pCXs)(C@owqJZuA^fqso1<)ik0`)DuPA$0BAZwvF7Isvn$mTsW#nYd!#mV z`b}c@Oiw{U?HtZs=Cj9#W`R7{OS;S%Q={b$&3XJvBd@OUXwX#l3cK#c1y}1VvejzE z(Ma-GePmC&Dy7)11U<687N?Cby)MVPH?nAa@qSpO{nNFQ8 z4-G($$+BKHf!KfGw!gVttx{3ysmt^6hdcgcJF+T0WONJWI(SLY?p({#8^c7!cFoP{ zH=0~}t5{`+hDT=R54Px4fm9FZO4Cu(uL7a5srCp)cQBZ^y`<>vQb#9mF}6Mdj*GL9 zAL1xv>Gb?k_kID(h=!Y9+ZfQq9x%$Gy zj=x?ayuYU1+tL5wPETUk?46l5Fmb4)YjrZyJAb)T7pXCiU(WB;Ubjv3b}9LryrUw? zM&Po**UX)Hr8Sco-OuR0j5+uYbG>J^&jxH4Jd@Xh-2Ne< zO~|hNCnjz@IvZnVX!VsY1InCcYvkq1wh0*gdlZ)8jbFT6yAJlR$`-n%vz*@fc65ie zUK@s$BM{ZqTeR1QdVWv_U|Ztvwzv0#rETO$abIS67q@VU`}K4WmWbfTl_q_k3yIuc zN!|(J~h$BeH^dO6>Ny3bU3HkSp<*y;4fk{697&4)l8%sNtxyhJ)_T}nZdfq zQOk^PWc|7v5~7U3j)HNjsE~5?>HKaeuhIvP*$(OHzRP{Y`VG%wtrM%5_)qmGmRz9C z$d)5a+2$BfOVDB&F2S!Ldjm4w3$?F1M+ym41V2q%ECCLo3V4Us5fFg=lgq%)t?d`O z+N4Po_F$zcT9b1*hpV#iPYyNBbG7q1gsr(+bKdRw+IhnHj%u;MA>TaLDL|iMZMlfe znY^IggBOE(tx4ZrN+Zg1U;H)_W=?<7xitv*itZzlmn-&Xfj>9-b* z5S_7%xJR3Y4lD&8X%O=*;$^}@y`ugbIn})s@(aO?Eu%6s*zyY zKx%yByOt@d<~=9I4IVuJy#L0gW%FS(Z_OGZGYebaW*&)dTlYFsU8WyyZP2|yDhKWu zWAHK1S(D~T9O)cYOSRB>^|)02>y8p>`!A*kGCj(!YIyX&Ul|FRSBOdx5*W|(mCE)r zlksWVBQHDuMnpTcbx8?QVU%$c@IopXY8WJ71dMBvI6jAlv5gEP3Advq7^s|%zN7Oc8}8WnOKs7((N^@FDcRJ-9fCAT z8MqTy-Ow%i*`(%Gw#}=67+=&h?H9Ct#v`tA&dxP2)?4j8DaHWmFwLo4Z) zd);E)smggzh2DkljkWmfRjmE|)V!#XoCJi6W3{SbTeGNQF=bZJKWk?TA{rH}z7@Eg zhrcGpBW=O48mg*ISTjPgAeI4B4Q1}mJ(r!?<>jJqxc9R+2LcR@Vm6`ZDt%8;x8_-5 zU=*%2j>f){1Z?K_2Tzhy#{nkdkWeX71WJH=wFW|z`x+ui`oxdPRg>9?I%j{k#AEZ| zmsz#ffqr_6l!g^%xoakW{;-{|-kCf{&Ay_0A&nlJCkBYQXiLPKShm>UKHh1mRe=2N zg*x50=ThaSG>IRjV>7WzgUV}4XCm%74EFQzNRMCm;%=UgR7_`fXAd=?`bzr~CS(U$ zZmP`MDA&bT4%rRv2mE}Q;RrL}B)-iqevvX3HMXBF2FZGn43;=w?igG`TMwLX+VjOu zTnrNW`lx4>NwoSGgops?-tuVf?EecD@h+Rx88D zVH2qzhHs^{nXV5}}%}9-DYf>A4UT zizT`MQmaWEFb-IkBs(9&{(`Rj*V@WfaPP1zj0n-B75eLa&~IMxq`2Ps@;3A+oG@#J z>f=~V58#o04QF%)@nhmu@Ew0z({H`37{>#GGm>`4>uR_O?nGc=?&YW`r=8I{uj(xG z2wk@TB4C7GTT z+z$?)v#uQ%eDFc%Gvb1votbmZ!6?S!$ivaQ#N<1*;8PQsxF4s~bB$Zm%C>9ASG}Fs z&(-AVGk+)D8MvSqik^OhLL7BVYPfID>F;fJY*3x0vi=a#5|d$ZPjlqTvH1)AS|s}y zOO5(>LKe$1H_~R74HRxJ9@DJ-a|I`Xix9*CB&eVW!9Rb6j{$-4@!j@czkYT8ZN#t6 zzmNFGPCaCWIhyz=SQg08MtE0qAxHJah1~R-mo#HU1gSL;Z|625A2k7D7-e0}NqK({ zE#XXWP6(}6tT-c2q67EOYA{w?bFfZNcSh<#T-0Vr9~AK__u@iC&8JD7h`#l@;$6B+DJ2>sJ&~17W zJ^)_HWoE8V*lb?0?nIyv7S5ZG8akNQ9X5}l0tzhy^qSMYKQ<{=V^yxVp(eRk?T0yF z1^lq}o`x09Lp`1EGam}fO2q;G>^@r8?*x2C$~WAb*hP$h!jA5H&vI~dD1Z&sm*t{2 ze)F)I!r_kM=j8Bn3k@r8ID4ch*?OGoNz1=aDBnwrv99H;H`0B=7P=M1szjQiH?n_2 zN_b94y4ivG0w#6n@>PClU4hiPQ<_(%OU70&fA%l>En6p+&Tto@$i z=ByMtdgE(4IB-d2vF0qVV8GJ5IzGIBvD?n6!1dUmxc*ALxYZI*`z4f)dPSL z@GQ^;Ckad&;g91I3(=b#nQbxy9YIPYS${$Rv7sYOEq(dn>v#^>H}@zq-R>p9+hH^F zk413#EvDNbueG|oThb`(y38^z^ZCUXGeqC`ms8LBg?ee$i&W|^O(!oDGHgRatqn9s^bRF=E1W~zEMHV#0nGY z<%PoDj@GL|FDF7d+HDcw=B=w?E~B7~54m3}0~6B_zp-zu#W5Xs0#1bwD}=8m@V-dc z$=Eb;V8Bf;i2W9n_%_u3f|w#>vZ1W=_wrE=)~7%0|ZW za+~%Ln2vy0wU2z9<6c#fI1dVE3!N3*s#@G555uzjCA9x+fP&aSKA^`;{kA`>J$*CU zZVzY-u>X3NXDBG{&5DwLFJjMs|uImp*^1;#qyN=Ru~7+U(ht zMVevO(gwF?V$gQ~SzLG>QXNje)KKTwhyw%L|90y?|?Rw*Q zg#BrkB@N?itHsJb<*k}?-1%Plfjjs2F7L)Z|5~q=jd)4LjtFyWm-eTac+ZXBeSxhx z?x;F|LX=2KwZ*81?hTjo%Arxm{g?8Ry6s0doPwEeg=g$~U`7&*EzOw>*fobT&qR_iV3RkqX7oYikGSI#5q7!Dd+3_^9n-@lqWZs*6Yu3Dz z*fWl=Hnt5|JB(cx+QY>jzN^-x1Mg$>>G#O1?;|hAYs&E&$7Cy`_})6AgB?Gy` zx|uTJc_r2csrD-3zD-e{CuE}Y;irp6KAKy7i0`);@v=3vg~}lYmUJ`bxMa(@XLPd~{`Ye6Uyd6IYD~W{EMS*h8Kz{y%APG%W9}H?q23i&p2R z5Wbg=De!$f#$8!H)|+6^nX@qv+SI_=V(e)-R#;qJTHRrQ3~&#wZ=Whi8w$!dyQbo7 zr?dET<+&)){Llrku}-D$!=l&YxN(gixF4$hf`vy?B&s&#GaeAtu?73t`tQ^Uf3&8u zPrNGsG@O<@LoMk_fg&bpZ;iZ7B{CP$yY#emSY1{wxL_H-iQa%oIgiLNl*kQ+Z(Qf= z^XqYUg00oVwU47( zujwB&R8Ap3mzBeQv07#8uYinF*X!MXqJ0I`+6GEn%VC1HA<)DC+k)&6Yuub*-*t8c z4fM^WOvO{8+wT)f;ANdTmEzwPR)Hbo})+8;6?wgD_p< zY=qy#{Q_6i`hA!yWi&-2sU7CSmG4u>6g{ULT8>#Ca_sHv8KqT`S*Mvj3Q$H~v4{lz z(;V#3dEjhQ&eh9#8Ogw-Jj)Z4$4 zcBb3TeOIEd|At#~6aB8_@g^+q*R}z7Se66oBk4-B=c=%N-mU%me(8Rr5oRuqh2BN7Khvx zRdm%?`>``;-g=ZxoX(r!RKPZg6^_NL5VCyT>tAC4H~j^g)lB$99pxn34iC}p$oev+&D#u zK}gv-_onpBi@dJJDBiPr`k?v-YUXz!gOPzSVSY^`_}@nJ8q1>>dSQWu0`Kg zNTF<}wD|!Ho>1{6O+*Cm*!=1_GR^UG z%}-OJqFqG)i2IrjeEvKT{4Tev&3n|#^?lb>FRs{*&h)a>$n+a{Ia)9U3pR08dJ$ST zY=!trM_v^a#arU~3dq+mwad8fiVfB>T?|WmKaiSu;*5#CbESE=DQ0=buV6SjP2bv9 zr(>sYC$vo%+^gw=_tHLIOQhxJbHaQxuesnGR0pAdY~j#tBxj{zT=t?YZ}B&-#?Meu z3&IUHj|xHjn$A7U`G#xu?3mizYE3(rNdLQ{zP?}bQsuLQVjt#9MMAf|eK(ms^Wbb$ z?D9B-VQ0tU6h)%W(U&q=feG|4je}rJH9TRAzw_BdPigkT6n6C>tgwo`?_RXS&mwL) z?{My2^HCCHe_s%{r}#@Gd4u;(b^2Pv)^$PrxN5VfXpqH^2q@lG5w>Je3?HyA-;W7Z zdZLWdUkEac9Y@hWR^Hsp?GbC z5YljC;#nnS0T4HrWiLz;{%)jDMs3dQkeWn$7Re7dm^X*8)$wa7zv1_RU&gWZD@Q<+ z*fHFygRlH{ARhv@``+hs!J2W*Z%^_(pLVXa67NVR3J<&=^PlWQnq^e6()#ARmx#Ef zv^->sOM-cb?v$l01B@TeoL@YYCz6}(d3tMQF(`l0%5#^^? zJ9VARL#myGH-}V><4wcnZrWMv@LDXwO5ElpVK0QHFoZs8MB4p#C?oEaG2l#3BLRc5 zz4OCFVKl9thC*stY8-{SBSK%^*J&7~Ck~H18}t9fD5&Co`z>Vx8PSG{;?I@&C6ZeXwEKdsi{BvNBr!Hu4p^(tQgjk@cdv)5 zU$D+*ZC`lPlHI++3n4H@ba-LV?NNS}`5V;uF%_S&k1K=%Df4WJ7-FKQC${~rIeYO2 zCM7@34pN2_A|A8D%aSO4HI&d&P8V?fwTY8@`oge>1AN6SL_`> z|K{158JpIft+n~H+bU1JIOI(v)K)b*J=fOfa`1XZZ7XHvYuJnxQ7l`rZnis5B&74Y zd7~qjC;Kt~+pZtuewgYK_?#T23;FRp>Pz9+kY>mJtu@%F;`PMF*+3TtZBFQ>h|1Y$ zGOc_H-n@QT;%U~cr}z5P$M_{YvPTWqwusxMe1o5K&vk(B^)A=bo)D88+Ix=jy6!re zcYOGqjkrHu_?@xfvm~$VFyEe?S3lW2&h>=B7)(2D?e~|p)JJbOt{SD`Cs0o9rX^My zHn)Vc3bU?;8YAu%v2b75hl z+Zkzt@Ne_`7{14|9*jKhQxcoTn{&TUChxc)C6@Mt_aqGdJj&?Aq-IR0RNaGCadZ2S zp_!JvHe@KH`!M57HT}crv6|RYJFU{6!g${pY-m9 z`CPmC@|ky2SsI3vRmI$x&)-K!&e#PooQ-l#xf~aTVZM4vRjzvL^*qv_%(10P=d>?H05X2(b-XyQ+_$@O;E z)7~vjKLn!q5}D|fM2eD%2XM=4`zQSwbr_6oS_F!EK9NWc^=rJVPD{z9yEWa5F8p!a z+%vf$#}f9Abr$EKoVD8886eyaIS2zvH}J6x5jS#<8~zjm!XvDL^6Qi9dt_)oSKh@> z&i*qVs}it+ay;!hi52QjGbd&y4b;H#eEm0p-FP>U!`|GD_fdafHqVZE-+_J3 z)rjqv`W3-7?BRhl0T79&7xl-lQEg(uJf0510Pz#OMt>6pI$@Fu? zuw$w_%%%@fZrlITkN~Hxq)1(N>gI*>E3;2>fxK~}dtpg1A$`ytC08m}y4;mJ`~v2) z%$PY9nDZ{#?7CH&sn+?hpP#%__I7b5nbIo(0q~QB$>LS@1V}u3ySmxsTh>SLUh54=n869`BvulcbZ2gGF2^EB~K*kxtA4+*u~k5+!3*^b(0JfJ9-0h&1b$s zCBd3po>kd1hxo~!66nk3h@tWFdmYU2mpKB5Y!lb+jumpj6wKvHYcAmC-;whe+V=56 zK9bn<(Vog3VYU2Bo>3j<%IPA2su9U6q&RaVuzdj=LJ&DKcG*LjSg^aL9v2L02wD=X z^^RJ~I$VA1VC7AFPvf?^?GtU7j0E-Z25k8a-@LM5pU>wzM#f6#&MyO*JMt?Rb0n{)k!{5ES!u4{r&c{i6?noe&h-=mB)5b zWwCPcLVHlipQ)xgkZN9Ctp9Z8T%GbAkKu=Mgwuq8Yb>9i_h+Q`Y*twug7xktCj>a~ zw&pCWoaQwK(z-KO>~vi(%iL;Kwpz?7v0U8wQK1f2OtLq#M4$O^Jy*WV-nhn#9Dj`H zFm)#C<1L)A&t(oXOx##)rIyrlx@TQ6~!D4JLF!7v^wvgLP zyS}!|2?YP?dY5?J^Eq`Q=Yxkx_l4r#ocMI;MA5n3^26ms%~J`<(?{7RafbsM6%7hT zl*WI~8uycgit~q*#v3iIlrpU|0-29*j+g120o4~>Wh4KDX!e@}Ads=%mmh($2L}jr z7$20?4?&x1g~EO=CqGMb-Ame zzUZvauqf4C=l(9_fXevjZ;Gael73NNen^{xP&OX}RO^ejevLe}%VNcNp-`ZjK$Xny z`GhLvS#?4Kub1L(m(im7-0oBUz9aO3GH?`5l9XU)iG)%H&XbO!0zAuh(Hf$Ua5|(F z2*#z2C`QGg5)M_q!bq>wl(Mqc{B_eQS|oOq3CVPCSL80YW&{JM-VO5btlmn!#{LH~ z$^PXcn^s+`d&1XAaXz;Z2%7;@Iy1mYoHln&)8_Yy=a40Fyn9j|fae%h*4*fqwL#=S zs}6+ z`2Nxj_HxfqzwD~uW^ncEsWM*wiw=XX0~PbPtXK;kBf{C1-hq^w!npdPZ@xbVRv;yH2TYUCMM`J{|a) zK8Nk;9qWb8S6OUTHbp*F)2|bC+i!pA-nB}ENhT^6co)_db-Qww_JVjcWK5eTwP!MC z%v`v7JPdEMg$^ER*nKf@Ku>V?jDFVHa7(KyPHm4<(+Tve3k#&o%#8H{n45pbKxLSP z=oW+xnZB;(bsla37}iqskeXQ5T~~t~Q-%InEvd+1c<3x9yW(r+D28 z=sEWa3L>GBquwQJaj9QG<>l%Q1$V?}(N8_FRZEF{I74%iR-W~t3H>86Hcwq(KGPZyJ z-k{L#K$(XF>mE$#W!!hn?TzkP_aaQT zUgz4LlF@wxXUet(r~$>-J)6Y#uzht>u*oA}GW__vuyjMez%?VUa@l2U>*Vn0lT`qz zFn0h0;FdbDqdBHPq23Jt9wU7&&kfMUH`APqTSOhAwOwKEzHq`Bb&>)~alQ#$db7;l z=O5r$wRArzxXLE8uZQJrpa8iuGIbRBCF(9@9@yGSlBUbULTl}0g{|9b^I?F+b#0AL z$RwVcaFCpuX(uxSGQW#F^YyYhP_SeM}! zs{7I09Hs`myBX98QAY>BpTrC0tIW^^W!CRR=@(sMa56IXipzJgo{M*v;K=%1gRr8b zG*3X$RZKShcy1MK($}}!N?p+MU+^t1woMBta#vZ!y9IK<5B^u5SB4(2JOG}yQOB(p zCnPAVkZd9b%79wm*nRZ_9`bhI@_?s5;0Ji^`%jyI(ZEpP=Qxm`{y7(z{wF!0{SR{g zThlKBdv;$LBLsKX@fXd1*L3P{Y<9DlKj!YT`(rLZ;wN_9bM$TAf5yN zMF#-y`)8u{oLyw9`<{>W0E6A{|AXEiod4sFzpeG}GyVm?KY08NyVs z^$yUzM<-ASG3p`&6BVotKw?UHRqiP=xGd&e>S_D(k_*ds$Goc4XG)S9QGL8Brs#T9 zv5XRF3R(axCPy0dDn|ZUvcwfFWzv%QKeT$yOvfg`SYkhTy#T#NZHQ%~ zPKBN>Jh~sW5*}p`_7X_{ZENq+jXU?Y-9QmClRFjjtdxY0QlCO%9%(3(G6(Q<*}=^q zbmEJpf$E0?72rp~8k}mmC6mSKGzxG3isK5V(!F+7Y*MT4{l#nL1- zN3Ab>i2W!WNf8(z{&3E0iN>`;<4&(IV#oY*6Ze5$1s1;$4-Y#`eSqpPX>}=Nr6li& z9P2#h32|B2ywtn`NA^>$GMA@-)=7QZU4{Eb89zBunZ*Mub<}vtQgchWfsatWh-aXf;WbqhgBJ((0!NR%b#=!lpEw>YZ z`+gR;9@Kn;d%pPWeE2Mg{u;&w6LsnFD(vpC7{EW_@1Y%p#X0xfUC~>}uyn4eE1Otb z>($>C$aL4Np1e-2tPVwPq;_Qj(kV3&a|ApZS1+dl&O`v}n*vcpHXV58`>VLkGX@Xw<@u$+G{p@3I_f?q^s07Tn$sCkd=OFw% zsT_sick699ySP)}ObgQ`J%*4UZMvY>^|krkFbzwTm<%(H&IK2w3x zSKXdz?(riWV(8*Y;G?F@E^B-u1G~M~sfFs}QIR1%h1k#jqy@C=x2?#(7vrbaekleD zo=Q*FUt}MlK7+WNo~YLv|H~ihi>D^fYsL`{Q)lFdLa~mF87s{+C(MAPO=pOeCQTq! z+^oOjTF^r98PYU_{n6$;L{M;~u|;;T3zwIT(+=!7=>w{CNd*vS;lK%*(au#b0ZZ0l zwX?y+{&&m z8nhxD9Kg48_KXiy*UF`eKHIMf=;6HlZ*G-uL!S(*8N?g4rtuydY#-y-e%@}A@3@)p zrC8a#CfB8>ute?u@_KeJ+bMZU^wqbaeRB^8IzW04ZQ7%D+Qs2cjMo9oy8*njT>kvC zuQ;%LV2G-xW&Env%XW#uCu5bSs>}lI!+&#l9@bh0@Jj-}vu{!Xqg&m83COdC0LQ>< zLFu*Zv>Vv|e*G|hoaqDjgFWg?do*DlQs)41e05lN>XSy+@#9b5?FlIUkfZfdrBN93 zdR5;pIhlR=@%opN85$c1bTKk%sm`cUEPaI~j9CUeIMlTOo=9E-hzb;y4FNztW>_5{ z2WcIl^E^CfUVYl$MidPPpMiU3U9WuyB>h0%YhjF$f-9t6&-}&)IMkGhwboP$g$(@P z#N)|!{e~~7zH6o=`*Bl9g>uRr!bZJc3TXiK96o~O%DLX^vUTh)?^eBSgDN#{ zHK2iCdQz4L@EbboZG%tJF6kVm+FNNS?KfW!{BQG;f9XhmH7ccT>_m(G-XR=F=iY6& NddcKsss8PV{{wt$!<7I4 literal 0 HcmV?d00001 diff --git a/modules/ROOT/assets/images/full_support_scenario_2.png b/modules/ROOT/assets/images/full_support_scenario_2.png new file mode 100644 index 0000000000000000000000000000000000000000..4ae6cbeb1bf5d17d2bcc342f8b8978f88c0b2531 GIT binary patch literal 14366 zcmb_@2Uyd~wr`M)Y(?O>rEHaQB2uJ9KmG>m9;CyIJm)hg&^{#x=)1qmuh3-QoUuP^jT*m<+}!LJzX0NYapuCW@~B_3 z?9DP)#=W^DErSAU?bf`J);8k87@M=PW!%v-*OS}ax}i}^66105|M7L^XyB2sIKm`2 zBsKPLnsPoa7pM|4k~3pDYMh&dF>q_WH>cW@-eOdxNS` zL1yaeVkFe|EBh^(-$9_y_^r40QdP7O-vP-!@eIp6Vl}D&=OV;FcSc{k^!WFs5e0bL zw?Pw~89xTM)blqGs3n*B2ljUiG-o3O=6khw|MFn>bQ>8tUl(O$qAV7oi?vR|jW<{0 z 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%0DU~Mhor$6eB$~j1`EX{yDDL+X zI3HI8_``b)WUgEhAoJbrx^D0S&i7qZ1}O;);&ldw0Sx}x!Q#3YpV+-bk=p$v2I)9^Z2j@l ze?IB|juIchA5fj}ta6tCZkl;j{%2hW4m7KAwog+=?f^SX6Zkq{3@$Z;?ngj?z$a;z zlDxw3W8z;UC4pTBlFEbXqRl6KwgGIGP)e){y<`ryLH1lcO_B{u13(jiAe5kIU=rv; z6>F*?$2DF@<+^8A5qLlxKtA#|e2=~r8YQ4??WMt99<5Aon@*i}z$#GG0CC%66Z_t{ zmaM`O_NHPB)e;Z{e=s`*``c1HVG(uOto=w>G~tiH&D&tyOHALk*+TaqE1IAMP7rZ5 zYP8;B`%@xK_RY$MnGu%3vZ;m#m$FBfTK}-_+Ai8WN#y$C17g=aNJ0qBm>QN|$fY%@ zm_MY7tCzo_bTDkjFRh~gSY6hJ>EOO*h>tlT%59^m4O6^5>*}qiO>cT%#YEz-{f4uO zG$%}eVG_tB#7BfdZZ+dQie&acRSXv;5obVuRW?vDCKL012?tjB zwz%%VY60#A`;&nzi*^6^sBJ^$ za3AgT>4HX6%8I8@ZM&pXn6q|uNY1?Bqh4yeIG)iFxGDS79;@CxJ)cvs)*9$$Xa}dN&vQ5T&oO0T>f+j*Z%4vZL9cx){?;+{y);N#5~W=DI1x z=e?>$I)_8Gw|~s(0VT3_xEUR;HH8K)k$PSw06Lo!?pot>e&hTp|B z-vx0E%vP6 z4jz2?={`_UIFHN&PIag30K(^h7mqIR>=G9A;{{Frm?vaP5H^13Va;J69{}$-OZ|zn z0l4^g5Dq~0pOBhA+jo2X9}qggpxqw4;eVpK|M{KADsP$p3%UO|*S~uFALjb+k^7(4 z^-pegr}?kv0;*mAwv_*O))UPa;jRFw|L{uGKJt5*dx`E{noo!za7sHEow}t!|H6YG z?L+AM+_-=aUXrPL4d@d{+IJo`W2yi|7N2&Myjdg(d4Z|E7Cj@X2M87f(kGfG)8a7W z`)3`!xkIS3)}erLEuR)3rvQcL%GF|6slh8xWS>~Ep7=BZEd2Bjbkc4J?$qBaiKGgp zGnx(Qb*LCK=stvr51faM6V@~GG1WGLj<2UHGe%A5HG$ITRKr6{GpKL3i60Y+bA#B~ zC@v32DZ3O(I0QE7Qo~sh9tCdXi`LG0IblD+NUK&cT|_maTPnq*h1kV>;k!C+%|q)hj82o*_- zxa!?^#|$_b{uNa`LfiCJvW(`P0LI3{l3n?2R4;pTKT)uv`fuSm$Zrp>G&mkP;KSYv zAhzRSonlD-TaU&&^W2p(fB`zEU8pK}AccNN!~zD>x{JUG+#6}kGg^1li$o`CHu-J>oeOOHHwb&~nL>YPXa zJ$%4G;BdA0V6BaINH}H14N3luQg=8)30kV6%FYgK=HH!S{Gh9A8oLI`UPDqnH-ic3 zK+2xR3BSfd_7TfvJ@Z$`YT;{YIRR0qKT&xGTF+Eob9OC;)UL# z$*@Qj;HL_sk>EygWRe;7Vb0@al}BZkG~YXiglg5Tw%iGMW(^|Ezz><8%Kguw#Cwg; zn5#%HGG#$sAuy6+5yD-q(OSyE_<_RurG}yjV58j+?0=kPlhAOI)Al}61W|4;wLku^ zSmJzSiuDAAPEmbo)F@etU`5D0s#a__5e34ZQ944OjuxOY0gL|s^?LStN7VQcAM5WQ Sz3O;0FP^tOS7Unh?*9Pk){L6~ literal 0 HcmV?d00001 diff --git a/modules/ROOT/assets/images/maintenance_phase.png b/modules/ROOT/assets/images/maintenance_phase.png new file mode 100644 index 0000000000000000000000000000000000000000..ae928c0832b227306fd1d6f01fa169b660267879 GIT binary patch literal 12909 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 literal 0 HcmV?d00001 diff --git a/modules/ROOT/assets/images/policies.drawio b/modules/ROOT/assets/images/policies.drawio new file mode 100644 index 000000000..f3d3a51ee --- /dev/null +++ b/modules/ROOT/assets/images/policies.drawio @@ -0,0 +1,388 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/modules/ROOT/assets/images/product_release_cycle.png b/modules/ROOT/assets/images/product_release_cycle.png new file mode 100644 index 0000000000000000000000000000000000000000..b26b560aaf7ff9054c9cf9280bcc1ffc60baef24 GIT binary patch literal 48867 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 literal 0 HcmV?d00001 diff --git a/modules/ROOT/pages/policies.adoc b/modules/ROOT/pages/policies.adoc index bc5f86f04..52c1478f3 100644 --- a/modules/ROOT/pages/policies.adoc +++ b/modules/ROOT/pages/policies.adoc @@ -40,7 +40,9 @@ This phase begins once a new non-patch SDP version is released and ends after a The following pictures show both scenarios: -TODO: Insert diagrams here +image:full_support_scenario_1.png[Full Support Scenario 1] + +image:full_support_scenario_2.png[Full Support Scenario 2] We _will_ release new patch releases of a SDP release (e.g. `23.4.1`) for any issues we deem Critical or High (see definition below) once fixes become available. We _may_ release new patch releases for other reasons. @@ -51,7 +53,7 @@ This phase commences after the _Full Support_ phase for the respective SDP versi We _may_ release new patch releases of a SDP release (e.g. `23.4.1`) for any issues we deem Critical or High (see definition below) once fixes become available. -TODO: Insert diagram +image:maintenance_phase.png[Maintenance Phase] === General @@ -64,7 +66,7 @@ Make sure to follow our release notes to learn of valid upgrade paths, some inte IMPORTANT: As of June 2023 all our CRDs are versioned as `alpha1`. We will start introducing other versions later in 2023. -`CustomResourceDefinition`s at Stackable are versioned. +``CustomResourceDefinition``s at Stackable are versioned. Our policies around CRD versioning are inspired by the https://kubernetes.io/docs/reference/using-api/deprecation-policy/[Kubernetes Deprecation Policy]. @@ -107,6 +109,8 @@ In addition to the LTS line we may also ship other versions, e.g. the latest ups We do honor the same deprecation policy for non-LTS products as for LTS products, but we do not guarantee a long term support for these versions. They may be deprecated faster. +image:product_release_cycle.png[Product Lifecycle Policy] + === Deprecation Every product version that gets removed will be deprecated for at least 1 SDP release before removal.