Skip to content

Commit 9a356ef

Browse files
authored
update docs for separate ECR repos and releases (#884)
Updates our documentation in order to have our new ECR Public repositories exposed in appropriate links. Removes the "Work in Progress" user documentation navigation and adds our install, IRSA and Authorization user docs to the navigation sidebar. Updates the Services matrix with the most up-to-date links and statuses. Finally, replaces the wording in the documentation index/homepage about "Developer Preview" and "Not to use in production" with explanation about our release process and maintenance phases and links to the install docs. Issue #829 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
1 parent b784d04 commit 9a356ef

File tree

6 files changed

+203
-113
lines changed

6 files changed

+203
-113
lines changed

README.md

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -58,20 +58,25 @@ resources on your behalf.
5858

5959
## Getting Started
6060

61-
Currently, there are a set of ACK [service controllers][services] that have
62-
been released in a `Preview` [maintenance phase][maint-phases]. You may
63-
[install][install] these controllers in binary form using the Helm charts
64-
published on our ACK public artifact repository.
61+
Please see the list of ACK [service controllers][services] currently in one of
62+
our [project stages][proj-stages].
63+
64+
[proj-stages]: https://aws-controllers-k8s.github.io/community/releases/#project-stages
65+
66+
You can [install][install] any of the controllers in the `RELEASED` project stage using
67+
Helm (recommended) or manually using the raw Kubernetes manifests contained in
68+
the individual ACK service controller's source repository.
6569

6670
[services]: https://aws-controllers-k8s.github.io/community/services/
67-
[maint-phases]: https://aws-controllers-k8s.github.io/community/releases#maintenance-phases
68-
[install]: https://aws-controllers-k8s.github.io/user-docs/install/
71+
[install]: https://aws-controllers-k8s.github.io/community/user-docs/install/
72+
73+
Once installed, Kubernetes users may apply a custom resource (CR) corresponding
74+
to one of the resources exposed by the ACK service controller for the service.
6975

70-
If you are comfortable building Go code yourself and working with static
71-
Kubernetes manifests, you are also free to [test-drive][testing] various
72-
controllers using our KinD-based end-to-end test suite.
76+
To view the list of custom resources and each CR's schema, visit our
77+
[reference documentation][ref-docs].
7378

74-
[testing]: https://aws-controllers-k8s.github.io/community/dev-docs/testing/
79+
[ref-docs]: https://aws-controllers-k8s.github.io/community/reference/overview/
7580

7681
## Help & Feedback
7782

docs/contents/index.md

Lines changed: 46 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,36 @@ managed services for your Kubernetes applications without needing to define
66
resources outside of the cluster or run services that provide supporting
77
capabilities like databases or message queues within the cluster.
88

9-
This is a new open source project built with ❤️ by AWS and available as a
10-
**Developer Preview**. We encourage you to try it out, provide feedback and
11-
contribute to development.
12-
13-
*Important: Because this project is a preview, there may be significant and
14-
breaking changes introduced in the future. We encourage you to try and
15-
experiment with this project. Please do not adopt it for production use.*
9+
This is a fully open source project built with ❤️ by AWS. The project is
10+
structured as a set of source code repositories containing a
11+
[common runtime][rt], a [code generator][code-gen], some
12+
[common testing infrastructure][test-infra] and a series of individual service
13+
controllers that correspond to AWS services (e.g. the
14+
[RDS service controller for ACK][rds-controller]).
15+
16+
[rt]: https://github.com/aws-controllers-k8s/runtime
17+
[code-gen]: https://github.com/aws-controllers-k8s/code-generator
18+
[test-infra]: https://github.com/aws-controllers-k8s/test-infra
19+
[rds-controller]: https://github.com/aws-controllers-k8s/rds-controller
20+
21+
Individual ACK service controllers are installable as separate binaries either
22+
manually via raw manifests or via a Helm chart that corresponds to the
23+
individual service controller.
24+
25+
!!! note **IMPORTANT**
26+
Individual ACK service controllers may be in different
27+
maintenance phases and follow separate release cadences. Please read our
28+
documentation about [project stages][proj-stages] and
29+
[maintenance phases][maint-phases] fully, including how we
30+
[release and version][rel-ver] our controllers. Controllers in a `PREVIEW`
31+
maintenance phase have at least one container image and Helm chart released to
32+
an ECR Public repository. However, be aware that controllers in a `PREVIEW`
33+
maintenance phase may have significant and breaking changes introduced in a
34+
future release.
35+
36+
[proj-stages]: https://aws-controllers-k8s.github.io/community/releases/#project-stages
37+
[maint-phases]: https://aws-controllers-k8s.github.io/community/releases/#maintenance-phases
38+
[rel-ver]: https://aws-controllers-k8s.github.io/community/releases/#releases-and-versioning
1639

1740
## Background
1841

@@ -49,16 +72,30 @@ those applications depend.
4972

5073
Read more about [how ACK works][how-it-works].
5174

52-
[gh]: https://github.com/aws/aws-controllers-k8s/
75+
[gh]: https://github.com/aws-controllers-k8s/community
5376
[controller]: https://kubernetes.io/docs/reference/glossary/?fundamental=true#term-controller
5477
[crd]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/
5578
[how-it-works]: https://aws-controllers-k8s.github.io/community/how-it-works/
5679

5780
## Getting started
5881

59-
Until we've graduated ACK [service controllers][services] we ask you to [test-drive](https://aws-controllers-k8s.github.io/community/dev-docs/testing/) them.
82+
Please see the list of ACK [service controllers][services] currently in one of
83+
our [project stages][proj-stages].
84+
85+
You can [install][install] any of the controllers in the `RELEASED` project stage using
86+
Helm (recommended) or manually using the raw Kubernetes manifests contained in
87+
the individual ACK service controller's source repository.
6088

6189
[services]: https://aws-controllers-k8s.github.io/community/services/
90+
[install]: https://aws-controllers-k8s.github.io/community/user-docs/install/
91+
92+
Once installed, Kubernetes users may apply a custom resource (CR) corresponding
93+
to one of the resources exposed by the ACK service controller for the service.
94+
95+
To view the list of custom resources and each CR's schema, visit our
96+
[reference documentation][ref-docs].
97+
98+
[ref-docs]: https://aws-controllers-k8s.github.io/community/reference/overview/
6299

63100
## Getting help
64101

docs/contents/releases.md

Lines changed: 37 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -134,29 +134,35 @@ This is by design, and [per the Semantic Versioning specification][semver-zero]:
134134
[semver-zero]: https://semver.org/#spec-item-4
135135

136136
For ACK components that have a binary distributable -- i.e. a Docker image --
137-
the creation of a new SemVer Git tag on the source code repository will trigger
137+
the creation of a new SemVer Git tag on the source code repository triggers the
138138
automatic building and publishing of a Docker image with an image tag including
139-
the SemVer version. For example, if a Git tag of `v1.2.6` was created on the
139+
the SemVer version.
140+
141+
For example, if a Git tag of `v1.2.6` was created on the
140142
[github.com/aws-controllers-k8s/s3-controller][s3-ctrl] repository, a Docker
141-
image with a tag `s3-v1.2.6` would be published to the
142-
[aws-controllers-k8s/controller][ecr-ack-ctrl] ECR repository.
143+
image with a tag `v1.2.6` would be published to the
144+
[public.ecr.aws/aws-controllers-k8s/s3-controller][ecr-ack-ctrl] ECR Public
145+
repository.
143146

144147
[s3-ctrl]: https://github.com/aws-controllers-k8s/s3-controller
145-
[ecr-ack-ctrl]: https://gallery.ecr.aws/aws-controllers-k8s/controller
148+
[ecr-ack-ctrl]: https://gallery.ecr.aws/aws-controllers-k8s/s3-controller
146149

147150
!!! note
148-
Binaries for ACK components are published in our Amazon ECR
149-
Public [registry][ecr-ack-ctrl].
151+
Binaries for individual ACK service controllers components are published in
152+
separate Amazon ECR Public repositories.
150153

151154
For ACK components that have a Helm Chart distributable -- i.e. an ACK service
152155
controller -- the creation of a new SemVer Git tag on the source code
153-
repository will trigger automatic building and publishing of a Helm Chart with
154-
an artifact tag including the SemVer version. For example, a Git tag of
155-
`v1.2.6` on the [github.com/aws-controllers-k8s/s3-controller][s3-ctrl]
156-
repository means a Helm chart with a tag `s3-v1.2.6` would be published to the
157-
[aws-controllers-k8s/chart][ecr-ack-chart] ECR repository.
156+
repository triggers automatic building and publishing of a Helm Chart with
157+
an artifact tag including the SemVer version.
158+
159+
For example, a Git tag of `v1.2.6` on the
160+
[github.com/aws-controllers-k8s/s3-controller][s3-ctrl]
161+
repository means a Helm chart with a tag `v1.2.6` would be published to the
162+
[public.ecr.aws/aws-controllers-k8s/s3-chart][ecr-ack-chart] ECR Public
163+
repository.
158164

159-
[ecr-ack-chart]: https://gallery.ecr.aws/aws-controllers-k8s/chart
165+
[ecr-ack-chart]: https://gallery.ecr.aws/aws-controllers-k8s/s3-chart
160166

161167
#### A Word About Dependencies
162168

@@ -189,14 +195,16 @@ a specific version of the ACK common runtime.
189195
[recommend-helm]: https://aws-controllers-k8s.github.io/community/user-docs/install/#helm-recommended
190196

191197
Some ACK service controllers will have Helm Charts with a
192-
`$SERVICE-v$MAJOR_VERSION-stable` tag, referred from here out as just a
198+
`v$MAJOR_VERSION-stable` tag, referred from here out as just a
193199
"`stable` artifact tag". There will only be one of these tags for the ACK
194-
service controller **in a major version series**. For example, the `stable`
195-
artifact tag for the ElastiCache ACK service controller's "v1" major version
196-
series would be `elasticache-v1-stable`.
200+
service controller **in a major version series**. For example, the full
201+
`stable` artifact tag for the ElastiCache ACK service controller's "v1" major
202+
version series would be
203+
`public.ecr.aws/aws-controllers-k8s/elasticache-chart:v1-stable`.
197204

198205
This `stable` artifact tag points to a Helm chart that has configuration values
199206
that have been tested with a specific SemVer Docker image.
207+
200208
Typically these tests are "soak" tests and allow the team maintaining that ACK
201209
controller's source code to have a high degree of confidence in the
202210
controller's long-running operation.
@@ -212,17 +220,17 @@ service controller may update the configuration values and associated SemVer
212220
Docker image tag for the controller binary to point to a newer image.
213221

214222
For example, consider the ElastiCache ACK service controller maintainer team
215-
has executed a series of long-running tests of the controller image tagged with
216-
the `elasticache-v1.2.6` SemVer tag. The maintainer team is confident that the
217-
controller is stable for production use. In the `stable` Git branch of the
218-
ElastiCache service controller's source repository, the team would update the
219-
Helm Chart's Deployment, setting the
220-
`Deployment.spec.template.spec.containers[0].image` to
221-
`public.ecr.aws/aws-controllers-k8s/controller/elasticache-v1.2.6`.
223+
has executed a series of long-running tests of the
224+
`public.ecr.aws/aws-controllers-k8s/elasticache-controller` image tagged with
225+
the `v1.2.6` SemVer tag. The maintainer team is confident that the controller
226+
is stable for production use. In the `stable` Git branch of the ElastiCache
227+
service controller's source repository, the team would update the Helm Chart's
228+
Deployment, setting the `Deployment.spec.template.spec.containers[0].image` to
229+
`public.ecr.aws/aws-controllers-k8s/elasticache-controller:v1.2.6`.
222230

223231
They then package the Helm Chart and publish it as an OCI Artifact to the
224-
`public.ecr.aws/aws-controllers-k8s/chart` registry, using an OCI artifact tag
225-
of `elasticache-v1-stable`.
232+
`public.ecr.aws/aws-controllers-k8s/elasticache-chart` registry, using an OCI
233+
artifact tag of `v1-stable`.
226234

227235
A couple months later, the maintainer team has added a few minor, non-breaking
228236
features to their controller along with a number of bug fixes. The latest
@@ -233,10 +241,10 @@ the `v1.3.2` controller image and are confident that this release is
233241
appropriate for production use. The maintainer team would update the Helm Chart
234242
in their `stable` Git branch to have its
235243
`Deployment.spec.template.spec.containers[0].image` set to
236-
`public.ecr.aws/aws-controllers-k8s/controller/elasticache-v1.3.2`. They would
244+
`public.ecr.aws/aws-controllers-k8s/elasticache-controller:v1.3.2`. They would
237245
then package this Helm Chart and push overwrite the
238-
`public.ecr.aws/aws-controllers-k8s/chart:elasticache-v1-stable` OCI Artifact tag
239-
to point to this newly-updated Helm Chart that refers to the `v1.3.2`
246+
`public.ecr.aws/aws-controllers-k8s/elasticache-chart:v1-stable` OCI Artifact
247+
tag to point to this newly-updated Helm Chart that refers to the `v1.3.2`
240248
controller image.
241249

242250
## Maintenance Phases

0 commit comments

Comments
 (0)