Daniël Groothuis 61eaea7178
All checks were successful
Validate K8s manifests / validate-manifests (push) Successful in 8s
Validate K8s manifests / scan-secrets (push) Successful in 54s
chore(ntfy): Added basic auth to ntfy
2025-10-23 23:38:57 +02:00
2025-10-23 19:26:39 +02:00

Production status

Kubernetes GitOps with ArgoCD for DGSE Cloud

This repository contains the Kubernetes manifests and configurations for deploying and managing applications on the DGSE Cloud using GitOps with ArgoCD.

Overview

The DGSE Cloud Kubernetes GitOps setup leverages ArgoCD to automate the deployment and synchronization of Kubernetes resources from this Git repository to the DGSE Cloud cluster. This approach ensures that the desired state of the cluster is defined as code and can be version-controlled, audited, and rolled back if necessary.

Repository Structure

The repository is organized as follows:

Clusters

  • Artemis Cluster (Primary DGSE Cloud cluster)

Core Applications

  • ArgoCD: The GitOps operator for managing Kubernetes applications.
  • Cert-Manager: For managing TLS certificates.
  • Traefik: The ingress controller for routing external traffic.
  • Gitea: The self-hosted Git service for version control.
  • Gitea Runners: The runners for executing CI/CD pipelines.
  • Uptime Kuma: The uptime monitoring tool for tracking application availability.
  • Vault: The secrets management tool for securely storing sensitive data.
  • External Secrets: The operator for managing secrets from external sources.
  • CNPG: The Cloud Native PostgreSQL operator for managing PostgreSQL databases.
  • Mailu: The mail server for sending and receiving emails.
  • PocketID: The identity provider for managing user authentication and authorization.

File Locations

/clusters/artemis/apps Hosts all ArgoCD applications and projects for the Artemis cluster.

/manifests/artemis Hosts all Kubernetes manifests for the Artemis cluster.

/clusters/artemis/cluster.yaml General cluster configuration for the Artemis cluster.

Adding a new Application

To add a new application to any of the clusters, run the following commands:

chmod +x ./init-app.sh
./init-app.sh

This will prompt you to enter the name of the application and the cluster you want to add it to. The script will then create the necessary files and directories for the application.

It'll add a .placeholder file where the manifests will live.

Description
GitOps for DGSE Kubernetes platform
Readme 882 KiB
Languages
Shell 100%