Skip to content

Commit 103bde6

Browse files
committed
ci: stop using bitnami images
1 parent 240add2 commit 103bde6

File tree

4 files changed

+238
-7
lines changed

4 files changed

+238
-7
lines changed

.ci/k8s/kafka-deployment.yaml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
#
2+
# kafka service
3+
#
4+
apiVersion: v1
5+
kind: Service
6+
metadata:
7+
name: billing-kafka
8+
spec:
9+
selector:
10+
app: kafka
11+
ports:
12+
- name: kafka
13+
port: 9092
14+
targetPort: 9092
15+
---
16+
17+
18+
#
19+
# kafka
20+
#
21+
apiVersion: apps/v1
22+
kind: StatefulSet
23+
metadata:
24+
name: kafka
25+
spec:
26+
selector:
27+
matchLabels:
28+
app: kafka
29+
replicas: 1
30+
template:
31+
metadata:
32+
labels:
33+
app: kafka
34+
spec:
35+
containers:
36+
- name: kafka
37+
image: apache/kafka:3.9.1
38+
ports:
39+
- name: kafka
40+
containerPort: 9092
41+
readinessProbe:
42+
tcpSocket:
43+
port: 9092
44+
initialDelaySeconds: 10
45+
timeoutSeconds: 5
46+
livenessProbe:
47+
tcpSocket:
48+
port: 9092
49+
initialDelaySeconds: 10
50+
timeoutSeconds: 5
51+
env:
52+
- name: KAFKA_LISTENERS
53+
value: PLAINTEXT://:9092,CONTROLLER://:9093
54+
- name: KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR
55+
value: "1"
56+
- name: KAFKA_ADVERTISED_LISTENERS
57+
value: PLAINTEXT://billing-kafka:9092
58+
- name: KAFKA_CONTROLLER_QUORUM_VOTERS
59+
value: 1@localhost:9093
60+
- name: KAFKA_TRANSACTION_STATE_LOG_MIN_ISR
61+
value: "1"
62+
- name: KAFKA_CONTROLLER_LISTENER_NAMES
63+
value: CONTROLLER
64+
- name: KAFKA_NODE_ID
65+
value: "1"
66+
- name: KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS
67+
value: "0"
68+
- name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP
69+
value: CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
70+
- name: KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR
71+
value: "1"
72+
- name: KAFKA_PROCESS_ROLES
73+
value: broker,controller

.ci/k8s/postgresql-deployment.yaml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
#
2+
# postgresql environment
3+
#
4+
apiVersion: v1
5+
kind: ConfigMap
6+
metadata:
7+
name: postgres-secret
8+
labels:
9+
app: postgres
10+
data:
11+
POSTGRES_DB: chimera
12+
POSTGRES_USER: dcache
13+
POSTGRES_PASSWORD: let-me-in
14+
15+
---
16+
17+
#
18+
# postgres service
19+
#
20+
apiVersion: v1
21+
kind: Service
22+
metadata:
23+
name: chimera-postgresql
24+
spec:
25+
selector:
26+
app: postgresql
27+
ports:
28+
- name: postgresql
29+
port: 5432
30+
targetPort: 5432
31+
---
32+
33+
#
34+
# postgres container
35+
#
36+
apiVersion: apps/v1
37+
kind: StatefulSet
38+
metadata:
39+
name: postgres
40+
spec:
41+
replicas: 1
42+
selector:
43+
matchLabels:
44+
app: postgresql
45+
template:
46+
metadata:
47+
labels:
48+
app: postgresql
49+
spec:
50+
containers:
51+
- name: postgres
52+
image: 'postgres:17'
53+
imagePullPolicy: IfNotPresent
54+
ports:
55+
- containerPort: 5432
56+
readinessProbe:
57+
tcpSocket:
58+
port: 5432
59+
initialDelaySeconds: 10
60+
timeoutSeconds: 5
61+
livenessProbe:
62+
tcpSocket:
63+
port: 5432
64+
initialDelaySeconds: 10
65+
timeoutSeconds: 5
66+
envFrom:
67+
- configMapRef:
68+
name: postgres-secret

.ci/k8s/zookeeper-deployment.yaml

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
#
2+
# postgresql environment
3+
#
4+
apiVersion: v1
5+
kind: ConfigMap
6+
metadata:
7+
name: zookeeper-secret
8+
labels:
9+
app: zookeeper
10+
data:
11+
ZOO_MY_ID: '1'
12+
ZOO_SERVERS: 'server.1=zookeeper-0:2888:3888;2181'
13+
ZOO_ADMINSERVER_ENABLED: 'false'
14+
15+
---
16+
17+
#
18+
# Zookeeper inter-node service
19+
#
20+
apiVersion: v1
21+
kind: Service
22+
metadata:
23+
name: zookeeper-cluster
24+
spec:
25+
selector:
26+
app: zookeeper
27+
ports:
28+
- port: 2888
29+
name: zk-server
30+
- port: 3888
31+
name: zk-leader-election
32+
clusterIP: None
33+
---
34+
35+
#
36+
# zookeeper client cluster-internal communication
37+
#
38+
apiVersion: v1
39+
kind: Service
40+
metadata:
41+
name: cells-zookeeper
42+
labels:
43+
app: zookeeper
44+
spec:
45+
ports:
46+
- port: 2181
47+
name: zk-client
48+
selector:
49+
app: zookeeper
50+
---
51+
52+
#
53+
# postgres container
54+
#
55+
apiVersion: apps/v1
56+
kind: StatefulSet
57+
metadata:
58+
name: zookeeper
59+
spec:
60+
replicas: 1
61+
selector:
62+
matchLabels:
63+
app: zookeeper
64+
template:
65+
metadata:
66+
labels:
67+
app: zookeeper
68+
spec:
69+
containers:
70+
- name: zookeeper
71+
image: 'zookeeper:3.9'
72+
imagePullPolicy: IfNotPresent
73+
ports:
74+
- containerPort: 2181
75+
readinessProbe:
76+
tcpSocket:
77+
port: 2181
78+
initialDelaySeconds: 10
79+
timeoutSeconds: 5
80+
livenessProbe:
81+
tcpSocket:
82+
port: 2181
83+
initialDelaySeconds: 10
84+
timeoutSeconds: 5
85+
envFrom:
86+
- configMapRef:
87+
name: zookeeper-secret

.gitlab-ci.yml

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ default:
8585

8686
.kubernetes_image:
8787
extends: .kubernetes_tags
88-
image: bitnami/kubectl:latest
88+
image: dtzar/helm-kubectl:latest
8989

9090
.helm_image:
9191
extends: .kubernetes_tags
@@ -428,13 +428,16 @@ Clean k8s environment:
428428
#
429429
Deploy 3rd party infrastructure services:
430430
stage: test_infra
431-
extends: .helm_image
431+
extends: .kubernetes_image
432432
script:
433-
- helm repo add bitnami https://charts.bitnami.com/bitnami
434-
- helm repo update
435-
- helm -n ${K8S_NAMESPACE} install ${HELM_OPTS} --wait --set auth.username=dcache --set auth.password=let-me-in --set auth.database=chimera chimera bitnami/postgresql --version=12.12.10
436-
- helm -n ${K8S_NAMESPACE} install ${HELM_OPTS} --wait cells bitnami/zookeeper
437-
- helm -n ${K8S_NAMESPACE} install ${HELM_OPTS} --wait --set externalZookeeper.servers=cells-zookeeper --set kraft.enabled=false billing bitnami/kafka --version 23.0.7
433+
- kubectl -n ${K8S_NAMESPACE} apply -f .ci/k8s/postgresql-deployment.yaml
434+
- kubectl -n ${K8S_NAMESPACE} wait --for=condition=Ready pod/postgres-0
435+
- kubectl -n ${K8S_NAMESPACE} apply -f .ci/k8s/zookeeper-deployment.yaml
436+
- kubectl -n ${K8S_NAMESPACE} wait --for=condition=Ready pod/zookeeper-0
437+
- kubectl -n ${K8S_NAMESPACE} apply -f .ci/k8s/kafka-deployment.yaml
438+
- kubectl -n ${K8S_NAMESPACE} wait --for=condition=Ready pod/kafka-0
439+
- kubectl -n ${K8S_NAMESPACE} exec kafka-0 -- /opt/kafka/bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic billing
440+
438441

439442
#
440443
# Start Current dCache version and an old pools

0 commit comments

Comments
 (0)