@@ -120,11 +120,15 @@ If you do not specify `.spec.provider`, it defaults to `generic`.
120
120
121
121
# ### AWS
122
122
123
- The `aws` provider can be used when the source-controller service account
124
- is associated with an AWS IAM Role using IRSA that grants read-only access to ECR.
123
+ The `aws` provider can be used to authenticate automatically using the EKS
124
+ worker node IAM role or IAM Role for Service Accounts (IRSA), and by extension
125
+ gain access to ECR.
125
126
126
- To enable access to ECR, add the following patch to your bootstrap repository,
127
- in the `flux-system/kustomization.yaml` file :
127
+ When the worker node IAM role has access to ECR, source-controller running on it
128
+ will also have access to ECR.
129
+
130
+ When using IRSA to enable access to ECR, add the following patch to your
131
+ bootstrap repository, in the `flux-system/kustomization.yaml` file :
128
132
129
133
` ` ` yaml
130
134
apiVersion: kustomize.config.k8s.io/v1beta1
@@ -150,11 +154,15 @@ to the IAM role when using IRSA.
150
154
151
155
# ### Azure
152
156
153
- The `azure` provider can be used when the source-controller pods are associated
154
- with an Azure AAD Pod Identity that grants read-only access to ACR.
157
+ The `azure` provider can be used to authenticate automatically using kubelet
158
+ managed identity or Azure Active Directory pod-managed identity (aad-pod-identity),
159
+ and by extension gain access to ACR.
160
+
161
+ When the kubelet managed identity has access to ACR, source-controller running
162
+ on it will also have access to ACR.
155
163
156
- To enable access to ACR , add the following patch to your bootstrap repository,
157
- in the `flux-system/kustomization.yaml` file :
164
+ When using aad-pod-identity to enable access to ECR , add the following patch to
165
+ your bootstrap repository, in the `flux-system/kustomization.yaml` file :
158
166
159
167
` ` ` yaml
160
168
apiVersion: kustomize.config.k8s.io/v1beta1
@@ -172,7 +180,7 @@ patches:
172
180
name: source-controller
173
181
` ` `
174
182
175
- When using managed identity on an AKS cluster, AAD Pod Identity
183
+ When using pod- managed identity on an AKS cluster, AAD Pod Identity
176
184
has to be used to give the `source-controller` pod access to the ACR.
177
185
To do this, you have to install `aad-pod-identity` on your cluster, create a managed identity
178
186
that has access to the container registry (this can also be the Kubelet identity
@@ -185,13 +193,15 @@ if you want to use AKS pod-managed identities add-on that is in preview.
185
193
186
194
# ### GCP
187
195
188
- The `gcp` provider can be used when the source-controller service account
189
- is associated with a GCP IAM Role using Workload Identity that grants
190
- read-only access to Artifact Registry.
196
+ The `gcp` provider can be used to authenticate automatically using OAuth scopes
197
+ or Workload Identity, and by extension gain access to GCR or Artifact Registry.
198
+
199
+ When the GKE nodes have the appropriate OAuth scope for accessing GCR and
200
+ Artifact Registry, source-controller running on it will also have access to them.
191
201
192
- To enable access to Google Artifact Registry or GCR,
193
- add the following patch to your bootstrap repository,
194
- in the `flux-system/kustomization.yaml` file :
202
+ When using Workload Identity to enable access to GCR or Artifact Registry, add
203
+ the following patch to your bootstrap repository, in the
204
+ `flux-system/kustomization.yaml` file :
195
205
196
206
` ` ` yaml
197
207
apiVersion: kustomize.config.k8s.io/v1beta1
0 commit comments