Skip to content

Commit ec243d4

Browse files
feat: add rabbitmq subchart (#135)
1 parent 7050f44 commit ec243d4

7 files changed

Lines changed: 171 additions & 0 deletions

File tree

charts/rabbitmq/.helmignore

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Patterns to ignore when building packages.
2+
# This supports shell glob matching, relative path matching, and
3+
# negation (prefixed with !). Only one pattern per line.
4+
.DS_Store
5+
# Common VCS dirs
6+
.git/
7+
.gitignore
8+
.bzr/
9+
.bzrignore
10+
.hg/
11+
.hgignore
12+
.svn/
13+
# Common backup files
14+
*.swp
15+
*.bak
16+
*.tmp
17+
*.orig
18+
*~
19+
# Various IDEs
20+
.project
21+
.idea/
22+
*.tmproj
23+
.vscode/

charts/rabbitmq/Chart.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
apiVersion: v2
2+
name: rabbitmq
3+
description: RabbitMQ message broker Helm chart
4+
version: 0.1.0
5+
appVersion: "4.0"
6+
type: application
7+
keywords:
8+
- rabbitmq
9+
- message-broker
10+
- amqp
11+
home: https://codefresh.io/
12+
maintainers:
13+
- name: codefresh
14+
url: https://codefresh-io.github.io/
15+
dependencies:
16+
- name: cf-common
17+
repository: oci://quay.io/codefresh/charts
18+
version: "0.31.0"
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{{ $templateName := printf "cf-common-%s.configmaps" (index .Subcharts "cf-common").Chart.Version }}
2+
{{- include $templateName . -}}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{{ $templateName := printf "cf-common-%s.controller" (index .Subcharts "cf-common").Chart.Version }}
2+
{{- include $templateName . -}}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{{ $templateName := printf "cf-common-%s.secrets" (index .Subcharts "cf-common").Chart.Version }}
2+
{{- include $templateName . -}}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{{ $templateName := printf "cf-common-%s.service" (index .Subcharts "cf-common").Chart.Version }}
2+
{{- include $templateName . -}}

charts/rabbitmq/values.yaml

Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
fullnameOverride: rabbitmq
2+
3+
auth:
4+
username: user
5+
password: password
6+
vhost: /
7+
8+
config:
9+
listeners.tcp.default: 5672
10+
management.tcp.port: 15672
11+
vm_memory_high_watermark.absolute: 256MiB
12+
disk_free_limit.absolute: 1GB
13+
14+
global: {}
15+
16+
controller:
17+
enabled: true
18+
type: statefulset
19+
replicas: 1
20+
podManagementPolicy: OrderedReady
21+
22+
container:
23+
image:
24+
registry: docker.io
25+
repository: rabbitmq
26+
tag: "4.0-management"
27+
pullPolicy: IfNotPresent
28+
29+
args:
30+
- "rabbitmq-server"
31+
32+
env:
33+
RABBITMQ_CONFIG_FILE: /etc/rabbitmq/rabbitmq.conf
34+
35+
probes:
36+
liveness:
37+
enabled: true
38+
type: exec
39+
exec:
40+
command:
41+
- rabbitmq-diagnostics
42+
- ping
43+
spec:
44+
initialDelaySeconds: 60
45+
periodSeconds: 20
46+
timeoutSeconds: 10
47+
successThreshold: 1
48+
failureThreshold: 6
49+
readiness:
50+
enabled: true
51+
type: exec
52+
exec:
53+
command:
54+
- rabbitmq-diagnostics
55+
- ping
56+
spec:
57+
initialDelaySeconds: 10
58+
periodSeconds: 10
59+
timeoutSeconds: 5
60+
successThreshold: 1
61+
failureThreshold: 6
62+
63+
resources:
64+
requests:
65+
cpu: 100m
66+
memory: 256Mi
67+
limits:
68+
cpu: 500m
69+
memory: 512Mi
70+
71+
volumeMounts:
72+
config:
73+
path:
74+
- mountPath: /etc/rabbitmq/rabbitmq.conf
75+
subPath: rabbitmq.conf
76+
77+
volumeClaimTemplates:
78+
data:
79+
mountPath: /var/lib/rabbitmq
80+
accessMode: ReadWriteOnce
81+
size: 10Gi
82+
storageClass:
83+
84+
secrets:
85+
secret:
86+
enabled: true
87+
stringData: |
88+
RABBITMQ_DEFAULT_USER: "{{ .Values.auth.username }}"
89+
RABBITMQ_DEFAULT_PASS: "{{ required ".Values.auth.password is required" .Values.auth.password }}"
90+
RABBITMQ_DEFAULT_VHOST: "{{ .Values.auth.vhost }}"
91+
92+
configMaps:
93+
config:
94+
enabled: true
95+
data:
96+
rabbitmq.conf: |
97+
{{- range $key, $value := .Values.config }}
98+
{{ $key }} = {{ $value }}
99+
{{- end }}
100+
101+
volumes:
102+
config:
103+
enabled: true
104+
type: configMap
105+
106+
service:
107+
main:
108+
enabled: true
109+
primary: true
110+
type: ClusterIP
111+
ports:
112+
amqp:
113+
port: 5672
114+
protocol: TCP
115+
management:
116+
port: 15672
117+
protocol: TCP
118+
119+
podSecurityContext: {}
120+
nodeSelector: {}
121+
tolerations: []
122+
affinity: {}

0 commit comments

Comments
 (0)