Compare commits
2 commits
1132834b76
...
6a719c2e69
| Author | SHA1 | Date | |
|---|---|---|---|
| 6a719c2e69 | |||
| b1ec7bbca7 |
24 changed files with 200 additions and 25 deletions
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: apps
|
path: apps
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: manifests/cluster
|
path: manifests/cluster
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: manifests/data
|
path: manifests/data
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: manifests/mcp
|
path: manifests/mcp
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: manifests/services
|
path: manifests/services
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
5
charts/opengist/Chart.yaml
Normal file
5
charts/opengist/Chart.yaml
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
apiVersion: v2
|
||||||
|
name: opengist
|
||||||
|
description: OpenGist - self-hosted pastebin/gist service
|
||||||
|
type: application
|
||||||
|
version: 0.1.0
|
||||||
22
charts/opengist/templates/external-secret.yaml
Normal file
22
charts/opengist/templates/external-secret.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: external-secrets.io/v1
|
||||||
|
kind: ExternalSecret
|
||||||
|
metadata:
|
||||||
|
name: opengist-secrets
|
||||||
|
namespace: opengist
|
||||||
|
annotations:
|
||||||
|
argocd.argoproj.io/sync-wave: "-1"
|
||||||
|
spec:
|
||||||
|
refreshInterval: 1h
|
||||||
|
secretStoreRef:
|
||||||
|
name: aws-secrets-manager
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
target:
|
||||||
|
name: opengist-secrets
|
||||||
|
template:
|
||||||
|
data:
|
||||||
|
OG_DB_URI: "postgres://postgres:{{ `{{ .postgres_password }}` }}@postgres.postgres.svc.cluster.local:5432/opengist"
|
||||||
|
data:
|
||||||
|
- secretKey: postgres_password
|
||||||
|
remoteRef:
|
||||||
|
key: dumpnet
|
||||||
|
property: postgres.password
|
||||||
4
charts/opengist/templates/namespace.yaml
Normal file
4
charts/opengist/templates/namespace.yaml
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: opengist
|
||||||
90
charts/opengist/templates/opengist.yaml
Normal file
90
charts/opengist/templates/opengist.yaml
Normal file
|
|
@ -0,0 +1,90 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: opengist
|
||||||
|
namespace: opengist
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: opengist
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: opengist
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: opengist
|
||||||
|
image: "ghcr.io/thomiceli/opengist:1"
|
||||||
|
env:
|
||||||
|
- name: OG_GIT_DEFAULT_BRANCH
|
||||||
|
value: "main"
|
||||||
|
- name: OG_EXTERNAL_URL
|
||||||
|
value: "https://{{ .Values.gistSubdomain }}.{{ .Values.gistDomain }}"
|
||||||
|
envFrom:
|
||||||
|
- secretRef:
|
||||||
|
name: opengist-secrets
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 6157
|
||||||
|
- name: ssh
|
||||||
|
containerPort: 2222
|
||||||
|
volumeMounts:
|
||||||
|
- name: data
|
||||||
|
mountPath: /opengist
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /healthcheck
|
||||||
|
port: 6157
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /healthcheck
|
||||||
|
port: 6157
|
||||||
|
initialDelaySeconds: 15
|
||||||
|
volumes:
|
||||||
|
- name: data
|
||||||
|
hostPath:
|
||||||
|
path: /var/local/appdata/opengist
|
||||||
|
type: DirectoryOrCreate
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: opengist
|
||||||
|
namespace: opengist
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: opengist
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 80
|
||||||
|
targetPort: 6157
|
||||||
|
- name: ssh
|
||||||
|
port: 2222
|
||||||
|
targetPort: 2222
|
||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: opengist
|
||||||
|
namespace: opengist
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-prod
|
||||||
|
spec:
|
||||||
|
ingressClassName: nginx
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- "{{ .Values.gistSubdomain }}.{{ .Values.gistDomain }}"
|
||||||
|
secretName: opengist-tls
|
||||||
|
rules:
|
||||||
|
- host: "{{ .Values.gistSubdomain }}.{{ .Values.gistDomain }}"
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: opengist
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
6
charts/opengist/values.yaml
Normal file
6
charts/opengist/values.yaml
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
domain: dumpnet.chat
|
||||||
|
gistDomain: keane.sh
|
||||||
|
gistSubdomain: gist
|
||||||
|
registry:
|
||||||
|
host: forge.keane.sh
|
||||||
|
user: ian
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
- repoURL: https://argoproj.github.io/argo-helm
|
- repoURL: https://argoproj.github.io/argo-helm
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
- repoURL: https://charts.jetstack.io
|
- repoURL: https://charts.jetstack.io
|
||||||
|
|
@ -33,10 +33,10 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/cert-manager
|
path: charts/cert-manager
|
||||||
helm:
|
helm:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
- repoURL: https://charts.external-secrets.io
|
- repoURL: https://charts.external-secrets.io
|
||||||
|
|
@ -34,7 +34,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/external-secrets
|
path: charts/external-secrets
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/fluent-bit
|
path: charts/fluent-bit
|
||||||
destination:
|
destination:
|
||||||
|
|
@ -27,7 +27,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
- repoURL: https://fluent.github.io/helm-charts
|
- repoURL: https://fluent.github.io/helm-charts
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/ingress-nginx
|
path: charts/ingress-nginx
|
||||||
destination:
|
destination:
|
||||||
|
|
@ -27,7 +27,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
- repoURL: https://kubernetes.github.io/ingress-nginx
|
- repoURL: https://kubernetes.github.io/ingress-nginx
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
- repoURL: https://pkgs.tailscale.com/helmcharts
|
- repoURL: https://pkgs.tailscale.com/helmcharts
|
||||||
|
|
@ -15,7 +15,7 @@ spec:
|
||||||
helm:
|
helm:
|
||||||
valueFiles:
|
valueFiles:
|
||||||
- $values/charts/tailscale/values.yaml
|
- $values/charts/tailscale/values.yaml
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/tailscale
|
path: charts/tailscale
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/forgejo-mcp
|
path: charts/forgejo-mcp
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/mcp-auth-proxy
|
path: charts/mcp-auth-proxy
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
source:
|
source:
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/kan
|
path: charts/kan
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
|
|
@ -6,13 +6,13 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/mediamtx
|
path: charts/mediamtx
|
||||||
helm:
|
helm:
|
||||||
valueFiles:
|
valueFiles:
|
||||||
- $values/values.yaml
|
- $values/values.yaml
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
33
manifests/services/opengist.yaml
Normal file
33
manifests/services/opengist.yaml
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: opengist
|
||||||
|
namespace: argocd
|
||||||
|
spec:
|
||||||
|
project: default
|
||||||
|
sources:
|
||||||
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
|
targetRevision: HEAD
|
||||||
|
path: charts/opengist
|
||||||
|
helm:
|
||||||
|
valueFiles:
|
||||||
|
- $values/values.yaml
|
||||||
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
|
targetRevision: HEAD
|
||||||
|
ref: values
|
||||||
|
destination:
|
||||||
|
server: https://kubernetes.default.svc
|
||||||
|
namespace: opengist
|
||||||
|
syncPolicy:
|
||||||
|
automated:
|
||||||
|
prune: true
|
||||||
|
selfHeal: true
|
||||||
|
syncOptions:
|
||||||
|
- CreateNamespace=true
|
||||||
|
ignoreDifferences:
|
||||||
|
- group: external-secrets.io
|
||||||
|
kind: ExternalSecret
|
||||||
|
jsonPointers:
|
||||||
|
- /spec/target/template/mergePolicy
|
||||||
|
- /spec/target/template/engineVersion
|
||||||
|
- /spec/target/template/type
|
||||||
|
|
@ -6,13 +6,13 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
sources:
|
sources:
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
path: charts/repertory-api
|
path: charts/repertory-api
|
||||||
helm:
|
helm:
|
||||||
valueFiles:
|
valueFiles:
|
||||||
- $values/values.yaml
|
- $values/values.yaml
|
||||||
- repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
- repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
targetRevision: HEAD
|
targetRevision: HEAD
|
||||||
ref: values
|
ref: values
|
||||||
destination:
|
destination:
|
||||||
|
|
|
||||||
13
terraform/opengist-dns.tf
Normal file
13
terraform/opengist-dns.tf
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
# gist.keane.sh -> OpenGist, running on the same k8s cluster (different
|
||||||
|
# hosted zone than dumpnet.chat, so this is separate from dns_records/dns.tf)
|
||||||
|
data "aws_route53_zone" "keane_sh" {
|
||||||
|
name = "keane.sh"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_route53_record" "opengist" {
|
||||||
|
zone_id = data.aws_route53_zone.keane_sh.zone_id
|
||||||
|
name = "gist.keane.sh"
|
||||||
|
type = "A"
|
||||||
|
ttl = 300
|
||||||
|
records = [aws_eip.controlplane.public_ip]
|
||||||
|
}
|
||||||
|
|
@ -2,11 +2,13 @@
|
||||||
# Override any of these in terraform.tfvars or by forking the repo.
|
# Override any of these in terraform.tfvars or by forking the repo.
|
||||||
# NOTE: repoURL in apps/apps.yaml and manifests/*.yaml must be updated manually —
|
# NOTE: repoURL in apps/apps.yaml and manifests/*.yaml must be updated manually —
|
||||||
# ArgoCD Application spec fields cannot be templated via Helm values.
|
# ArgoCD Application spec fields cannot be templated via Helm values.
|
||||||
|
# (registry.host below is the container image registry, a separate
|
||||||
|
# concern from repoURL / the git hosting itself.)
|
||||||
|
|
||||||
clusterName: dumpnet
|
clusterName: dumpnet
|
||||||
domain: dumpnet.chat
|
domain: dumpnet.chat
|
||||||
publicIp: "32.195.88.32"
|
publicIp: "32.195.88.32"
|
||||||
repoURL: https://forge.keane.sh/ian/dumpnet-argo.git
|
repoURL: https://git.keane.sh/ian/dumpnet-argo.git
|
||||||
certEmail: dumpnetcerts@keane.sh
|
certEmail: dumpnetcerts@keane.sh
|
||||||
awsRegion: us-east-1
|
awsRegion: us-east-1
|
||||||
registry:
|
registry:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue