Skip to content

Commit e4b3213

Browse files
committed
Add Hafnium deployment
1 parent 60bab87 commit e4b3213

5 files changed

Lines changed: 77 additions & 0 deletions

File tree

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Hafnium
2+
3+
This directory contains a deployment of [Hafnium](https://github.com/owl-corp/hafnium). It is a tool for syncing GitHub membership from Keycloak.
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: hafnium-config-env
5+
namespace: tooling
6+
data:
7+
HAFNIUM_KEYCLOAK_URL: "https://id.pydis.wtf"
8+
HAFNIUM_KEYCLOAK_REALM: "pydis"
9+
HAFNIUM_KEYCLOAK_USERNAME: "kingarthur"
10+
HAFNIUM_DISCORD_GUILDID: "267624335836053506"
11+
HAFNIUM_DISCORD_LOGCHANNELID: "675756741417369640"
12+
HAFNIUM_DISCORD_DEBUGTHREADID: "1265289413433364511"
13+
HAFNIUM_GITHUB_IGNORED_USERS: "pydis-bot"
14+
HAFNIUM_GITHUB_ORG: "python-discord"
15+
HAFNIUM_SYNC_MAPPINGFILE: "/app/mappings.toml"
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: hafnium
5+
namespace: tooling
6+
spec:
7+
replicas: 1
8+
selector:
9+
matchLabels:
10+
app: hafnium
11+
template:
12+
metadata:
13+
labels:
14+
app: hafnium
15+
annotations:
16+
prometheus.io/scrape: "true"
17+
prometheus.io/port: "metrics"
18+
spec:
19+
containers:
20+
- name: hafnium
21+
image: ghcr.io/owl-corp/hafnium:latest
22+
imagePullPolicy: Always
23+
envFrom:
24+
- secretRef:
25+
name: hafnium-env
26+
- configMapRef:
27+
name: hafnium-config-env
28+
securityContext:
29+
readOnlyRootFilesystem: true
30+
ports:
31+
- name: metrics
32+
containerPort: 9090
33+
volumeMounts:
34+
- name: hafnium-mappings
35+
mountPath: /app/mappings.toml
36+
subPath: mappings.toml
37+
securityContext:
38+
fsGroup: 2000
39+
runAsUser: 1000
40+
runAsNonRoot: true
41+
volumes:
42+
- name: hafnium-mappings
43+
configMap:
44+
name: hafnium-mappings
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: hafnium-mappings
5+
namespace: tooling
6+
data:
7+
mappings.toml: |
8+
[mappings]
9+
helpers = { github_team_slug = "helpers", discord_role_id = 267630620367257601 }
10+
devops = { github_team_slug = "devops", discord_role_id = 409416496733880320 }
11+
administrators = { github_team_slug = "admins", discord_role_id = 267628507062992896 }
12+
moderators = { github_team_slug = "moderators", discord_role_id = 267629731250176001 }
13+
coredevs = { github_team_slug = "core-developers", discord_role_id = 587606783669829632 }
14+
events = { github_team_slug = "events-team", discord_role_id = 787816728474288181 }
15+
directors = { github_team_slug = "directors", discord_role_id = 267627879762755584 }
428 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)