Skip to content

Commit 1ced44d

Browse files
authored
operator ack-emrcontainers-controller (1.0.27)
1 parent 805f687 commit 1ced44d

9 files changed

+810
-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-emrcontainers-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: 272 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,272 @@
1+
apiVersion: operators.coreos.com/v1alpha1
2+
kind: ClusterServiceVersion
3+
metadata:
4+
annotations:
5+
alm-examples: |-
6+
[
7+
{
8+
"apiVersion": "emrcontainers.services.k8s.aws/v1alpha1",
9+
"kind": "VirtualCluster",
10+
"metadata": {
11+
"name": "example"
12+
},
13+
"spec": {}
14+
}
15+
]
16+
capabilities: Basic Install
17+
categories: Cloud Provider
18+
certified: "false"
19+
containerImage: public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.0.27
20+
createdAt: "2025-08-12T23:55:27Z"
21+
description: AWS EMR on EKS controller is a service controller for managing EMR
22+
on EKS resources in Kubernetes
23+
operatorframework.io/suggested-namespace: ack-system
24+
operators.operatorframework.io/builder: operator-sdk-v1.28.0
25+
operators.operatorframework.io/project_layout: unknown
26+
repository: https://github.com/aws-controllers-k8s
27+
support: Community
28+
labels:
29+
operatorframework.io/arch.amd64: supported
30+
operatorframework.io/arch.arm64: supported
31+
operatorframework.io/os.linux: supported
32+
name: ack-emrcontainers-controller.v1.0.27
33+
namespace: placeholder
34+
spec:
35+
apiservicedefinitions: {}
36+
customresourcedefinitions:
37+
owned:
38+
- description: JobRun represents the state of an AWS emrcontainers JobRun resource.
39+
displayName: JobRun
40+
kind: JobRun
41+
name: jobruns.emrcontainers.services.k8s.aws
42+
version: v1alpha1
43+
- description: VirtualCluster represents the state of an AWS emrcontainers VirtualCluster
44+
resource.
45+
displayName: VirtualCluster
46+
kind: VirtualCluster
47+
name: virtualclusters.emrcontainers.services.k8s.aws
48+
version: v1alpha1
49+
description: |-
50+
Manage Amazon EMR on EKS resources in AWS from within your Kubernetes cluster.
51+
52+
**About Amazon EMR on EKS**
53+
54+
Amazon EMR on EKS provides a deployment option for Amazon EMR that allows you to run open-source big data frameworks on Amazon Elastic Kubernetes Service (Amazon EKS). With this deployment option, you can focus on running analytics workloads while Amazon EMR on EKS builds, configures, and manages containers for open-source applications.
55+
56+
**About the AWS Controllers for Kubernetes**
57+
58+
This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.
59+
60+
**Pre-Installation Steps**
61+
62+
Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
63+
displayName: AWS Controllers for Kubernetes - Amazon EMR on EKS
64+
icon:
65+
- base64data: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMzA0IDE4MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzA0IDE4MjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiMyNTJGM0U7fQoJLnN0MXtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNGRjk5MDA7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04Ni40LDY2LjRjMCwzLjcsMC40LDYuNywxLjEsOC45YzAuOCwyLjIsMS44LDQuNiwzLjIsNy4yYzAuNSwwLjgsMC43LDEuNiwwLjcsMi4zYzAsMS0wLjYsMi0xLjksM2wtNi4zLDQuMiAgIGMtMC45LDAuNi0xLjgsMC45LTIuNiwwLjljLTEsMC0yLTAuNS0zLTEuNEM3Ni4yLDkwLDc1LDg4LjQsNzQsODYuOGMtMS0xLjctMi0zLjYtMy4xLTUuOWMtNy44LDkuMi0xNy42LDEzLjgtMjkuNCwxMy44ICAgYy04LjQsMC0xNS4xLTIuNC0yMC03LjJjLTQuOS00LjgtNy40LTExLjItNy40LTE5LjJjMC04LjUsMy0xNS40LDkuMS0yMC42YzYuMS01LjIsMTQuMi03LjgsMjQuNS03LjhjMy40LDAsNi45LDAuMywxMC42LDAuOCAgIGMzLjcsMC41LDcuNSwxLjMsMTEuNSwyLjJ2LTcuM2MwLTcuNi0xLjYtMTIuOS00LjctMTZjLTMuMi0zLjEtOC42LTQuNi0xNi4zLTQuNmMtMy41LDAtNy4xLDAuNC0xMC44LDEuM2MtMy43LDAuOS03LjMsMi0xMC44LDMuNCAgIGMtMS42LDAuNy0yLjgsMS4xLTMuNSwxLjNjLTAuNywwLjItMS4yLDAuMy0xLjYsMC4zYy0xLjQsMC0yLjEtMS0yLjEtMy4xdi00LjljMC0xLjYsMC4yLTIuOCwwLjctMy41YzAuNS0wLjcsMS40LTEuNCwyLjgtMi4xICAgYzMuNS0xLjgsNy43LTMuMywxMi42LTQuNWM0LjktMS4zLDEwLjEtMS45LDE1LjYtMS45YzExLjksMCwyMC42LDIuNywyNi4yLDguMWM1LjUsNS40LDguMywxMy42LDguMywyNC42VjY2LjR6IE00NS44LDgxLjYgICBjMy4zLDAsNi43LTAuNiwxMC4zLTEuOGMzLjYtMS4yLDYuOC0zLjQsOS41LTYuNGMxLjYtMS45LDIuOC00LDMuNC02LjRjMC42LTIuNCwxLTUuMywxLTguN3YtNC4yYy0yLjktMC43LTYtMS4zLTkuMi0xLjcgICBjLTMuMi0wLjQtNi4zLTAuNi05LjQtMC42Yy02LjcsMC0xMS42LDEuMy0xNC45LDRjLTMuMywyLjctNC45LDYuNS00LjksMTEuNWMwLDQuNywxLjIsOC4yLDMuNywxMC42ICAgQzM3LjcsODAuNCw0MS4yLDgxLjYsNDUuOCw4MS42eiBNMTI2LjEsOTIuNGMtMS44LDAtMy0wLjMtMy44LTFjLTAuOC0wLjYtMS41LTItMi4xLTMuOUw5Ni43LDEwLjJjLTAuNi0yLTAuOS0zLjMtMC45LTQgICBjMC0xLjYsMC44LTIuNSwyLjQtMi41aDkuOGMxLjksMCwzLjIsMC4zLDMuOSwxYzAuOCwwLjYsMS40LDIsMiwzLjlsMTYuOCw2Ni4ybDE1LjYtNjYuMmMwLjUtMiwxLjEtMy4zLDEuOS0zLjljMC44LTAuNiwyLjItMSw0LTEgICBoOGMxLjksMCwzLjIsMC4zLDQsMWMwLjgsMC42LDEuNSwyLDEuOSwzLjlsMTUuOCw2N2wxNy4zLTY3YzAuNi0yLDEuMy0zLjMsMi0zLjljMC44LTAuNiwyLjEtMSwzLjktMWg5LjNjMS42LDAsMi41LDAuOCwyLjUsMi41ICAgYzAsMC41LTAuMSwxLTAuMiwxLjZjLTAuMSwwLjYtMC4zLDEuNC0wLjcsMi41bC0yNC4xLDc3LjNjLTAuNiwyLTEuMywzLjMtMi4xLDMuOWMtMC44LDAuNi0yLjEsMS0zLjgsMWgtOC42Yy0xLjksMC0zLjItMC4zLTQtMSAgIGMtMC44LTAuNy0xLjUtMi0xLjktNEwxNTYsMjNsLTE1LjQsNjQuNGMtMC41LDItMS4xLDMuMy0xLjksNGMtMC44LDAuNy0yLjIsMS00LDFIMTI2LjF6IE0yNTQuNiw5NS4xYy01LjIsMC0xMC40LTAuNi0xNS40LTEuOCAgIGMtNS0xLjItOC45LTIuNS0xMS41LTRjLTEuNi0wLjktMi43LTEuOS0zLjEtMi44Yy0wLjQtMC45LTAuNi0xLjktMC42LTIuOHYtNS4xYzAtMi4xLDAuOC0zLjEsMi4zLTMuMWMwLjYsMCwxLjIsMC4xLDEuOCwwLjMgICBjMC42LDAuMiwxLjUsMC42LDIuNSwxYzMuNCwxLjUsNy4xLDIuNywxMSwzLjVjNCwwLjgsNy45LDEuMiwxMS45LDEuMmM2LjMsMCwxMS4yLTEuMSwxNC42LTMuM2MzLjQtMi4yLDUuMi01LjQsNS4yLTkuNSAgIGMwLTIuOC0wLjktNS4xLTIuNy03Yy0xLjgtMS45LTUuMi0zLjYtMTAuMS01LjJMMjQ2LDUyYy03LjMtMi4zLTEyLjctNS43LTE2LTEwLjJjLTMuMy00LjQtNS05LjMtNS0xNC41YzAtNC4yLDAuOS03LjksMi43LTExLjEgICBjMS44LTMuMiw0LjItNiw3LjItOC4yYzMtMi4zLDYuNC00LDEwLjQtNS4yYzQtMS4yLDguMi0xLjcsMTIuNi0xLjdjMi4yLDAsNC41LDAuMSw2LjcsMC40YzIuMywwLjMsNC40LDAuNyw2LjUsMS4xICAgYzIsMC41LDMuOSwxLDUuNywxLjZjMS44LDAuNiwzLjIsMS4yLDQuMiwxLjhjMS40LDAuOCwyLjQsMS42LDMsMi41YzAuNiwwLjgsMC45LDEuOSwwLjksMy4zdjQuN2MwLDIuMS0wLjgsMy4yLTIuMywzLjIgICBjLTAuOCwwLTIuMS0wLjQtMy44LTEuMmMtNS43LTIuNi0xMi4xLTMuOS0xOS4yLTMuOWMtNS43LDAtMTAuMiwwLjktMTMuMywyLjhjLTMuMSwxLjktNC43LDQuOC00LjcsOC45YzAsMi44LDEsNS4yLDMsNy4xICAgYzIsMS45LDUuNywzLjgsMTEsNS41bDE0LjIsNC41YzcuMiwyLjMsMTIuNCw1LjUsMTUuNSw5LjZjMy4xLDQuMSw0LjYsOC44LDQuNiwxNGMwLDQuMy0wLjksOC4yLTIuNiwxMS42ICAgYy0xLjgsMy40LTQuMiw2LjQtNy4zLDguOGMtMy4xLDIuNS02LjgsNC4zLTExLjEsNS42QzI2NC40LDk0LjQsMjU5LjcsOTUuMSwyNTQuNiw5NS4xeiIvPgoJPGc+CgkJPHBhdGggY2xhc3M9InN0MSIgZD0iTTI3My41LDE0My43Yy0zMi45LDI0LjMtODAuNywzNy4yLTEyMS44LDM3LjJjLTU3LjYsMC0xMDkuNS0yMS4zLTE0OC43LTU2LjdjLTMuMS0yLjgtMC4zLTYuNiwzLjQtNC40ICAgIGM0Mi40LDI0LjYsOTQuNywzOS41LDE0OC44LDM5LjVjMzYuNSwwLDc2LjYtNy42LDExMy41LTIzLjJDMjc0LjIsMTMzLjYsMjc4LjksMTM5LjcsMjczLjUsMTQzLjd6Ii8+CgkJPHBhdGggY2xhc3M9InN0MSIgZD0iTTI4Ny4yLDEyOC4xYy00LjItNS40LTI3LjgtMi42LTM4LjUtMS4zYy0zLjIsMC40LTMuNy0yLjQtMC44LTQuNWMxOC44LTEzLjIsNDkuNy05LjQsNTMuMy01ICAgIGMzLjYsNC41LTEsMzUuNC0xOC42LDUwLjJjLTIuNywyLjMtNS4zLDEuMS00LjEtMS45QzI4Mi41LDE1NS43LDI5MS40LDEzMy40LDI4Ny4yLDEyOC4xeiIvPgoJPC9nPgo8L2c+Cjwvc3ZnPg==
66+
mediatype: image/svg+xml
67+
install:
68+
spec:
69+
clusterPermissions:
70+
- rules:
71+
- apiGroups:
72+
- ""
73+
resources:
74+
- configmaps
75+
- secrets
76+
verbs:
77+
- get
78+
- list
79+
- patch
80+
- watch
81+
- apiGroups:
82+
- ""
83+
resources:
84+
- namespaces
85+
verbs:
86+
- get
87+
- list
88+
- watch
89+
- apiGroups:
90+
- emrcontainers.services.k8s.aws
91+
resources:
92+
- jobruns
93+
- virtualclusters
94+
verbs:
95+
- create
96+
- delete
97+
- get
98+
- list
99+
- patch
100+
- update
101+
- watch
102+
- apiGroups:
103+
- emrcontainers.services.k8s.aws
104+
resources:
105+
- jobruns/status
106+
- virtualclusters/status
107+
verbs:
108+
- get
109+
- patch
110+
- update
111+
- apiGroups:
112+
- services.k8s.aws
113+
resources:
114+
- adoptedresources
115+
- fieldexports
116+
verbs:
117+
- create
118+
- delete
119+
- get
120+
- list
121+
- patch
122+
- update
123+
- watch
124+
- apiGroups:
125+
- services.k8s.aws
126+
resources:
127+
- adoptedresources/status
128+
- fieldexports/status
129+
verbs:
130+
- get
131+
- patch
132+
- update
133+
serviceAccountName: ack-emrcontainers-controller
134+
deployments:
135+
- label:
136+
app.kubernetes.io/name: ack-emrcontainers-controller
137+
app.kubernetes.io/part-of: ack-system
138+
name: ack-emrcontainers-controller
139+
spec:
140+
replicas: 1
141+
selector:
142+
matchLabels:
143+
app.kubernetes.io/name: ack-emrcontainers-controller
144+
strategy: {}
145+
template:
146+
metadata:
147+
labels:
148+
app.kubernetes.io/name: ack-emrcontainers-controller
149+
spec:
150+
containers:
151+
- args:
152+
- --aws-region
153+
- $(AWS_REGION)
154+
- --aws-endpoint-url
155+
- $(AWS_ENDPOINT_URL)
156+
- --enable-development-logging=$(ACK_ENABLE_DEVELOPMENT_LOGGING)
157+
- --log-level
158+
- $(ACK_LOG_LEVEL)
159+
- --resource-tags
160+
- $(ACK_RESOURCE_TAGS)
161+
- --watch-namespace
162+
- $(ACK_WATCH_NAMESPACE)
163+
- --enable-leader-election=$(ENABLE_LEADER_ELECTION)
164+
- --leader-election-namespace
165+
- $(LEADER_ELECTION_NAMESPACE)
166+
- --reconcile-default-max-concurrent-syncs
167+
- $(RECONCILE_DEFAULT_MAX_CONCURRENT_SYNCS)
168+
- --feature-gates
169+
- $(FEATURE_GATES)
170+
command:
171+
- ./bin/controller
172+
env:
173+
- name: ACK_SYSTEM_NAMESPACE
174+
valueFrom:
175+
fieldRef:
176+
fieldPath: metadata.namespace
177+
envFrom:
178+
- configMapRef:
179+
name: ack-emrcontainers-user-config
180+
optional: false
181+
- secretRef:
182+
name: ack-emrcontainers-user-secrets
183+
optional: true
184+
image: public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.0.27
185+
livenessProbe:
186+
httpGet:
187+
path: /healthz
188+
port: 8081
189+
initialDelaySeconds: 15
190+
periodSeconds: 20
191+
name: controller
192+
ports:
193+
- containerPort: 8080
194+
name: http
195+
readinessProbe:
196+
httpGet:
197+
path: /readyz
198+
port: 8081
199+
initialDelaySeconds: 5
200+
periodSeconds: 10
201+
resources:
202+
limits:
203+
cpu: 100m
204+
memory: 300Mi
205+
requests:
206+
cpu: 100m
207+
memory: 200Mi
208+
securityContext:
209+
allowPrivilegeEscalation: false
210+
capabilities:
211+
drop:
212+
- ALL
213+
privileged: false
214+
runAsNonRoot: true
215+
dnsPolicy: ClusterFirst
216+
securityContext:
217+
seccompProfile:
218+
type: RuntimeDefault
219+
serviceAccountName: ack-emrcontainers-controller
220+
terminationGracePeriodSeconds: 10
221+
permissions:
222+
- rules:
223+
- apiGroups:
224+
- coordination.k8s.io
225+
resources:
226+
- leases
227+
verbs:
228+
- get
229+
- list
230+
- watch
231+
- create
232+
- update
233+
- patch
234+
- delete
235+
- apiGroups:
236+
- ""
237+
resources:
238+
- events
239+
verbs:
240+
- create
241+
- patch
242+
serviceAccountName: ack-emrcontainers-controller
243+
strategy: deployment
244+
installModes:
245+
- supported: true
246+
type: OwnNamespace
247+
- supported: true
248+
type: SingleNamespace
249+
- supported: true
250+
type: MultiNamespace
251+
- supported: true
252+
type: AllNamespaces
253+
keywords:
254+
- emrcontainers
255+
- aws
256+
- amazon
257+
- ack
258+
links:
259+
- name: AWS Controllers for Kubernetes
260+
url: https://github.com/aws-controllers-k8s/community
261+
- name: Documentation
262+
url: https://aws-controllers-k8s.github.io/community/
263+
- name: Amazon EMR on EKS Developer Resources
264+
url: https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/emr-eks.html
265+
maintainers:
266+
267+
name: emr on eks maintainer team
268+
maturity: alpha
269+
provider:
270+
name: Amazon, Inc.
271+
url: https://aws.amazon.com
272+
version: 1.0.27
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-emrcontainers-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-emrcontainers-controller
14+
type: ClusterIP
15+
status:
16+
loadBalancer: {}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: rbac.authorization.k8s.io/v1
2+
kind: Role
3+
metadata:
4+
creationTimestamp: null
5+
name: ack-emrcontainers-reader
6+
rules:
7+
- apiGroups:
8+
- emrcontainers.services.k8s.aws
9+
resources:
10+
- jobruns
11+
- virtualclusters
12+
verbs:
13+
- get
14+
- list
15+
- watch
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
apiVersion: rbac.authorization.k8s.io/v1
2+
kind: Role
3+
metadata:
4+
creationTimestamp: null
5+
name: ack-emrcontainers-writer
6+
rules:
7+
- apiGroups:
8+
- emrcontainers.services.k8s.aws
9+
resources:
10+
- jobruns
11+
- virtualclusters
12+
verbs:
13+
- create
14+
- delete
15+
- get
16+
- list
17+
- patch
18+
- update
19+
- watch
20+
- apiGroups:
21+
- emrcontainers.services.k8s.aws
22+
resources:
23+
- jobruns
24+
- virtualclusters
25+
verbs:
26+
- get
27+
- patch
28+
- update

0 commit comments

Comments
 (0)