Skip to content

Commit dfd1ab5

Browse files
authored
operator ack-cloudfront-controller (1.0.7)
1 parent b2d9314 commit dfd1ab5

13 files changed

+2734
-0
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
FROM scratch
2+
3+
# Core bundle labels.
4+
LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
5+
LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
6+
LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
7+
LABEL operators.operatorframework.io.bundle.package.v1=ack-cloudfront-controller
8+
LABEL operators.operatorframework.io.bundle.channels.v1=alpha
9+
LABEL operators.operatorframework.io.bundle.channel.default.v1=alpha
10+
LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.28.0
11+
LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1
12+
LABEL operators.operatorframework.io.metrics.project_layout=unknown
13+
14+
# Labels for testing.
15+
LABEL operators.operatorframework.io.test.mediatype.v1=scorecard+v1
16+
LABEL operators.operatorframework.io.test.config.v1=tests/scorecard/
17+
18+
# Copy files to locations specified by labels.
19+
COPY bundle/manifests /manifests/
20+
COPY bundle/metadata /metadata/
21+
COPY bundle/tests/scorecard /tests/scorecard/
Lines changed: 324 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,324 @@
1+
apiVersion: operators.coreos.com/v1alpha1
2+
kind: ClusterServiceVersion
3+
metadata:
4+
annotations:
5+
alm-examples: |-
6+
[
7+
{
8+
"apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
9+
"kind": "CachePolicy",
10+
"metadata": {
11+
"name": "example"
12+
},
13+
"spec": {}
14+
},
15+
{
16+
"apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
17+
"kind": "Distribution",
18+
"metadata": {
19+
"name": "example"
20+
},
21+
"spec": {}
22+
},
23+
{
24+
"apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
25+
"kind": "Function",
26+
"metadata": {
27+
"name": "example"
28+
},
29+
"spec": {}
30+
}
31+
]
32+
capabilities: Basic Install
33+
categories: Cloud Provider
34+
certified: "false"
35+
containerImage: public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.0.7
36+
createdAt: "2025-02-20T23:10:47Z"
37+
description: AWS CloudFront controller is a service controller for managing CloudFront
38+
resources in Kubernetes
39+
operatorframework.io/suggested-namespace: ack-system
40+
operators.operatorframework.io/builder: operator-sdk-v1.28.0
41+
operators.operatorframework.io/project_layout: unknown
42+
repository: https://github.com/aws-controllers-k8s
43+
support: Community
44+
labels:
45+
operatorframework.io/arch.amd64: supported
46+
operatorframework.io/arch.arm64: supported
47+
operatorframework.io/os.linux: supported
48+
name: ack-cloudfront-controller.v1.0.7
49+
namespace: placeholder
50+
spec:
51+
apiservicedefinitions: {}
52+
customresourcedefinitions:
53+
owned:
54+
- description: CachePolicy represents the state of an AWS cloudfront CachePolicy
55+
resource.
56+
displayName: CachePolicy
57+
kind: CachePolicy
58+
name: cachepolicies.cloudfront.services.k8s.aws
59+
version: v1alpha1
60+
- description: Distribution represents the state of an AWS cloudfront Distribution
61+
resource.
62+
displayName: Distribution
63+
kind: Distribution
64+
name: distributions.cloudfront.services.k8s.aws
65+
version: v1alpha1
66+
- description: Function represents the state of an AWS cloudfront Function resource.
67+
displayName: Function
68+
kind: Function
69+
name: functions.cloudfront.services.k8s.aws
70+
version: v1alpha1
71+
- description: OriginAccessControl represents the state of an AWS cloudfront OriginAccessControl
72+
resource.
73+
displayName: OriginAccessControl
74+
kind: OriginAccessControl
75+
name: originaccesscontrols.cloudfront.services.k8s.aws
76+
version: v1alpha1
77+
- description: OriginRequestPolicy represents the state of an AWS cloudfront OriginRequestPolicy
78+
resource.
79+
displayName: OriginRequestPolicy
80+
kind: OriginRequestPolicy
81+
name: originrequestpolicies.cloudfront.services.k8s.aws
82+
version: v1alpha1
83+
- description: ResponseHeadersPolicy represents the state of an AWS cloudfront
84+
ResponseHeadersPolicy resource.
85+
displayName: ResponseHeadersPolicy
86+
kind: ResponseHeadersPolicy
87+
name: responseheaderspolicies.cloudfront.services.k8s.aws
88+
version: v1alpha1
89+
description: |-
90+
Manage Amazon CloudFront resources in AWS from within your Kubernetes cluster.
91+
92+
**About Amazon CloudFront**
93+
94+
Amazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to your users. CloudFront delivers your content through a worldwide network of data centers called edge locations.
95+
96+
**About the AWS Controllers for Kubernetes**
97+
98+
This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
99+
displayName: AWS Controllers for Kubernetes - Amazon CloudFront
100+
icon:
101+
- base64data: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMzA0IDE4MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzA0IDE4MjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiMyNTJGM0U7fQoJLnN0MXtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRjk5MDA7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04Ni40LDY2LjRjMCwzLjcsMC40LDYuNywxLjEsOC45YzAuOCwyLjIsMS44LDQuNiwzLjIsNy4yYzAuNSwwLjgsMC43LDEuNiwwLjcsMi4zYzAsMS0wLjYsMi0xLjksM2wtNi4zLDQuMiAgIGMtMC45LDAuNi0xLjgsMC45LTIuNiwwLjljLTEsMC0yLTAuNS0zLTEuNEM3Ni4yLDkwLDc1LDg4LjQsNzQsODYuOGMtMS0xLjctMi0zLjYtMy4xLTUuOWMtNy44LDkuMi0xNy42LDEzLjgtMjkuNCwxMy44ICAgYy04LjQsMC0xNS4xLTIuNC0yMC03LjJjLTQuOS00LjgtNy40LTExLjItNy40LTE5LjJjMC04LjUsMy0xNS40LDkuMS0yMC42YzYuMS01LjIsMTQuMi03LjgsMjQuNS03LjhjMy40LDAsNi45LDAuMywxMC42LDAuOCAgIGMzLjcsMC41LDcuNSwxLjMsMTEuNSwyLjJ2LTcuM2MwLTcuNi0xLjYtMTIuOS00LjctMTZjLTMuMi0zLjEtOC42LTQuNi0xNi4zLTQuNmMtMy41LDAtNy4xLDAuNC0xMC44LDEuM2MtMy43LDAuOS03LjMsMi0xMC44LDMuNCAgIGMtMS42LDAuNy0yLjgsMS4xLTMuNSwxLjNjLTAuNywwLjItMS4yLDAuMy0xLjYsMC4zYy0xLjQsMC0yLjEtMS0yLjEtMy4xdi00LjljMC0xLjYsMC4yLTIuOCwwLjctMy41YzAuNS0wLjcsMS40LTEuNCwyLjgtMi4xICAgYzMuNS0xLjgsNy43LTMuMywxMi42LTQuNWM0LjktMS4zLDEwLjEtMS45LDE1LjYtMS45YzExLjksMCwyMC42LDIuNywyNi4yLDguMWM1LjUsNS40LDguMywxMy42LDguMywyNC42VjY2LjR6IE00NS44LDgxLjYgICBjMy4zLDAsNi43LTAuNiwxMC4zLTEuOGMzLjYtMS4yLDYuOC0zLjQsOS41LTYuNGMxLjYtMS45LDIuOC00LDMuNC02LjRjMC42LTIuNCwxLTUuMywxLTguN3YtNC4yYy0yLjktMC43LTYtMS4zLTkuMi0xLjcgICBjLTMuMi0wLjQtNi4zLTAuNi05LjQtMC42Yy02LjcsMC0xMS42LDEuMy0xNC45LDRjLTMuMywyLjctNC45LDYuNS00LjksMTEuNWMwLDQuNywxLjIsOC4yLDMuNywxMC42ICAgQzM3LjcsODAuNCw0MS4yLDgxLjYsNDUuOCw4MS42eiBNMTI2LjEsOTIuNGMtMS44LDAtMy0wLjMtMy44LTFjLTAuOC0wLjYtMS41LTItMi4xLTMuOUw5Ni43LDEwLjJjLTAuNi0yLTAuOS0zLjMtMC45LTQgICBjMC0xLjYsMC44LTIuNSwyLjQtMi41aDkuOGMxLjksMCwzLjIsMC4zLDMuOSwxYzAuOCwwLjYsMS40LDIsMiwzLjlsMTYuOCw2Ni4ybDE1LjYtNjYuMmMwLjUtMiwxLjEtMy4zLDEuOS0zLjljMC44LTAuNiwyLjItMSw0LTEgICBoOGMxLjksMCwzLjIsMC4zLDQsMWMwLjgsMC42LDEuNSwyLDEuOSwzLjlsMTUuOCw2N2wxNy4zLTY3YzAuNi0yLDEuMy0zLjMsMi0zLjljMC44LTAuNiwyLjEtMSwzLjktMWg5LjNjMS42LDAsMi41LDAuOCwyLjUsMi41ICAgYzAsMC41LTAuMSwxLTAuMiwxLjZjLTAuMSwwLjYtMC4zLDEuNC0wLjcsMi41bC0yNC4xLDc3LjNjLTAuNiwyLTEuMywzLjMtMi4xLDMuOWMtMC44LDAuNi0yLjEsMS0zLjgsMWgtOC42Yy0xLjksMC0zLjItMC4zLTQtMSAgIGMtMC44LTAuNy0xLjUtMi0xLjktNEwxNTYsMjNsLTE1LjQsNjQuNGMtMC41LDItMS4xLDMuMy0xLjksNGMtMC44LDAuNy0yLjIsMS00LDFIMTI2LjF6IE0yNTQuNiw5NS4xYy01LjIsMC0xMC40LTAuNi0xNS40LTEuOCAgIGMtNS0xLjItOC45LTIuNS0xMS41LTRjLTEuNi0wLjktMi43LTEuOS0zLjEtMi44Yy0wLjQtMC45LTAuNi0xLjktMC42LTIuOHYtNS4xYzAtMi4xLDAuOC0zLjEsMi4zLTMuMWMwLjYsMCwxLjIsMC4xLDEuOCwwLjMgICBjMC42LDAuMiwxLjUsMC42LDIuNSwxYzMuNCwxLjUsNy4xLDIuNywxMSwzLjVjNCwwLjgsNy45LDEuMiwxMS45LDEuMmM2LjMsMCwxMS4yLTEuMSwxNC42LTMuM2MzLjQtMi4yLDUuMi01LjQsNS4yLTkuNSAgIGMwLTIuOC0wLjktNS4xLTIuNy03Yy0xLjgtMS45LTUuMi0zLjYtMTAuMS01LjJMMjQ2LDUyYy03LjMtMi4zLTEyLjctNS43LTE2LTEwLjJjLTMuMy00LjQtNS05LjMtNS0xNC41YzAtNC4yLDAuOS03LjksMi43LTExLjEgICBjMS44LTMuMiw0LjItNiw3LjItOC4yYzMtMi4zLDYuNC00LDEwLjQtNS4yYzQtMS4yLDguMi0xLjcsMTIuNi0xLjdjMi4yLDAsNC41LDAuMSw2LjcsMC40YzIuMywwLjMsNC40LDAuNyw2LjUsMS4xICAgYzIsMC41LDMuOSwxLDUuNywxLjZjMS44LDAuNiwzLjIsMS4yLDQuMiwxLjhjMS40LDAuOCwyLjQsMS42LDMsMi41YzAuNiwwLjgsMC45LDEuOSwwLjksMy4zdjQuN2MwLDIuMS0wLjgsMy4yLTIuMywzLjIgICBjLTAuOCwwLTIuMS0wLjQtMy44LTEuMmMtNS43LTIuNi0xMi4xLTMuOS0xOS4yLTMuOWMtNS43LDAtMTAuMiwwLjktMTMuMywyLjhjLTMuMSwxLjktNC43LDQuOC00LjcsOC45YzAsMi44LDEsNS4yLDMsNy4xICAgYzIsMS45LDUuNywzLjgsMTEsNS41bDE0LjIsNC41YzcuMiwyLjMsMTIuNCw1LjUsMTUuNSw5LjZjMy4xLDQuMSw0LjYsOC44LDQuNiwxNGMwLDQuMy0wLjksOC4yLTIuNiwxMS42ICAgYy0xLjgsMy40LTQuMiw2LjQtNy4zLDguOGMtMy4xLDIuNS02LjgsNC4zLTExLjEsNS42QzI2NC40LDk0LjQsMjU5LjcsOTUuMSwyNTQuNiw5NS4xeiIvPgoJPGc+CgkJPHBhdGggY2xhc3M9InN0MSIgZD0iTTI3My41LDE0My43Yy0zMi45LDI0LjMtODAuNywzNy4yLTEyMS44LDM3LjJjLTU3LjYsMC0xMDkuNS0yMS4zLTE0OC43LTU2LjdjLTMuMS0yLjgtMC4zLTYuNiwzLjQtNC40ICAgIGM0Mi40LDI0LjYsOTQuNywzOS41LDE0OC44LDM5LjVjMzYuNSwwLDc2LjYtNy42LDExMy41LTIzLjJDMjc0LjIsMTMzLjYsMjc4LjksMTM5LjcsMjczLjUsMTQzLjd6Ii8+CgkJPHBhdGggY2xhc3M9InN0MSIgZD0iTTI4Ny4yLDEyOC4xYy00LjItNS40LTI3LjgtMi42LTM4LjUtMS4zYy0zLjIsMC40LTMuNy0yLjQtMC44LTQuNWMxOC44LTEzLjIsNDkuNy05LjQsNTMuMy01ICAgIGMzLjYsNC41LTEsMzUuNC0xOC42LDUwLjJjLTIuNywyLjMtNS4zLDEuMS00LjEtMS45QzI4Mi41LDE1NS43LDI5MS40LDEzMy40LDI4Ny4yLDEyOC4xeiIvPgoJPC9nPgo8L2c+Cjwvc3ZnPg==
102+
mediatype: image/svg+xml
103+
install:
104+
spec:
105+
clusterPermissions:
106+
- rules:
107+
- apiGroups:
108+
- ""
109+
resources:
110+
- configmaps
111+
- secrets
112+
verbs:
113+
- get
114+
- list
115+
- patch
116+
- watch
117+
- apiGroups:
118+
- ""
119+
resources:
120+
- namespaces
121+
verbs:
122+
- get
123+
- list
124+
- watch
125+
- apiGroups:
126+
- acm.services.k8s.aws
127+
resources:
128+
- certificates
129+
- certificates/status
130+
verbs:
131+
- get
132+
- list
133+
- apiGroups:
134+
- cloudfront.services.k8s.aws
135+
resources:
136+
- cachepolicies
137+
- distributions
138+
- functions
139+
- originaccesscontrols
140+
- originrequestpolicies
141+
- responseheaderspolicies
142+
verbs:
143+
- create
144+
- delete
145+
- get
146+
- list
147+
- patch
148+
- update
149+
- watch
150+
- apiGroups:
151+
- cloudfront.services.k8s.aws
152+
resources:
153+
- cachepolicies/status
154+
- distributions/status
155+
- functions/status
156+
- originaccesscontrols/status
157+
- originrequestpolicies/status
158+
- responseheaderspolicies/status
159+
verbs:
160+
- get
161+
- patch
162+
- update
163+
- apiGroups:
164+
- services.k8s.aws
165+
resources:
166+
- adoptedresources
167+
- fieldexports
168+
verbs:
169+
- create
170+
- delete
171+
- get
172+
- list
173+
- patch
174+
- update
175+
- watch
176+
- apiGroups:
177+
- services.k8s.aws
178+
resources:
179+
- adoptedresources/status
180+
- fieldexports/status
181+
verbs:
182+
- get
183+
- patch
184+
- update
185+
serviceAccountName: ack-cloudfront-controller
186+
deployments:
187+
- label:
188+
app.kubernetes.io/name: ack-cloudfront-controller
189+
app.kubernetes.io/part-of: ack-system
190+
name: ack-cloudfront-controller
191+
spec:
192+
replicas: 1
193+
selector:
194+
matchLabels:
195+
app.kubernetes.io/name: ack-cloudfront-controller
196+
strategy: {}
197+
template:
198+
metadata:
199+
labels:
200+
app.kubernetes.io/name: ack-cloudfront-controller
201+
spec:
202+
containers:
203+
- args:
204+
- --aws-region
205+
- $(AWS_REGION)
206+
- --aws-endpoint-url
207+
- $(AWS_ENDPOINT_URL)
208+
- --enable-development-logging=$(ACK_ENABLE_DEVELOPMENT_LOGGING)
209+
- --log-level
210+
- $(ACK_LOG_LEVEL)
211+
- --resource-tags
212+
- $(ACK_RESOURCE_TAGS)
213+
- --watch-namespace
214+
- $(ACK_WATCH_NAMESPACE)
215+
- --enable-leader-election=$(ENABLE_LEADER_ELECTION)
216+
- --leader-election-namespace
217+
- $(LEADER_ELECTION_NAMESPACE)
218+
- --reconcile-default-max-concurrent-syncs
219+
- $(RECONCILE_DEFAULT_MAX_CONCURRENT_SYNCS)
220+
- --feature-gates
221+
- $(FEATURE_GATES)
222+
command:
223+
- ./bin/controller
224+
env:
225+
- name: ACK_SYSTEM_NAMESPACE
226+
valueFrom:
227+
fieldRef:
228+
fieldPath: metadata.namespace
229+
envFrom:
230+
- configMapRef:
231+
name: ack-cloudfront-user-config
232+
optional: false
233+
- secretRef:
234+
name: ack-cloudfront-user-secrets
235+
optional: true
236+
image: public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.0.7
237+
livenessProbe:
238+
httpGet:
239+
path: /healthz
240+
port: 8081
241+
initialDelaySeconds: 15
242+
periodSeconds: 20
243+
name: controller
244+
ports:
245+
- containerPort: 8080
246+
name: http
247+
readinessProbe:
248+
httpGet:
249+
path: /readyz
250+
port: 8081
251+
initialDelaySeconds: 5
252+
periodSeconds: 10
253+
resources:
254+
limits:
255+
cpu: 100m
256+
memory: 300Mi
257+
requests:
258+
cpu: 100m
259+
memory: 200Mi
260+
securityContext:
261+
allowPrivilegeEscalation: false
262+
capabilities:
263+
drop:
264+
- ALL
265+
privileged: false
266+
runAsNonRoot: true
267+
dnsPolicy: ClusterFirst
268+
securityContext:
269+
seccompProfile:
270+
type: RuntimeDefault
271+
serviceAccountName: ack-cloudfront-controller
272+
terminationGracePeriodSeconds: 10
273+
permissions:
274+
- rules:
275+
- apiGroups:
276+
- coordination.k8s.io
277+
resources:
278+
- leases
279+
verbs:
280+
- get
281+
- list
282+
- watch
283+
- create
284+
- update
285+
- patch
286+
- delete
287+
- apiGroups:
288+
- ""
289+
resources:
290+
- events
291+
verbs:
292+
- create
293+
- patch
294+
serviceAccountName: ack-cloudfront-controller
295+
strategy: deployment
296+
installModes:
297+
- supported: true
298+
type: OwnNamespace
299+
- supported: true
300+
type: SingleNamespace
301+
- supported: true
302+
type: MultiNamespace
303+
- supported: true
304+
type: AllNamespaces
305+
keywords:
306+
- cloudfront
307+
- aws
308+
- amazon
309+
- ack
310+
links:
311+
- name: AWS Controllers for Kubernetes
312+
url: https://github.com/aws-controllers-k8s/community
313+
- name: Documentation
314+
url: https://aws-controllers-k8s.github.io/community/
315+
- name: Amazon CloudFront Developer Resources
316+
url: https://aws.amazon.com/cloudfront/developer-resources/
317+
maintainers:
318+
319+
name: cloudfront maintainer team
320+
maturity: alpha
321+
provider:
322+
name: Amazon, Inc.
323+
url: https://aws.amazon.com
324+
version: 1.0.7
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
creationTimestamp: null
5+
name: ack-cloudfront-metrics-service
6+
spec:
7+
ports:
8+
- name: metricsport
9+
port: 8080
10+
protocol: TCP
11+
targetPort: http
12+
selector:
13+
app.kubernetes.io/name: ack-cloudfront-controller
14+
type: NodePort
15+
status:
16+
loadBalancer: {}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
apiVersion: rbac.authorization.k8s.io/v1
2+
kind: Role
3+
metadata:
4+
creationTimestamp: null
5+
name: ack-cloudfront-reader
6+
rules:
7+
- apiGroups:
8+
- cloudfront.services.k8s.aws
9+
resources:
10+
- cachepolicies
11+
- distributions
12+
- functions
13+
- originaccesscontrols
14+
- originrequestpolicies
15+
- responseheaderspolicies
16+
verbs:
17+
- get
18+
- list
19+
- watch

0 commit comments

Comments
 (0)