Skip to content

Commit b737468

Browse files
authored
Update ACK runtime to v0.16.0 (#27)
### Update ACK runtime to `v0.16.0` ---------- NOTE: This PR increments the release version of service controller from `v0.0.1` to `v0.0.2` Once this PR is merged, release `v0.0.2` will be automatically created for `ec2-controller` **Please close this PR, if you do not want the new patch release for `ec2-controller`** ---------- #### stdout for `make build-controller`: ``` building ack-generate ... ok. installing controller-gen v0.7.0 ... ok. ==== building ec2-controller ==== Copying common custom resource definitions into ec2 Building Kubernetes API objects for ec2 Generating deepcopy code for ec2 Generating custom resource definitions for ec2 Building service controller for ec2 Generating RBAC manifests for ec2 Running gofmt against generated code for ec2 Updating additional GitHub repository maintenance files ==== building ec2-controller release artifacts ==== Building release artifacts for ec2-v0.0.2 Generating common custom resource definitions Generating custom resource definitions for ec2 Generating RBAC manifests for ec2 ``` ---------- By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
1 parent 33f4261 commit b737468

30 files changed

+1486
-370
lines changed

apis/v1alpha1/ack-generate-metadata.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
ack_generate_info:
2-
build_date: "2021-11-22T22:46:53Z"
3-
build_hash: 966e9a9ac6dfb4bbc2d3ded1972ce2b706391d44
4-
go_version: go1.17
5-
version: v0.15.2
2+
build_date: "2022-01-07T20:29:23Z"
3+
build_hash: 3e184727de8a4dfd4769e3d88f4f52f885858335
4+
go_version: go1.17.5
5+
version: v0.16.0
66
api_directory_checksum: 43cfac78c9b056059cb202c220f24ac4fb02477f
77
api_version: v1alpha1
88
aws_sdk_go_version: v1.37.10

config/controller/deployment.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,15 @@ spec:
5353
valueFrom:
5454
fieldRef:
5555
fieldPath: metadata.namespace
56+
securityContext:
57+
allowPrivilegeEscalation: false
58+
privileged: false
59+
runAsNonRoot: true
60+
runAsUser: 1000
61+
capabilities:
62+
drop:
63+
- ALL
5664
terminationGracePeriodSeconds: 10
65+
hostIPC: false
66+
hostNetwork: false
67+
hostPID: false

config/crd/common/bases/services.k8s.aws_adoptedresources.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1
44
kind: CustomResourceDefinition
55
metadata:
66
annotations:
7-
controller-gen.kubebuilder.io/version: v0.4.0
7+
controller-gen.kubebuilder.io/version: v0.7.0
88
creationTimestamp: null
99
name: adoptedresources.services.k8s.aws
1010
spec:

go.mod

Lines changed: 59 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,66 @@
11
module github.com/aws-controllers-k8s/ec2-controller
22

3-
go 1.14
3+
go 1.17
44

55
require (
6-
github.com/aws-controllers-k8s/runtime v0.15.2
6+
github.com/aws-controllers-k8s/runtime v0.16.0
77
github.com/aws/aws-sdk-go v1.37.10
8-
github.com/go-logr/logr v0.1.0
8+
github.com/go-logr/logr v1.2.0
99
github.com/spf13/pflag v1.0.5
10-
k8s.io/api v0.18.2
11-
k8s.io/apimachinery v0.18.6
12-
k8s.io/client-go v0.18.2
13-
sigs.k8s.io/controller-runtime v0.6.0
10+
k8s.io/api v0.23.0
11+
k8s.io/apimachinery v0.23.0
12+
k8s.io/client-go v0.23.0
13+
sigs.k8s.io/controller-runtime v0.11.0
14+
)
15+
16+
require (
17+
github.com/beorn7/perks v1.0.1 // indirect
18+
github.com/cespare/xxhash/v2 v2.1.1 // indirect
19+
github.com/davecgh/go-spew v1.1.1 // indirect
20+
github.com/evanphx/json-patch v4.12.0+incompatible // indirect
21+
github.com/fsnotify/fsnotify v1.5.1 // indirect
22+
github.com/go-logr/zapr v1.2.0 // indirect
23+
github.com/gogo/protobuf v1.3.2 // indirect
24+
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
25+
github.com/golang/protobuf v1.5.2 // indirect
26+
github.com/google/go-cmp v0.5.5 // indirect
27+
github.com/google/gofuzz v1.1.0 // indirect
28+
github.com/google/uuid v1.1.2 // indirect
29+
github.com/googleapis/gnostic v0.5.5 // indirect
30+
github.com/imdario/mergo v0.3.12 // indirect
31+
github.com/jaypipes/envutil v1.0.0 // indirect
32+
github.com/jmespath/go-jmespath v0.4.0 // indirect
33+
github.com/json-iterator/go v1.1.12 // indirect
34+
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
35+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
36+
github.com/modern-go/reflect2 v1.0.2 // indirect
37+
github.com/pkg/errors v0.9.1 // indirect
38+
github.com/prometheus/client_golang v1.11.0 // indirect
39+
github.com/prometheus/client_model v0.2.0 // indirect
40+
github.com/prometheus/common v0.28.0 // indirect
41+
github.com/prometheus/procfs v0.6.0 // indirect
42+
github.com/stretchr/objx v0.2.0 // indirect
43+
go.uber.org/atomic v1.7.0 // indirect
44+
go.uber.org/multierr v1.6.0 // indirect
45+
go.uber.org/zap v1.19.1 // indirect
46+
golang.org/x/net v0.0.0-20210825183410-e898025ed96a // indirect
47+
golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f // indirect
48+
golang.org/x/sys v0.0.0-20211029165221-6e7872819dc8 // indirect
49+
golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b // indirect
50+
golang.org/x/text v0.3.7 // indirect
51+
golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac // indirect
52+
gomodules.xyz/jsonpatch/v2 v2.2.0 // indirect
53+
google.golang.org/appengine v1.6.7 // indirect
54+
google.golang.org/protobuf v1.27.1 // indirect
55+
gopkg.in/inf.v0 v0.9.1 // indirect
56+
gopkg.in/yaml.v2 v2.4.0 // indirect
57+
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
58+
k8s.io/apiextensions-apiserver v0.23.0 // indirect
59+
k8s.io/component-base v0.23.0 // indirect
60+
k8s.io/klog/v2 v2.30.0 // indirect
61+
k8s.io/kube-openapi v0.0.0-20211115234752-e816edb12b65 // indirect
62+
k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b // indirect
63+
sigs.k8s.io/json v0.0.0-20211020170558-c049b76a60c6 // indirect
64+
sigs.k8s.io/structured-merge-diff/v4 v4.2.0 // indirect
65+
sigs.k8s.io/yaml v1.3.0 // indirect
1466
)

go.sum

Lines changed: 724 additions & 228 deletions
Large diffs are not rendered by default.

helm/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
apiVersion: v1
22
name: ec2-chart
33
description: A Helm chart for the ACK service controller for Amazon Elastic Cloud Compute (EC2)
4-
version: v0.0.1
5-
appVersion: v0.0.1
4+
version: v0.0.2
5+
appVersion: v0.0.2
66
home: https://github.com/aws-controllers-k8s/ec2-controller
77
icon: https://raw.githubusercontent.com/aws/eks-charts/master/docs/logo/aws.png
88
sources:

helm/templates/deployment.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,25 @@ spec:
7373
value: {{ .Values.log.level | quote }}
7474
- name: ACK_RESOURCE_TAGS
7575
value: {{ join "," .Values.resourceTags | quote }}
76+
securityContext:
77+
allowPrivilegeEscalation: false
78+
privileged: false
79+
runAsNonRoot: true
80+
runAsUser: 1000
81+
capabilities:
82+
drop:
83+
- ALL
7684
terminationGracePeriodSeconds: 10
7785
nodeSelector: {{ toYaml .Values.deployment.nodeSelector | nindent 8 }}
86+
{{ if .Values.deployment.tolerations -}}
87+
tolerations: {{ toYaml .Values.deployment.tolerations | nindent 8 }}
88+
{{ end -}}
89+
{{ if .Values.deployment.affinity -}}
90+
affinity: {{ toYaml .Values.deployment.affinity | nindent 8 }}
91+
{{ end -}}
92+
{{ if .Values.deployment.priorityClassName -}}
93+
priorityClassName: {{ .Values.deployment.priorityClassName -}}
94+
{{ end -}}
95+
hostIPC: false
96+
hostNetwork: false
97+
hostPID: false

helm/values.schema.json

Lines changed: 211 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,211 @@
1+
{
2+
"$schema": "https://json-schema.org/draft-07/schema#",
3+
"properties": {
4+
"image": {
5+
"description": "Container Image",
6+
"properties": {
7+
"repository": {
8+
"type": "string",
9+
"minLength": 1
10+
},
11+
"tag": {
12+
"type": "string",
13+
"minLength": 1
14+
},
15+
"pullPolicy": {
16+
"type": "string",
17+
"enum": ["IfNotPresent", "Always", "Never"]
18+
},
19+
"pullSecrets": {
20+
"type": "array"
21+
}
22+
},
23+
"required": [
24+
"repository",
25+
"tag",
26+
"pullPolicy"
27+
],
28+
"type": "object"
29+
},
30+
"nameOverride": {
31+
"type": "string"
32+
},
33+
"fullNameOverride": {
34+
"type": "string"
35+
},
36+
"deployment": {
37+
"description": "Deployment settings",
38+
"properties": {
39+
"annotations": {
40+
"type": "object"
41+
},
42+
"labels": {
43+
"type": "object"
44+
},
45+
"containerPort": {
46+
"type": "integer",
47+
"minimum": 1,
48+
"maximum": 65535
49+
},
50+
"nodeSelector": {
51+
"type": "object"
52+
},
53+
"tolerations": {
54+
"type": "object"
55+
},
56+
"affinity": {
57+
"type": "object"
58+
},
59+
"priorityClassName": {
60+
"type": "string"
61+
}
62+
},
63+
"required": [
64+
"containerPort"
65+
],
66+
"type": "object"
67+
},
68+
"metrics": {
69+
"description": "Metrics settings",
70+
"properties": {
71+
"service": {
72+
"description": "Kubernetes service settings",
73+
"properties": {
74+
"create": {
75+
"type": "boolean"
76+
},
77+
"type": {
78+
"type": "string",
79+
"enum": ["ClusterIP", "NodePort", "LoadBalancer", "ExternalName"]
80+
}
81+
},
82+
"required": [
83+
"create",
84+
"type"
85+
],
86+
"type": "object"
87+
}
88+
},
89+
"required": [
90+
"service"
91+
],
92+
"type": "object"
93+
},
94+
"resources": {
95+
"description": "Kubernetes resources settings",
96+
"properties": {
97+
"requests": {
98+
"description": "Kubernetes resource requests",
99+
"properties": {
100+
"memory": {
101+
"oneOf": [
102+
{ "type": "number" },
103+
{ "type": "string" }
104+
]
105+
},
106+
"cpu": {
107+
"oneOf": [
108+
{ "type": "number" },
109+
{ "type": "string" }
110+
]
111+
}
112+
},
113+
"required": [
114+
"memory",
115+
"cpu"
116+
],
117+
"type": "object"
118+
},
119+
"limits": {
120+
"description": "Kubernetes resource limits",
121+
"properties": {
122+
"memory": {
123+
"oneOf": [
124+
{ "type": "number" },
125+
{ "type": "string" }
126+
]
127+
},
128+
"cpu": {
129+
"oneOf": [
130+
{ "type": "number" },
131+
{ "type": "string" }
132+
]
133+
}
134+
},
135+
"required": [
136+
"memory",
137+
"cpu"
138+
],
139+
"type": "object"
140+
}
141+
},
142+
"required": [
143+
"requests",
144+
"limits"
145+
],
146+
"type": "object"
147+
},
148+
"aws": {
149+
"description": "AWS API settings",
150+
"properties": {
151+
"region": {
152+
"type": "string"
153+
},
154+
"endpoint": {
155+
"type": "string"
156+
}
157+
},
158+
"type": "object"
159+
},
160+
"log": {
161+
"description": "Logging settings",
162+
"properties": {
163+
"enable_development_logging": {
164+
"type": "boolean"
165+
},
166+
"level": {
167+
"type": "string"
168+
}
169+
},
170+
"type": "object"
171+
},
172+
"installScope": {
173+
"type": "string",
174+
"enum": ["cluster", "namespace"]
175+
},
176+
"resourceTags": {
177+
"type": "array",
178+
"items": {
179+
"type": "string",
180+
"pattern": "^.*=.*$"
181+
}
182+
},
183+
"serviceAccount": {
184+
"description": "ServiceAccount settings",
185+
"properties": {
186+
"create": {
187+
"type": "boolean"
188+
},
189+
"name": {
190+
"type": "string"
191+
},
192+
"annotations": {
193+
"type": "object"
194+
}
195+
},
196+
"type": "object"
197+
}
198+
},
199+
"required": [
200+
"image",
201+
"deployment",
202+
"metrics",
203+
"resources",
204+
"log",
205+
"installScope",
206+
"resourceTags",
207+
"serviceAccount"
208+
],
209+
"title": "Values",
210+
"type": "object"
211+
}

helm/values.yaml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
image:
66
repository: public.ecr.aws/aws-controllers-k8s/ec2-controller
7-
tag: v0.0.1
7+
tag: v0.0.2
88
pullPolicy: IfNotPresent
99
pullSecrets: []
1010

@@ -15,9 +15,20 @@ deployment:
1515
annotations: {}
1616
labels: {}
1717
containerPort: 8080
18+
# Which nodeSelector to set?
19+
# See: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector
1820
nodeSelector:
1921
kubernetes.io/os: linux
20-
22+
# Which tolerations to set?
23+
# See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
24+
tolerations: {}
25+
# What affinity to set?
26+
# See: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity
27+
affinity: {}
28+
# Which priorityClassName to set?
29+
# See: https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#pod-priority
30+
priorityClassName: ""
31+
2132
metrics:
2233
service:
2334
# Set to true to automatically create a Kubernetes Service resource for the

0 commit comments

Comments
 (0)