29 Commits

Author SHA1 Message Date
Renovate Bot
f729a812df chore(deps): update helm release mailu to v2.6.0 2025-11-06 00:02:47 +00:00
Daniël Groothuis
0eda7b4ad2 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:56:30 +01:00
Daniël Groothuis
e3587553d7 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:50:48 +01:00
Daniël Groothuis
4c5dd7ae3d chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:43:31 +01:00
Daniël Groothuis
ee3048f478 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:37:49 +01:00
Daniël Groothuis
179eb7a6dc chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:37:01 +01:00
Daniël Groothuis
b1103e3136 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:36:25 +01:00
Daniël Groothuis
2cedf7f2b9 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:34:21 +01:00
Daniël Groothuis
c1a59cb710 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:30:04 +01:00
Daniël Groothuis
845ba4ead0 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:28:46 +01:00
Daniël Groothuis
001138f965 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:28:03 +01:00
Daniël Groothuis
5391a06e24 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:24:09 +01:00
Daniël Groothuis
e7b62d426c chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:17:08 +01:00
Daniël Groothuis
a64bdf2ed0 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:14:17 +01:00
Daniël Groothuis
4f5acfc9a6 chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:13:31 +01:00
Daniël Groothuis
c4754ea41a chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 21:00:46 +01:00
Daniël Groothuis
134581bcce chore(backstage): Added SA for backstage to ArgoCD 2025-11-05 20:54:00 +01:00
Daniël Groothuis
3f3d99e8d0 chore(backstage): Updated catalogs 2025-11-05 20:35:40 +01:00
Daniël Groothuis
5e57066ccb chore(backstage): Updated catalogs 2025-11-05 20:34:39 +01:00
Daniël Groothuis
3e13ddb1cb feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 16:09:37 +01:00
Daniël Groothuis
16fcec670e feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 15:55:08 +01:00
Daniël Groothuis
c16d485a54 feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 15:52:37 +01:00
Daniël Groothuis
cf69895b68 feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 15:44:31 +01:00
Daniël Groothuis
e85a70957f feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 15:34:47 +01:00
Daniël Groothuis
82e626be39 feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 15:29:50 +01:00
Daniël Groothuis
aa4425cf19 feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 15:26:49 +01:00
Daniël Groothuis
06b192f780 feat(nextcloud): Added first draft for nextcloud deployment 2025-11-05 15:19:14 +01:00
7c2a40f2ac Merge pull request 'chore(deps): update dependency argoproj/argo-cd to v3.2.0' (#26) from renovate/argoproj-argo-cd-3.x into main
Reviewed-on: #26
2025-11-05 08:08:38 +00:00
Renovate Bot
c3068f9693 chore(deps): update dependency argoproj/argo-cd to v3.2.0 2025-11-05 00:02:07 +00:00
18 changed files with 235 additions and 51 deletions

26
catalog-info.yaml Normal file
View File

@@ -0,0 +1,26 @@
---
apiVersion: backstage.io/v1alpha1
kind: Domain
metadata:
name: dgse-cloud
description: "Infrastructure for DGSE Cloud services."
spec:
owner: dgse-cloud
---
apiVersion: backstage.io/v1alpha1
kind: Location
metadata:
name: artemis-cluster
description: A collection of all entities running on the Artemis cluster
spec:
targets:
- ./clusters/artemis/catalog.yaml
- ./clusters/artemis/apps/argocd/catalog.yaml
- ./clusters/artemis/apps/cnpg/catalog.yaml
- ./clusters/artemis/apps/digital-garden/catalog.yaml
- ./clusters/artemis/apps/external-secrets/catalog.yaml
- ./clusters/artemis/apps/gitea/catalog.yaml
- ./clusters/artemis/apps/gitea-runners/catalog.yaml
- ./clusters/artemis/apps/immich/catalog.yaml
- ./clusters/artemis/apps/mailu/catalog.yaml
- ./clusters/artemis/apps/nextcloud/catalog.yaml

View File

@@ -0,0 +1,18 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: argocd
description: "ArgoCD is a declarative, GitOps continuous delivery tool for Kubernetes."
links:
- url: https://cd.dgse.cloud
title: Dashboard
icon: dashboard
annotations:
argocd/app-name: argocd
argocd/app-namespace: argocd
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster

View File

@@ -0,0 +1,14 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: cnpg
description: "CloudNativePG is a Kubernetes operator that manages PostgreSQL databases in a cloud-native way."
annotations:
argocd/app-name: cnpg
argocd/app-namespace: cnpg-system
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster

View File

@@ -0,0 +1,18 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: digital-garden
description: "A collection of notes, essays, and other writing that is published on the web."
links:
- url: https://groothuis.io
title: Public Website
icon: web
annotations:
argocd/app-name: digital-garden
argocd/app-namespace: digital-garden
spec:
type: website
lifecycle: production
owner: owners
system: artemis-cluster

View File

@@ -0,0 +1,14 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: external-secrets
description: "Vault Secrets Operator to sync secrets from Vault to Kubernetes"
annotations:
argocd/app-name: external-secrets
argocd/app-namespace: external-secrets
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster

View File

@@ -0,0 +1,16 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: gitea-runners
description: "Gitea Action Runners"
annotations:
argocd/app-name: gitea-runners
argocd/app-namespace: gitea-runners
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster
dependencyOf:
- component:gitea

View File

@@ -0,0 +1,20 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: gitea
description: "Self-hosted Git Server"
links:
- url: https://git.dgse.cloud
title: Git Server
icon: web
annotations:
argocd/app-name: gitea
argocd/app-namespace: gitea
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster
dependsOn:
- Component:gitea-runners

View File

@@ -0,0 +1,18 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: immich
description: "Self-hosted photo and video backup solution directly from your mobile phone."
links:
- url: https://photos.dgse.cloud
title: Git Server
icon: web
annotations:
argocd/app-name: immich
argocd/app-namespace: immich
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster

View File

@@ -1,17 +0,0 @@
---
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
name: kener
spec:
description: Monitoring tool
sourceRepos:
- '*'
sourceNamespaces:
- '*'
destinations:
- namespace: 'kener'
server: '*'
clusterResourceWhitelist:
- group: '*'
kind: '*'

View File

@@ -1,24 +0,0 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: kener
namespace: kener
labels:
platform.dgse.cloud/cluster: artemis
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: kener
source:
repoURL: 'https://git.dgse.cloud/DGSE/kubernetes.git'
path: manifests/artemis/kener
targetRevision: main
destination:
namespace: kener
name: in-cluster
syncPolicy:
syncOptions:
- CreateNamespace=true
automated:
prune: true
selfHeal: true

View File

@@ -1,7 +0,0 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- app-project.yaml
- application.yaml

View File

@@ -0,0 +1,18 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: mailu
description: "Self-hosted mail server"
links:
- url: https://mail.dgse.cloud
title: Mail Server
icon: web
annotations:
argocd/app-name: mailu
argocd/app-namespace: mailu
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster

View File

@@ -0,0 +1,19 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: nextcloud
description: "Self-hosted photo and video backup solution directly from your mobile phone."
links:
- url: https://nextcloud.dgse.cloud
title: Git Server
icon: web
annotations:
argocd/app-name: nextcloud
argocd/app-namespace: nextcloud
backstage.io/techdocs-ref: value
spec:
type: service
lifecycle: production
owner: owners
system: artemis-cluster

View File

@@ -0,0 +1,9 @@
---
apiVersion: backstage.io/v1alpha1
kind: System
metadata:
name: artemis-cluster
description: "The Artemis cluster is a Kubernetes cluster hosting all infra for DGSE Cloud."
spec:
owner: owners
domain: dgse-cloud

View File

@@ -0,0 +1,13 @@
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: backstage-argocd-server-access
subjects:
- kind: ServiceAccount
name: backstage-argocd
namespace: argocd
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: argocd-server

View File

@@ -0,0 +1,6 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: backstage-argocd
namespace: argocd

View File

@@ -5,9 +5,11 @@ metadata:
name: argocd
resources:
- github.com/argoproj/argo-cd/manifests/cluster-install?ref=v3.1.9
- github.com/argoproj/argo-cd/manifests/cluster-install?ref=v3.2.0
- ingressRoute.yaml
- certificate.yaml
- backstage-sa.yaml
- backstage-rbac.yaml
patches:
- target:
@@ -45,7 +47,8 @@ patches:
metadata:
name: argocd-cm
data:
admin.enabled: "false"
accounts.admin: "apiKey, login"
admin.enabled: "true"
kustomize.buildOptions: --enable-helm
url: https://cd.dgse.cloud
oidc.config: |
@@ -118,3 +121,23 @@ patches:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: argocd-server
# Map Backstage SA to Argo CD role:admin (full Argo CD permissions)
- target:
kind: ConfigMap
name: argocd-rbac-cm
patch: |-
apiVersion: v1
kind: ConfigMap
metadata:
name: argocd-rbac-cm
namespace: argocd
data:
policy.csv: |
g, argocd_admins, role:admin
p, argocd_users, applications, list, *, allow
p, argocd_users, applications, sync, *, allow
p, argocd_users, applications, refresh, *, allow
p, argocd_users, applications, get, *, allow
g, system:serviceaccount:argocd:backstage-argocd, role:admin
p, system:serviceaccount:argocd:backstage-argocd, applications, *, */*, allow

View File

@@ -10,7 +10,7 @@ resources:
helmCharts:
- name: mailu
repo: https://mailu.github.io/helm-charts/
version: 2.1.2
version: 2.6.0
releaseName: mailu
namespace: mailu
valuesFile: values.yaml