Compare commits

..

4 Commits

Author SHA1 Message Date
Gitea Actions Bot fdccd4599d Auto-update README with current k8s applications
Keycloak Terraform / Terraform (pull_request) Failing after 37s
Generated by CI/CD workflow on 2026-06-29 13:26:22

This PR updates the README.md file with the current list of applications found in the k8s/ directory structure.
2026-06-29 13:26:22 +00:00
Ultradesu f53ab23d8e Fix: amnezia-fellow
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 2m39s
Check with kubeconform / lint (push) Successful in 6s
Auto-update README / Generate README and Create MR (push) Successful in 6s
2026-06-29 16:23:23 +03:00
Ultradesu df1aa96316 added amnezia-dellow
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 6s
Check with kubeconform / lint (push) Successful in 8s
Auto-update README / Generate README and Create MR (push) Failing after 2m16s
2026-06-29 16:04:04 +03:00
ab 3d58baaf2f Added tmp job for unban me in gitea
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 37s
Check with kubeconform / lint (push) Failing after 12s
Auto-update README / Generate README and Create MR (push) Successful in 15s
2026-06-28 11:50:56 +03:00
8 changed files with 234 additions and 1 deletions
+77
View File
@@ -0,0 +1,77 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: amnezia-fellow
labels:
app: amnezia-fellow
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: amnezia-fellow
template:
metadata:
labels:
app: amnezia-fellow
spec:
serviceAccountName: amnezia-fellow
nodeSelector:
kubernetes.io/os: linux
kubernetes.io/hostname: master.tail2fe2d.ts.net
containers:
- name: amnezia-fellow
image: ultradesu/amnezia-fellow:latest
imagePullPolicy: Always
args:
- "--listen"
- "0.0.0.0:8000"
ports:
- name: http
containerPort: 8000
protocol: TCP
env:
- name: AMNEZIA_FELLOW_DATABASE_URL
value: "sqlite:///data/amnezia-fellow.sqlite3?mode=rwc"
- name: AMNEZIA_FELLOW_K8S_NAMESPACE
value: "amnezia"
- name: AMNEZIA_FELLOW_K8S_CLIENTS_SECRET
value: "amneziawg-clients"
- name: AMNEZIA_FELLOW_K8S_CLIENTS_SECRET_KEY
value: "peers.conf"
- name: AMNEZIA_FELLOW_K8S_SERVER_SECRET
value: "amneziawg-server"
- name: AMNEZIA_FELLOW_K8S_ENDPOINTS_SECRET
value: "amneziawg-endpoints"
- name: AMNEZIA_FELLOW_VPN_CLIENT_CIDR
value: "10.8.0.0/16"
- name: AMNEZIA_FELLOW_VPN_MTU
value: "1376"
readinessProbe:
tcpSocket:
port: http
initialDelaySeconds: 5
periodSeconds: 10
timeoutSeconds: 3
livenessProbe:
tcpSocket:
port: http
initialDelaySeconds: 30
periodSeconds: 30
timeoutSeconds: 5
resources:
requests:
cpu: "50m"
memory: "128Mi"
limits:
cpu: "500m"
memory: "512Mi"
volumeMounts:
- name: data
mountPath: /data
volumes:
- name: data
persistentVolumeClaim:
claimName: amnezia-fellow-data
+26
View File
@@ -0,0 +1,26 @@
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: amnezia-fellow-tls-ingress
annotations:
cert-manager.io/cluster-issuer: letsencrypt
traefik.ingress.kubernetes.io/router.middlewares: kube-system-https-redirect@kubernetescrd
acme.cert-manager.io/http01-edit-in-place: "true"
spec:
ingressClassName: traefik
rules:
- host: awg.hexor.cy
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: amnezia-fellow
port:
number: 8000
tls:
- secretName: amnezia-fellow-tls
hosts:
- awg.hexor.cy
+35
View File
@@ -0,0 +1,35 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: amnezia-fellow
labels:
app: amnezia-fellow
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: amnezia-fellow
labels:
app: amnezia-fellow
rules:
- apiGroups: [""]
resources: ["secrets"]
verbs: ["get", "create", "update", "patch"]
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: amnezia-fellow
labels:
app: amnezia-fellow
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: amnezia-fellow
subjects:
- kind: ServiceAccount
name: amnezia-fellow
+16
View File
@@ -0,0 +1,16 @@
---
apiVersion: v1
kind: Service
metadata:
name: amnezia-fellow
labels:
app: amnezia-fellow
spec:
type: ClusterIP
selector:
app: amnezia-fellow
ports:
- name: http
protocol: TCP
port: 8000
targetPort: 8000
+14
View File
@@ -0,0 +1,14 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: amnezia-fellow-data
labels:
app: amnezia-fellow
spec:
accessModes:
- ReadWriteOnce
storageClassName: longhorn
resources:
requests:
storage: 3Gi
+5
View File
@@ -7,4 +7,9 @@ resources:
- external-secrets.yaml
- configmap-scripts.yaml
- rbac.yaml
- fellow-rbac.yaml
- fellow-storage.yaml
- fellow-service.yaml
- fellow-ingress.yaml
- fellow-deployment.yaml
- daemonset.yaml
+1 -1
View File
@@ -5,6 +5,6 @@ resources:
- app.yaml
- external-secrets.yaml
- deployment.yaml
- user-unban-cronjob.yaml
- service.yaml
- ingress.yaml
+60
View File
@@ -0,0 +1,60 @@
---
apiVersion: batch/v1
kind: CronJob
metadata:
name: gitea-user-unban
labels:
app: gitea-user-unban
spec:
schedule: "*/10 * * * *"
concurrencyPolicy: Forbid
successfulJobsHistoryLimit: 3
failedJobsHistoryLimit: 3
jobTemplate:
spec:
template:
metadata:
labels:
app: gitea-user-unban
spec:
restartPolicy: OnFailure
nodeSelector:
kubernetes.io/hostname: master.tail2fe2d.ts.net
volumes:
- name: storage
hostPath:
path: /k8s/gitea
type: Directory
containers:
- name: sqlite-unban
image: 'gitea/gitea:latest'
imagePullPolicy: IfNotPresent
resources:
requests:
memory: "32Mi"
cpu: "10m"
limits:
memory: "128Mi"
cpu: "100m"
command:
- /bin/sh
- -ec
- |
sqlite3 -cmd ".timeout 30000" /data/gitea/gitea.db "
UPDATE \"user\"
SET is_active = 1,
prohibit_login = 0,
updated_unix = unixepoch()
WHERE lower(email) = lower('ab@hexor.cy')
AND (is_active <> 1 OR prohibit_login <> 0);
SELECT printf(
'gitea user watchdog: id=%d login=%s email=%s is_active=%d prohibit_login=%d updated_unix=%d',
id, lower_name, email, is_active, prohibit_login, updated_unix
)
FROM \"user\"
WHERE lower(email) = lower('ab@hexor.cy');
"
volumeMounts:
- name: storage
mountPath: /data