Skip to content

Commit 1a8bb4c

Browse files
committed
feat(hivemq): add hivemq
1 parent 4c134d6 commit 1a8bb4c

8 files changed

Lines changed: 177 additions & 1 deletion

File tree

‎hack/ceph-test.yaml‎

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,29 @@ spec:
126126
apiVersion: v1
127127
kind: Pod
128128
metadata:
129-
name: test-ceph-persistent-filesystem-rwx
129+
name: test-ceph-persistent-filesystem-rwx-a
130+
namespace: rook-ceph
131+
spec:
132+
containers:
133+
- name: test
134+
image: public.ecr.aws/docker/library/alpine:edge
135+
command:
136+
- /bin/sh
137+
- -c
138+
- "trap : TERM INT; sleep infinity & wait"
139+
volumeMounts:
140+
- mountPath: "/test"
141+
name: ceph
142+
volumes:
143+
- name: ceph
144+
persistentVolumeClaim:
145+
claimName: test-ceph-persistent-filesystem-rwx
146+
---
147+
# yaml-language-server: $schema=https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master-standalone/pod.json
148+
apiVersion: v1
149+
kind: Pod
150+
metadata:
151+
name: test-ceph-persistent-filesystem-rwx-b
130152
namespace: rook-ceph
131153
spec:
132154
containers:

‎kubernetes/apps/argocd/argocd/values.yaml‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,14 @@ argo-cd:
3535
end
3636
end
3737
return hs
38+
# this customization asks argo to ignore CiliumIdentity resources
39+
resource.exclusions: |
40+
- apiGroups:
41+
- cilium.io
42+
kinds:
43+
- CiliumIdentity
44+
clusters:
45+
- "*"
3846
url: "https://argocd.<path:kubernetes/data/internal/base#ROOT_DOMAIN>"
3947
oidc.config: |
4048
name: Authelia

‎kubernetes/apps/database/harbor/application.yaml‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,11 @@ spec:
4242
name: harbor-registry-htpasswd
4343
jsonPointers:
4444
- "/data"
45+
- group: ""
46+
kind: Secret
47+
name: harbor-ingress
48+
jsonPointers:
49+
- "/data"
4550
- group: apps
4651
kind: Deployment
4752
name: harbor-core
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
# yaml-language-server: $schema=https://json.schemastore.org/chart.json
3+
apiVersion: v2
4+
name: hivemq
5+
version: 1.0.0
6+
type: application
7+
dependencies:
8+
- name: hivemq-platform-operator
9+
version: 0.2.2
10+
repository: https://hivemq.github.io/helm-charts
11+
- name: hivemq-platform
12+
version: 0.2.5
13+
repository: https://hivemq.github.io/helm-charts
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
# yaml-language-server: $schema=https://deedee-ops.github.io/schemas/argoproj.io/application_v1alpha1.json
3+
apiVersion: argoproj.io/v1alpha1
4+
kind: Application
5+
metadata:
6+
name: hivemq
7+
namespace: argocd
8+
spec:
9+
project: default
10+
sources:
11+
- repoURL: https://github.com/deedee-ops/home-ops.git
12+
path: kubernetes/apps/database/hivemq
13+
targetRevision: master
14+
plugin:
15+
name: argocd-vault-plugin-helm
16+
destination:
17+
namespace: database
18+
server: https://kubernetes.default.svc
19+
syncPolicy:
20+
automated:
21+
prune: true
22+
syncOptions:
23+
- CreateNamespace=true
24+
ignoreDifferences:
25+
- group: admissionregistration.k8s.io
26+
kind: ValidatingWebhookConfiguration
27+
name: hivemq-admission
28+
jsonPointers:
29+
- /webhooks/0/failurePolicy
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
# yamllint disable rule:line-length
3+
# yaml-language-server: $schema=https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master-standalone/secret-v1.json
4+
# yamllint enable rule:line-length
5+
apiVersion: v1
6+
kind: Secret
7+
metadata:
8+
name: hivemq-secret
9+
type: Opaque
10+
stringData:
11+
extension-config.xml: |
12+
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
13+
<extension-configuration>
14+
<credentials-reload-interval>60</credentials-reload-interval>
15+
<password-type>PLAIN</password-type>
16+
</extension-configuration>
17+
credentials.xml: |
18+
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
19+
<file-rbac>
20+
<users>
21+
<user>
22+
<name><path:kubernetes/data/internal/hivemq#MQTT_USERNAME></name>
23+
<password><path:kubernetes/data/internal/hivemq#MQTT_PASSWORD></password>
24+
<roles>
25+
<id>superuser</id>
26+
</roles>
27+
</user>
28+
</users>
29+
<roles>
30+
<role>
31+
<id>superuser</id>
32+
<permissions>
33+
<permission>
34+
<topic>#</topic>
35+
</permission>
36+
</permissions>
37+
</role>
38+
</roles>
39+
</file-rbac>
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
# yaml-language-server: $schema=https://deedee-ops.github.io/schemas/cilium.io/ciliumnetworkpolicy_v2.json
3+
apiVersion: "cilium.io/v2"
4+
kind: CiliumNetworkPolicy
5+
metadata:
6+
name: hivemq
7+
specs:
8+
- endpointSelector:
9+
matchLabels:
10+
app.kubernetes.io/name: hivemq-platform
11+
egress:
12+
- toPorts:
13+
- ports:
14+
- port: "53"
15+
protocol: ANY
16+
rules:
17+
dns:
18+
- matchPattern: "*"
19+
- toFQDNs:
20+
- matchName: github.com
21+
- matchPattern: "*.github.com"
22+
- matchPattern: "*.githubusercontent.com"
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
hivemq-platform-operator:
3+
image:
4+
repository: ghcr.io/deedee-ops
5+
hivemq-platform:
6+
image:
7+
repository: ghcr.io/deedee-ops
8+
tag: '4.23.0@sha256:93a1d089123856f77d11217efce070dd46e43af052c1f46923491b1ad35f1c36'
9+
nodes:
10+
replicaCount: 2
11+
extensions:
12+
- name: hivemq-allow-all-extension
13+
enabled: false
14+
- name: hivemq-file-rbac-extension
15+
enabled: true
16+
extensionUri: preinstalled
17+
additionalVolumes:
18+
- type: secret
19+
name: hivemq-secret
20+
mountName: file-rbac-config
21+
path: /opt/hivemq/extensions/hivemq-file-rbac-extension/
22+
subPath: extension-config.xml
23+
- type: secret
24+
name: hivemq-secret
25+
mountName: file-rbac-credentials
26+
path: /opt/hivemq/extensions/hivemq-file-rbac-extension/
27+
subPath: credentials.xml
28+
services:
29+
- type: mqtt
30+
exposed: true
31+
containerPort: 1883
32+
port: 1883
33+
- type: control-center
34+
exposed: true
35+
containerPort: 8080
36+
controlCenter:
37+
username: "<path:kubernetes/data/internal/hivemq#CONTROL_CENTER_USERNAME>"
38+
password: "<path:kubernetes/data/internal/hivemq#CONTROL_CENTER_PASSWORD>"

0 commit comments

Comments
 (0)