big architectural shift to use gitea for most deployments
This commit is contained in:
parent
504535c907
commit
fe60755d53
README.md
apps/gitea
infrastructure
argocd-imageupdate
argocd
argo-apps.application.yamlbootstrap-repo.sealedsecret.yamlknown-hosts.configmap.yamlkustomization.yaml
gitea
kluster-deployments
argocd-imageupdate
backup
backup.application.yamlcommon.application.yamlpostgres.backup.application.yamlprune.application.yaml
gitea-repo.sealedsecret.yamlgitea
homeassistant
immich
journal
kustomization.yamlnfs
ntfy
renovate
rss
traefik
whoami
@ -2,11 +2,6 @@
|
||||
|
||||
|
||||
|
||||
### Key to authorize against `git.kluster.moll.re` (ssh)
|
||||
```
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE+4SlRIV9wOKYZbBrPuW18K6GGjnDEviCYQvGQuKOm0 remy@ArchSpectre
|
||||
```
|
||||
|
||||
### Initial setup
|
||||
On a running (and sealed-secrets installed) k3s instance run:
|
||||
```
|
||||
|
@ -1,497 +0,0 @@
|
||||
# Default values for gitea.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
## @section Global
|
||||
#
|
||||
## @param global.imageRegistry global image registry override
|
||||
## @param global.imagePullSecrets global image pull secrets override; can be extended by `imagePullSecrets`
|
||||
## @param global.storageClass global storage class override
|
||||
## @param global.hostAliases global hostAliases which will be added to the pod's hosts files
|
||||
global:
|
||||
imageRegistry: ""
|
||||
## E.g.
|
||||
## imagePullSecrets:
|
||||
## - myRegistryKeySecretName
|
||||
##
|
||||
imagePullSecrets: []
|
||||
storageClass: ""
|
||||
hostAliases: []
|
||||
# - ip: 192.168.137.2
|
||||
# hostnames:
|
||||
# - example.com
|
||||
|
||||
## @param replicaCount number of replicas for the statefulset
|
||||
replicaCount: 1
|
||||
|
||||
## @param clusterDomain cluster domain
|
||||
clusterDomain: cluster.local
|
||||
|
||||
## @section Image
|
||||
## @param image.registry image registry, e.g. gcr.io,docker.io
|
||||
## @param image.repository Image to start for this pod
|
||||
## @param image.tag Visit: [Image tag](https://hub.docker.com/r/gitea/gitea/tags?page=1&ordering=last_updated). Defaults to `appVersion` within Chart.yaml.
|
||||
## @param image.pullPolicy Image pull policy
|
||||
## @param image.rootless Wether or not to pull the rootless version of Gitea, only works on Gitea 1.14.x or higher
|
||||
image:
|
||||
registry: ""
|
||||
repository: gitea/gitea
|
||||
# Overrides the image tag whose default is the chart appVersion.
|
||||
tag: ""
|
||||
pullPolicy: Always
|
||||
rootless: false # only possible when running 1.14 or later
|
||||
|
||||
## @param imagePullSecrets Secret to use for pulling the image
|
||||
imagePullSecrets: []
|
||||
|
||||
## @section Security
|
||||
# Security context is only usable with rootless image due to image design
|
||||
## @param podSecurityContext.fsGroup Set the shared file system group for all containers in the pod.
|
||||
podSecurityContext:
|
||||
fsGroup: 1000
|
||||
|
||||
## @param containerSecurityContext Security context
|
||||
containerSecurityContext: {}
|
||||
# allowPrivilegeEscalation: false
|
||||
# capabilities:
|
||||
# drop:
|
||||
# - ALL
|
||||
# # Add the SYS_CHROOT capability for root and rootless images if you intend to
|
||||
# # run pods on nodes that use the container runtime cri-o. Otherwise, you will
|
||||
# # get an error message from the SSH server that it is not possible to read from
|
||||
# # the repository.
|
||||
# # https://gitea.com/gitea/helm-chart/issues/161
|
||||
# add:
|
||||
# - SYS_CHROOT
|
||||
# privileged: false
|
||||
# readOnlyRootFilesystem: true
|
||||
# runAsGroup: 1000
|
||||
# runAsNonRoot: true
|
||||
# runAsUser: 1000
|
||||
|
||||
## @deprecated The securityContext variable has been split two:
|
||||
## - containerSecurityContext
|
||||
## - podSecurityContext.
|
||||
## @param securityContext Run init and Gitea containers as a specific securityContext
|
||||
securityContext: {}
|
||||
|
||||
## @section Service
|
||||
service:
|
||||
## @param service.http.type Kubernetes service type for web traffic
|
||||
## @param service.http.port Port number for web traffic
|
||||
## @param service.http.clusterIP ClusterIP setting for http autosetup for statefulset is None
|
||||
## @param service.http.loadBalancerIP LoadBalancer IP setting
|
||||
## @param service.http.nodePort NodePort for http service
|
||||
## @param service.http.externalTrafficPolicy If `service.http.type` is `NodePort` or `LoadBalancer`, set this to `Local` to enable source IP preservation
|
||||
## @param service.http.externalIPs External IPs for service
|
||||
## @param service.http.ipFamilyPolicy HTTP service dual-stack policy
|
||||
## @param service.http.ipFamilies HTTP service dual-stack familiy selection,for dual-stack parameters see official kubernetes [dual-stack concept documentation](https://kubernetes.io/docs/concepts/services-networking/dual-stack/).
|
||||
## @param service.http.loadBalancerSourceRanges Source range filter for http loadbalancer
|
||||
## @param service.http.annotations HTTP service annotations
|
||||
http:
|
||||
type: ClusterIP
|
||||
port: 3000
|
||||
clusterIP: None
|
||||
nodePort:
|
||||
externalTrafficPolicy:
|
||||
externalIPs:
|
||||
ipFamilyPolicy:
|
||||
ipFamilies:
|
||||
loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
## @param service.ssh.type Kubernetes service type for ssh traffic
|
||||
## @param service.ssh.port Port number for ssh traffic
|
||||
## @param service.ssh.clusterIP ClusterIP setting for ssh autosetup for statefulset is None
|
||||
## @param service.ssh.loadBalancerIP LoadBalancer IP setting
|
||||
## @param service.ssh.nodePort NodePort for ssh service
|
||||
## @param service.ssh.externalTrafficPolicy If `service.ssh.type` is `NodePort` or `LoadBalancer`, set this to `Local` to enable source IP preservation
|
||||
## @param service.ssh.externalIPs External IPs for service
|
||||
## @param service.ssh.ipFamilyPolicy SSH service dual-stack policy
|
||||
## @param service.ssh.ipFamilies SSH service dual-stack familiy selection,for dual-stack parameters see official kubernetes [dual-stack concept documentation](https://kubernetes.io/docs/concepts/services-networking/dual-stack/).
|
||||
## @param service.ssh.hostPort HostPort for ssh service
|
||||
## @param service.ssh.loadBalancerSourceRanges Source range filter for ssh loadbalancer
|
||||
## @param service.ssh.annotations SSH service annotations
|
||||
ssh:
|
||||
type: LoadBalancer
|
||||
port: 2222
|
||||
loadBalancerIP: 192.168.3.3
|
||||
nodePort:
|
||||
externalTrafficPolicy:
|
||||
externalIPs:
|
||||
ipFamilyPolicy:
|
||||
ipFamilies:
|
||||
hostPort:
|
||||
loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
|
||||
## @section Ingress
|
||||
## @param ingress.enabled Enable ingress
|
||||
## @param ingress.className Ingress class name
|
||||
## @param ingress.annotations Ingress annotations
|
||||
## @param ingress.hosts[0].host Default Ingress host
|
||||
## @param ingress.hosts[0].paths[0].path Default Ingress path
|
||||
## @param ingress.hosts[0].paths[0].pathType Ingress path type
|
||||
## @param ingress.tls Ingress tls settings
|
||||
## @extra ingress.apiVersion Specify APIVersion of ingress object. Mostly would only be used for argocd.
|
||||
ingress:
|
||||
enabled: false
|
||||
# className: nginx
|
||||
className:
|
||||
annotations:
|
||||
{}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
hosts:
|
||||
- host: git.example.com
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - git.example.com
|
||||
# Mostly for argocd or any other CI that uses `helm template | kubectl apply` or similar
|
||||
# If helm doesn't correctly detect your ingress API version you can set it here.
|
||||
# apiVersion: networking.k8s.io/v1
|
||||
|
||||
## @section StatefulSet
|
||||
#
|
||||
## @param resources Kubernetes resources
|
||||
resources:
|
||||
{}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
## Use an alternate scheduler, e.g. "stork".
|
||||
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
|
||||
##
|
||||
## @param schedulerName Use an alternate scheduler, e.g. "stork"
|
||||
schedulerName: ""
|
||||
|
||||
## @param nodeSelector NodeSelector for the statefulset
|
||||
nodeSelector: {}
|
||||
|
||||
## @param tolerations Tolerations for the statefulset
|
||||
tolerations: []
|
||||
|
||||
## @param affinity Affinity for the statefulset
|
||||
affinity: {}
|
||||
|
||||
## @param dnsConfig dnsConfig for the statefulset
|
||||
dnsConfig: {}
|
||||
|
||||
## @param priorityClassName priorityClassName for the statefulset
|
||||
priorityClassName: ""
|
||||
|
||||
## @param statefulset.env Additional environment variables to pass to containers
|
||||
## @param statefulset.terminationGracePeriodSeconds How long to wait until forcefully kill the pod
|
||||
## @param statefulset.labels Labels for the statefulset
|
||||
## @param statefulset.annotations Annotations for the Gitea StatefulSet to be created
|
||||
statefulset:
|
||||
env:
|
||||
[]
|
||||
# - name: VARIABLE
|
||||
# value: my-value
|
||||
terminationGracePeriodSeconds: 60
|
||||
labels: {}
|
||||
annotations: {}
|
||||
|
||||
## @section Persistence
|
||||
#
|
||||
## @param persistence.enabled Enable persistent storage
|
||||
## @param persistence.existingClaim Use an existing claim to store repository information
|
||||
## @param persistence.size Size for persistence to store repo information
|
||||
## @param persistence.accessModes AccessMode for persistence
|
||||
## @param persistence.labels Labels for the persistence volume claim to be created
|
||||
## @param persistence.annotations Annotations for the persistence volume claim to be created
|
||||
## @param persistence.storageClass Name of the storage class to use
|
||||
## @param persistence.subPath Subdirectory of the volume to mount at
|
||||
persistence:
|
||||
enabled: true
|
||||
existingClaim: gitea-data-nfs
|
||||
|
||||
size: 10Gi
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
labels: {}
|
||||
annotations: {}
|
||||
storageClass:
|
||||
subPath:
|
||||
|
||||
## @param extraVolumes Additional volumes to mount to the Gitea statefulset
|
||||
extraVolumes: []
|
||||
# - name: postgres-ssl-vol
|
||||
# secret:
|
||||
# secretName: gitea-postgres-ssl
|
||||
|
||||
## @param extraContainerVolumeMounts Mounts that are only mapped into the Gitea runtime/main container, to e.g. override custom templates.
|
||||
extraContainerVolumeMounts: []
|
||||
|
||||
## @param extraInitVolumeMounts Mounts that are only mapped into the init-containers. Can be used for additional preconfiguration.
|
||||
extraInitVolumeMounts: []
|
||||
|
||||
## @deprecated The extraVolumeMounts variable has been split two:
|
||||
## - extraContainerVolumeMounts
|
||||
## - extraInitVolumeMounts
|
||||
## As an example, can be used to mount a client cert when connecting to an external Postgres server.
|
||||
## @param extraVolumeMounts **DEPRECATED** Additional volume mounts for init containers and the Gitea main container
|
||||
extraVolumeMounts: []
|
||||
# - name: postgres-ssl-vol
|
||||
# readOnly: true
|
||||
# mountPath: "/pg-ssl"
|
||||
|
||||
## @section Init
|
||||
## @param initPreScript Bash shell script copied verbatim to the start of the init-container.
|
||||
initPreScript: ""
|
||||
#
|
||||
# initPreScript: |
|
||||
# mkdir -p /data/git/.postgresql
|
||||
# cp /pg-ssl/* /data/git/.postgresql/
|
||||
# chown -R git:git /data/git/.postgresql/
|
||||
# chmod 400 /data/git/.postgresql/postgresql.key
|
||||
|
||||
## @param initContainers.resources.limits initContainers.limits Kubernetes resource limits for init containers
|
||||
## @param initContainers.resources.requests.cpu initContainers.requests.cpu Kubernetes cpu resource limits for init containers
|
||||
## @param initContainers.resources.requests.memory initContainers.requests.memory Kubernetes memory resource limits for init containers
|
||||
initContainers:
|
||||
resources:
|
||||
limits: {}
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 128Mi
|
||||
|
||||
# Configure commit/action signing prerequisites
|
||||
## @section Signing
|
||||
#
|
||||
## @param signing.enabled Enable commit/action signing
|
||||
## @param signing.gpgHome GPG home directory
|
||||
## @param signing.privateKey Inline private gpg key for signed Gitea actions
|
||||
## @param signing.existingSecret Use an existing secret to store the value of `signing.privateKey`
|
||||
signing:
|
||||
enabled: false
|
||||
gpgHome: /data/git/.gnupg
|
||||
privateKey: ""
|
||||
# privateKey: |-
|
||||
# -----BEGIN PGP PRIVATE KEY BLOCK-----
|
||||
# ...
|
||||
# -----END PGP PRIVATE KEY BLOCK-----
|
||||
existingSecret: ""
|
||||
|
||||
## @section Gitea
|
||||
#
|
||||
gitea:
|
||||
## @param gitea.admin.username Username for the Gitea admin user
|
||||
## @param gitea.admin.existingSecret Use an existing secret to store admin user credentials
|
||||
## @param gitea.admin.password Password for the Gitea admin user
|
||||
## @param gitea.admin.email Email for the Gitea admin user
|
||||
admin:
|
||||
# existingSecret: gitea-admin-secret
|
||||
existingSecret:
|
||||
username: gitea_admin
|
||||
password: r8sA8CPHD9!bt6d
|
||||
email: "gitea@local.domain"
|
||||
|
||||
## @param gitea.metrics.enabled Enable Gitea metrics
|
||||
## @param gitea.metrics.serviceMonitor.enabled Enable Gitea metrics service monitor
|
||||
metrics:
|
||||
enabled: false
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
# additionalLabels:
|
||||
# prometheus-release: prom1
|
||||
|
||||
## @param gitea.ldap LDAP configuration
|
||||
ldap:
|
||||
[]
|
||||
# - name: "LDAP 1"
|
||||
# existingSecret:
|
||||
# securityProtocol:
|
||||
# host:
|
||||
# port:
|
||||
# userSearchBase:
|
||||
# userFilter:
|
||||
# adminFilter:
|
||||
# emailAttribute:
|
||||
# bindDn:
|
||||
# bindPassword:
|
||||
# usernameAttribute:
|
||||
# publicSSHKeyAttribute:
|
||||
|
||||
# Either specify inline `key` and `secret` or refer to them via `existingSecret`
|
||||
## @param gitea.oauth OAuth configuration
|
||||
oauth:
|
||||
[]
|
||||
# - name: 'OAuth 1'
|
||||
# provider:
|
||||
# key:
|
||||
# secret:
|
||||
# existingSecret:
|
||||
# autoDiscoverUrl:
|
||||
# useCustomUrls:
|
||||
# customAuthUrl:
|
||||
# customTokenUrl:
|
||||
# customProfileUrl:
|
||||
# customEmailUrl:
|
||||
|
||||
## @param gitea.config Configuration for the Gitea server,ref: [config-cheat-sheet](https://docs.gitea.io/en-us/config-cheat-sheet/)
|
||||
config:
|
||||
APP_NAME: "Remy's personal git hosting"
|
||||
server:
|
||||
DOMAIN: git.kluster.moll.re
|
||||
ROOT_URL: https://git.kluster.moll.re
|
||||
SSH_LISTEN_PORT: 2222
|
||||
actions:
|
||||
ENABLED: true
|
||||
|
||||
|
||||
## @param gitea.additionalConfigSources Additional configuration from secret or configmap
|
||||
additionalConfigSources: []
|
||||
# - secret:
|
||||
# secretName: gitea-app-ini-oauth
|
||||
# - configMap:
|
||||
# name: gitea-app-ini-plaintext
|
||||
|
||||
## @param gitea.additionalConfigFromEnvs Additional configuration sources from environment variables
|
||||
additionalConfigFromEnvs: []
|
||||
|
||||
## @param gitea.podAnnotations Annotations for the Gitea pod
|
||||
podAnnotations: {}
|
||||
|
||||
## @param gitea.ssh.logLevel Configure OpenSSH's log level. Only available for root-based Gitea image.
|
||||
ssh:
|
||||
logLevel: "INFO"
|
||||
|
||||
## @section LivenessProbe
|
||||
#
|
||||
## @param gitea.livenessProbe.enabled Enable liveness probe
|
||||
## @param gitea.livenessProbe.tcpSocket.port Port to probe for liveness
|
||||
## @param gitea.livenessProbe.initialDelaySeconds Initial delay before liveness probe is initiated
|
||||
## @param gitea.livenessProbe.timeoutSeconds Timeout for liveness probe
|
||||
## @param gitea.livenessProbe.periodSeconds Period for liveness probe
|
||||
## @param gitea.livenessProbe.successThreshold Success threshold for liveness probe
|
||||
## @param gitea.livenessProbe.failureThreshold Failure threshold for liveness probe
|
||||
# Modify the liveness probe for your needs or completely disable it by commenting out.
|
||||
livenessProbe:
|
||||
enabled: true
|
||||
tcpSocket:
|
||||
port: http
|
||||
initialDelaySeconds: 200
|
||||
timeoutSeconds: 1
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
failureThreshold: 10
|
||||
|
||||
## @section ReadinessProbe
|
||||
#
|
||||
## @param gitea.readinessProbe.enabled Enable readiness probe
|
||||
## @param gitea.readinessProbe.tcpSocket.port Port to probe for readiness
|
||||
## @param gitea.readinessProbe.initialDelaySeconds Initial delay before readiness probe is initiated
|
||||
## @param gitea.readinessProbe.timeoutSeconds Timeout for readiness probe
|
||||
## @param gitea.readinessProbe.periodSeconds Period for readiness probe
|
||||
## @param gitea.readinessProbe.successThreshold Success threshold for readiness probe
|
||||
## @param gitea.readinessProbe.failureThreshold Failure threshold for readiness probe
|
||||
# Modify the readiness probe for your needs or completely disable it by commenting out.
|
||||
readinessProbe:
|
||||
enabled: true
|
||||
tcpSocket:
|
||||
port: http
|
||||
initialDelaySeconds: 5
|
||||
timeoutSeconds: 1
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
failureThreshold: 3
|
||||
|
||||
# # Uncomment the startup probe to enable and modify it for your needs.
|
||||
## @section StartupProbe
|
||||
#
|
||||
## @param gitea.startupProbe.enabled Enable startup probe
|
||||
## @param gitea.startupProbe.tcpSocket.port Port to probe for startup
|
||||
## @param gitea.startupProbe.initialDelaySeconds Initial delay before startup probe is initiated
|
||||
## @param gitea.startupProbe.timeoutSeconds Timeout for startup probe
|
||||
## @param gitea.startupProbe.periodSeconds Period for startup probe
|
||||
## @param gitea.startupProbe.successThreshold Success threshold for startup probe
|
||||
## @param gitea.startupProbe.failureThreshold Failure threshold for startup probe
|
||||
startupProbe:
|
||||
enabled: false
|
||||
tcpSocket:
|
||||
port: http
|
||||
initialDelaySeconds: 60
|
||||
timeoutSeconds: 1
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
failureThreshold: 10
|
||||
|
||||
## @section Memcached
|
||||
#
|
||||
## @param memcached.enabled Memcached is loaded as a dependency from [Bitnami](https://github.com/bitnami/charts/tree/master/bitnami/memcached) if enabled in the values. Complete Configuration can be taken from their website.
|
||||
## ref: https://hub.docker.com/r/bitnami/memcached/tags/
|
||||
## @param memcached.service.ports.memcached Port for Memcached
|
||||
memcached:
|
||||
enabled: true
|
||||
# image:
|
||||
# registry: docker.io
|
||||
# repository: bitnami/memcached
|
||||
# tag: ""
|
||||
# digest: ""
|
||||
# pullPolicy: IfNotPresent
|
||||
# pullSecrets: []
|
||||
service:
|
||||
ports:
|
||||
memcached: 11211
|
||||
|
||||
## @section PostgreSQL
|
||||
#
|
||||
## @param postgresql.enabled Enable PostgreSQL
|
||||
## @param postgresql.global.postgresql.auth.password Password for the `gitea` user (overrides `auth.password`)
|
||||
## @param postgresql.global.postgresql.auth.database Name for a custom database to create (overrides `auth.database`)
|
||||
## @param postgresql.global.postgresql.auth.username Name for a custom user to create (overrides `auth.username`)
|
||||
## @param postgresql.global.postgresql.service.ports.postgresql PostgreSQL service port (overrides `service.ports.postgresql`)
|
||||
## @param postgresql.primary.persistence.size PVC Storage Request for PostgreSQL volume
|
||||
postgresql:
|
||||
enabled: true
|
||||
image:
|
||||
tag: 11
|
||||
# diagnosticMode:
|
||||
# enabled: true
|
||||
# containerSecurityContext:
|
||||
# runAsUser: 0
|
||||
global:
|
||||
postgresql:
|
||||
auth:
|
||||
password: gitea
|
||||
database: gitea
|
||||
username: gitea
|
||||
service:
|
||||
ports:
|
||||
postgresql: 5432
|
||||
primary:
|
||||
persistence:
|
||||
size: 10Gi
|
||||
existingClaim: gitea-postgresql-data-nfs
|
||||
mountPath: /bitnami/postgresql/data
|
||||
|
||||
|
||||
# By default, removed or moved settings that still remain in a user defined values.yaml will cause Helm to fail running the install/update.
|
||||
# Set it to false to skip this basic validation check.
|
||||
## @section Advanced
|
||||
## @param checkDeprecation Set it to false to skip this basic validation check.
|
||||
## @param test.enabled Set it to false to disable test-connection Pod.
|
||||
## @param test.image.name Image name for the wget container used in the test-connection Pod.
|
||||
## @param test.image.tag Image tag for the wget container used in the test-connection Pod.
|
||||
checkDeprecation: true
|
||||
test:
|
||||
enabled: true
|
||||
image:
|
||||
name: busybox
|
||||
tag: latest
|
||||
|
||||
## @param extraDeploy Array of extra objects to deploy with the release
|
||||
##
|
||||
extraDeploy: []
|
@ -1,12 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-image-updater-config
|
||||
|
||||
data:
|
||||
git.commit-message-template: |
|
||||
[CI SKIP] automatic update of {{ .AppName }}
|
||||
|
||||
{{ range .AppChanges -}}
|
||||
updates image {{ .Image }} tag '{{ .OldTag }}' to '{{ .NewTag }}'
|
||||
{{ end -}}
|
@ -1,13 +0,0 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
namespace: argocd
|
||||
|
||||
|
||||
resources:
|
||||
# - https://github.com/argoproj-labs/argocd-image-updater/manifests/base
|
||||
- https://raw.githubusercontent.com/argoproj-labs/argocd-image-updater/stable/manifests/install.yaml
|
||||
|
||||
patchesStrategicMerge:
|
||||
- argocd-image-updater-config.configmap.yaml
|
||||
|
@ -6,8 +6,8 @@ metadata:
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
targetRevision: HEAD
|
||||
repoURL: ssh://git@github.com:moll-re/bootstrap-k3s-infra.git
|
||||
targetRevision: main
|
||||
path: kluster-deployments
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
@ -15,4 +15,4 @@ spec:
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
# selfHeal: true
|
||||
# selfHeal: true
|
||||
|
26
infrastructure/argocd/bootstrap-repo.sealedsecret.yaml
Normal file
26
infrastructure/argocd/bootstrap-repo.sealedsecret.yaml
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"kind": "SealedSecret",
|
||||
"apiVersion": "bitnami.com/v1alpha1",
|
||||
"metadata": {
|
||||
"name": "bootstrap-repo",
|
||||
"namespace": "argocd",
|
||||
"creationTimestamp": null
|
||||
},
|
||||
"spec": {
|
||||
"template": {
|
||||
"metadata": {
|
||||
"name": "bootstrap-repo",
|
||||
"namespace": "argocd",
|
||||
"creationTimestamp": null,
|
||||
"labels": {
|
||||
"argocd.argoproj.io/secret-type": "repository"
|
||||
}
|
||||
}
|
||||
},
|
||||
"encryptedData": {
|
||||
"sshPrivateKey": "AgBHHe0LWnuOpQ+9LTItn8pWnga7J/n1x3EYTqh7m9nillUGXLkEeaduVW6dghaeoQ7QVIeVkPO7Vy3WqHMoZ7O8+cwP2pdy2jhIZy1VUyj56/AMSWOBBKyZpfpUMDnGpD8o8GPX4Ru66WDV5R7i4v7wuT7aYkeYLw3Kle3SOvjstTrsI93j2d328VJGb2f4Ci4bj4N87/L/AQcDh2EnAzPQ884CjwW9W3+1ihQZ85WNlryKaAB0Pl0Hvrq+Kmfaw4XFJnfWfzymzgvLjoDJ7SyYdKwX4yT0UjTl/cyCKcQgUgXlLOUCG/kEy42U/nXwBn9cRNwzd7R5laeCJzyks0Acm06JjUCvXNxUPEVQt0Jj1nlLOBR+dWqxQPFGwwA1eOs286I+kuOaR5l+5UVLrlqm64vcKIa/A5sSAAu3afjPY2XZ3ahJ0A8d3KGeTTKNOfXPxAu94oqG3fapDeSladcHlyINkrctGWaMG3e8x1Gn9l1cLeOs8gEXEBkUt/RADMtDC5vris3Xx8mCiRT43Y0x+ApGTZ6bmCNHaXphbB2hDzqKrHr570rr4fby/oDwxl65qydtaiapRto1s7QInkJLMR/ogoC653/7zsoofo3Uuh9Pvy4cx0kcDEhpi6I7Qzoa038blf0oqPwsUjNfmY/+fnf86CXCJDynZxy82d0PCqPbTp0HLFM+5//NA1556LXyJALDii4Gr0eBv5la+T2oZY5QPAyZm5Lh18ipyC/EtB6Xikmxsc0Q1e1k40DSMO728el+eKpNf5pgowaufuimh13vfUP3CzqGHVcexPTHQHe6l1LW4dSyxZJ2AJUiRDe4fZseyHk7qAlJrsfm1tRhXqEUmZnnUL1GNRWyp1icz2WztNou2u/XiO/tC9UBAGkmm4TnEV1N054pi9l5GyWkeZ02jZWtie0kXt/l0194nBzCsgLDW1nvIinX3wDCG7jBfhw7/ut0G/AyvIFgpIvs3jiIcuKgWiNczSwOjiH9wWuFL3jGJnnMdZ0XB7RJTtMmurpoqAfwQcuBmJJ0t2v/aJO0RA76bvEC4IkRUnhI3hoNseIdiVVr/0YfcSuvHLN92YgFGT57FmQrYPhZkbRbSBTIVT2/2ovNC/k++/FRHeGWTgUrpe9WFHusNJI9xOfvc4KhEqBiRjvoLH+c0UF5/t0C1et8uMkfPFOvRRkUyF4HgRhnA1MlzLuXjGc2At3+gy3TOGypbd9fwXE+wGBd/2EViJjMnIYvKLc=",
|
||||
"type": "AgAL1BYxeqsLKWq6aHTCSc7PUGrcyX8X8DCn6xCP6cY+4VjmSD0B9/9wp56DWAPI+bpCRG0uEzgFofB7NdgB2HFnkMxDZeP0TzNhcGZSmXw2e7V89JHS5V/d1f63TDiYfU+Btbgap6P7dL4onfcp6DVzgJ/DMAF9dNAlfV23O9TooclWGRbJ2S5OcmFn/m88atledYnKEF6UOIUYOdwVUEC3DdC4zFhs53wA1KJBrgKNI2e/CsjCNBpM6hl2pCGguJJsEQSdmwDxBQ+juR+HYiacutdKCsDVpYwmNTmxiqUUyCW/i2SkIKoGKfo3RbsW/B0bne+cZPtWU5H2TJRThhMyrMaEwev4ijlT5yvKb5EybZ4Kf2ARxjgrkyRy+eEo93gIXb36fVM4Dahc8byRWLoJbYuDxzSbyrHP8VdFXAhqIiVrU0BGrUYdKBxUlh/8Ga2IlX4KSZm/9Fb9vC0GhCSKH2uYjBIvakOsRC3NreM53C/DHnzodRxom1mhaLAQk0OcD2EhpA3tRoIl0X32sLI2BC9TgS7NM/DNBgQRLefUUtz/cjw/h4D1DdA29iZbJdjefTDVj2PlypG/CU91nC1vnZKy2JcP+c066KQHcNPhYXyAyoaaxyM59XTNNdzsLaLKnnrPGz2VAW4UYu/WEblE8VcjNuXkKV0L4e3KZHVKdrJHFr0uKN28M8yQZyAihrq9Ejk=",
|
||||
"url": "AgCP08jVVXsx9i7pj3Y7THiICavOZe3yJ5pB+TaphXthaQgnsqCGJ6QiK/7ibS+qc+K6XIP0GhEQL+uMk0/DCtxflYoBTTzCYodCdhXWUwInetegcfoyTPVbdStTbYyeFZ1drsdpAazUHrwyQ+imFUCyNw6UzCiEptyEM7xcmaAAGlj/7IFqgzJey/Qrt3Uwn/R7OtVQsHUUzp4ftXMajz9sNNNMbAAVN+W1e7UGdDmQjYvInCTR6ju4t//9WgnMp2jRpLT4kFFIgW4YuuBbZNp3kcFytGwdiiuguRvpfbI7wNS92zUWNI/AO7iCdgkba/hZ48gEM4GCbbFxp7/RRHSLQUaeuNZi/7NPYlx46A/GilA5/XwnXOwxWL8TG0HdLfU6UJwG62AILxxtisUtMrSyAQC0IO6zKDctK5j/uJ9LnpSzRcBChJ0SPaB6qye/MlOXjx+i7bkSNssq21aUCVYJgoBc5PfUU0i6msNlMHEH//yhGPnqU+wL+BKNTBGNxs/e1vNkl2ZwIGcaigViQX4/PsvoF/iMXJJTugQAKaamZDYZSzEIdZAcNX9QJzDYc++VvFNVZ4qAvfMtDSGQ/kWEwYFjQBPJ/+jziG9ZNua8OzKdOMovDNqzG2tmJhB4S6JEvw7N/41UTIy+52PQL15Cx+U5UYdrEutz88DsXht6wlW9zyfVWMRAOgkrQWu268rwYRU37XfXfrIJB0Znoz8khrDZMJTKuo8tkcCztxqMF0/xGYHY1vMoyVQg1FJcZ3uULsen"
|
||||
}
|
||||
}
|
||||
}
|
@ -6,5 +6,7 @@ metadata:
|
||||
app.kubernetes.io/part-of: argocd
|
||||
name: argocd-ssh-known-hosts-cm
|
||||
data:
|
||||
# this is the fingerprint of the host key of git.kluster.moll.re
|
||||
ssh_known_hosts: |
|
||||
[git.kluster.moll.re]:2222 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOTtII97BheLIPWTpxMLmuFGFb7C96kqdhf78x7yWhlu
|
||||
github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=
|
||||
|
@ -3,12 +3,13 @@ kind: Kustomization
|
||||
|
||||
namespace: argocd
|
||||
resources:
|
||||
- https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
|
||||
- namespace.yaml
|
||||
- ingress.yaml
|
||||
- argo-apps.application.yaml
|
||||
- https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
|
||||
- namespace.yaml
|
||||
- ingress.yaml
|
||||
- argo-apps.application.yaml
|
||||
- bootstrap-repo.sealedsecret.yaml
|
||||
|
||||
|
||||
patches:
|
||||
- path: known-hosts.configmap.yaml
|
||||
- path: argocd.configmap.yaml
|
||||
- path: known-hosts.configmap.yaml
|
||||
- path: argocd.configmap.yaml
|
||||
|
@ -2,12 +2,10 @@ apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: drone-runner
|
||||
namespace: gitea
|
||||
---
|
||||
kind: Role
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: drone-runner
|
||||
rules:
|
||||
- apiGroups:
|
||||
@ -36,11 +34,9 @@ kind: RoleBinding
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
metadata:
|
||||
name: drone-runner
|
||||
namespace: gitea
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: drone-runner
|
||||
namespace: gitea
|
||||
roleRef:
|
||||
kind: Role
|
||||
name: drone-runner
|
||||
@ -51,7 +47,6 @@ roleRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: drone-runner
|
||||
labels:
|
||||
app.kubernetes.io/name: drone-runner
|
@ -2,7 +2,6 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: drone-server
|
||||
namespace: gitea
|
||||
labels:
|
||||
app: drone-server
|
||||
spec:
|
||||
@ -59,7 +58,6 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: drone-server
|
||||
namespace: gitea
|
||||
labels:
|
||||
app: drone-server
|
||||
|
||||
@ -75,7 +73,6 @@ apiVersion: traefik.containo.us/v1alpha1
|
||||
kind: IngressRoute
|
||||
metadata:
|
||||
name: drone-server-ingress
|
||||
namespace: gitea
|
||||
|
||||
spec:
|
||||
entryPoints:
|
||||
@ -94,7 +91,6 @@ spec:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: drone-data-nfs
|
||||
labels:
|
||||
directory: drone
|
||||
@ -112,7 +108,6 @@ spec:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: drone-data-nfs
|
||||
spec:
|
||||
# storageClassName: fast
|
@ -2,7 +2,6 @@ apiVersion: traefik.containo.us/v1alpha1
|
||||
kind: IngressRoute
|
||||
metadata:
|
||||
name: gitea-ingress
|
||||
namespace: gitea
|
||||
spec:
|
||||
entryPoints:
|
||||
- websecure
|
@ -2,13 +2,10 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: gitea-data-nfs
|
||||
spec:
|
||||
# storageClassName: fast
|
||||
capacity:
|
||||
storage: "10Gi"
|
||||
# volumeMode: Filesystem
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
nfs:
|
||||
@ -18,7 +15,6 @@ spec:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: gitea-data-nfs
|
||||
spec:
|
||||
storageClassName: ""
|
||||
@ -32,13 +28,10 @@ spec:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: gitea-postgresql-data-nfs
|
||||
spec:
|
||||
# storageClassName: fast
|
||||
capacity:
|
||||
storage: "5Gi"
|
||||
# volumeMode: Filesystem
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
nfs:
|
||||
@ -50,7 +43,6 @@ spec:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
namespace: gitea
|
||||
name: gitea-postgresql-data-nfs
|
||||
spec:
|
||||
storageClassName: nfs-client
|
217
infrastructure/gitea/gitea.values.yaml
Normal file
217
infrastructure/gitea/gitea.values.yaml
Normal file
@ -0,0 +1,217 @@
|
||||
|
||||
## @section Service
|
||||
service:
|
||||
## @param service.http.type Kubernetes service type for web traffic
|
||||
## @param service.http.port Port number for web traffic
|
||||
## @param service.http.clusterIP ClusterIP setting for http autosetup for statefulset is None
|
||||
## @param service.http.loadBalancerIP LoadBalancer IP setting
|
||||
## @param service.http.nodePort NodePort for http service
|
||||
## @param service.http.externalTrafficPolicy If `service.http.type` is `NodePort` or `LoadBalancer`, set this to `Local` to enable source IP preservation
|
||||
## @param service.http.externalIPs External IPs for service
|
||||
## @param service.http.ipFamilyPolicy HTTP service dual-stack policy
|
||||
## @param service.http.ipFamilies HTTP service dual-stack familiy selection,for dual-stack parameters see official kubernetes [dual-stack concept documentation](https://kubernetes.io/docs/concepts/services-networking/dual-stack/).
|
||||
## @param service.http.loadBalancerSourceRanges Source range filter for http loadbalancer
|
||||
## @param service.http.annotations HTTP service annotations
|
||||
http:
|
||||
type: ClusterIP
|
||||
port: 3000
|
||||
clusterIP: None
|
||||
nodePort:
|
||||
externalTrafficPolicy:
|
||||
externalIPs:
|
||||
ipFamilyPolicy:
|
||||
ipFamilies:
|
||||
loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
## @param service.ssh.type Kubernetes service type for ssh traffic
|
||||
## @param service.ssh.port Port number for ssh traffic
|
||||
## @param service.ssh.clusterIP ClusterIP setting for ssh autosetup for statefulset is None
|
||||
## @param service.ssh.loadBalancerIP LoadBalancer IP setting
|
||||
## @param service.ssh.nodePort NodePort for ssh service
|
||||
## @param service.ssh.externalTrafficPolicy If `service.ssh.type` is `NodePort` or `LoadBalancer`, set this to `Local` to enable source IP preservation
|
||||
## @param service.ssh.externalIPs External IPs for service
|
||||
## @param service.ssh.ipFamilyPolicy SSH service dual-stack policy
|
||||
## @param service.ssh.ipFamilies SSH service dual-stack familiy selection,for dual-stack parameters see official kubernetes [dual-stack concept documentation](https://kubernetes.io/docs/concepts/services-networking/dual-stack/).
|
||||
## @param service.ssh.hostPort HostPort for ssh service
|
||||
## @param service.ssh.loadBalancerSourceRanges Source range filter for ssh loadbalancer
|
||||
## @param service.ssh.annotations SSH service annotations
|
||||
ssh:
|
||||
type: LoadBalancer
|
||||
port: 2222
|
||||
loadBalancerIP: 192.168.3.3
|
||||
nodePort:
|
||||
externalTrafficPolicy:
|
||||
externalIPs:
|
||||
ipFamilyPolicy:
|
||||
ipFamilies:
|
||||
hostPort:
|
||||
loadBalancerSourceRanges: []
|
||||
annotations: {}
|
||||
|
||||
## @section Ingress
|
||||
ingress:
|
||||
enabled: false
|
||||
|
||||
## @param resources Kubernetes resources
|
||||
resources:
|
||||
{}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
|
||||
## @section Persistence
|
||||
#
|
||||
## @param persistence.enabled Enable persistent storage
|
||||
## @param persistence.existingClaim Use an existing claim to store repository information
|
||||
## @param persistence.size Size for persistence to store repo information
|
||||
## @param persistence.accessModes AccessMode for persistence
|
||||
## @param persistence.labels Labels for the persistence volume claim to be created
|
||||
## @param persistence.annotations Annotations for the persistence volume claim to be created
|
||||
## @param persistence.storageClass Name of the storage class to use
|
||||
## @param persistence.subPath Subdirectory of the volume to mount at
|
||||
persistence:
|
||||
enabled: true
|
||||
existingClaim: gitea-data-nfs
|
||||
|
||||
size: 10Gi
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
labels: {}
|
||||
annotations: {}
|
||||
storageClass:
|
||||
subPath:
|
||||
|
||||
|
||||
# Configure commit/action signing prerequisites
|
||||
## @section Signing
|
||||
#
|
||||
## @param signing.enabled Enable commit/action signing
|
||||
## @param signing.gpgHome GPG home directory
|
||||
## @param signing.privateKey Inline private gpg key for signed Gitea actions
|
||||
## @param signing.existingSecret Use an existing secret to store the value of `signing.privateKey`
|
||||
signing:
|
||||
enabled: false
|
||||
gpgHome: /data/git/.gnupg
|
||||
privateKey: ""
|
||||
# privateKey: |-
|
||||
# -----BEGIN PGP PRIVATE KEY BLOCK-----
|
||||
# ...
|
||||
# -----END PGP PRIVATE KEY BLOCK-----
|
||||
existingSecret: ""
|
||||
|
||||
## @section Gitea
|
||||
#
|
||||
gitea:
|
||||
## @param gitea.admin.username Username for the Gitea admin user
|
||||
## @param gitea.admin.existingSecret Use an existing secret to store admin user credentials
|
||||
## @param gitea.admin.password Password for the Gitea admin user
|
||||
## @param gitea.admin.email Email for the Gitea admin user
|
||||
admin:
|
||||
username: gitea_admin
|
||||
password: r8sA8CPHD9!bt6d
|
||||
email: "gitea@local.domain"
|
||||
|
||||
## @param gitea.metrics.enabled Enable Gitea metrics
|
||||
## @param gitea.metrics.serviceMonitor.enabled Enable Gitea metrics service monitor
|
||||
metrics:
|
||||
enabled: false
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
# additionalLabels:
|
||||
# prometheus-release: prom1
|
||||
|
||||
## @param gitea.config Configuration for the Gitea server,ref: [config-cheat-sheet](https://docs.gitea.io/en-us/config-cheat-sheet/)
|
||||
config:
|
||||
APP_NAME: "Remy's personal git hosting"
|
||||
server:
|
||||
DOMAIN: git.kluster.moll.re
|
||||
ROOT_URL: https://git.kluster.moll.re
|
||||
SSH_LISTEN_PORT: 2222
|
||||
actions:
|
||||
ENABLED: true
|
||||
|
||||
|
||||
|
||||
## @param gitea.ssh.logLevel Configure OpenSSH's log level. Only available for root-based Gitea image.
|
||||
ssh:
|
||||
logLevel: "INFO"
|
||||
|
||||
|
||||
## @section Memcached
|
||||
#
|
||||
## @param memcached.enabled Memcached is loaded as a dependency from [Bitnami](https://github.com/bitnami/charts/tree/master/bitnami/memcached) if enabled in the values. Complete Configuration can be taken from their website.
|
||||
## ref: https://hub.docker.com/r/bitnami/memcached/tags/
|
||||
## @param memcached.service.ports.memcached Port for Memcached
|
||||
memcached:
|
||||
enabled: true
|
||||
# image:
|
||||
# registry: docker.io
|
||||
# repository: bitnami/memcached
|
||||
# tag: ""
|
||||
# digest: ""
|
||||
# pullPolicy: IfNotPresent
|
||||
# pullSecrets: []
|
||||
service:
|
||||
ports:
|
||||
memcached: 11211
|
||||
|
||||
## @section PostgreSQL
|
||||
#
|
||||
## @param postgresql.enabled Enable PostgreSQL
|
||||
## @param postgresql.global.postgresql.auth.password Password for the `gitea` user (overrides `auth.password`)
|
||||
## @param postgresql.global.postgresql.auth.database Name for a custom database to create (overrides `auth.database`)
|
||||
## @param postgresql.global.postgresql.auth.username Name for a custom user to create (overrides `auth.username`)
|
||||
## @param postgresql.global.postgresql.service.ports.postgresql PostgreSQL service port (overrides `service.ports.postgresql`)
|
||||
## @param postgresql.primary.persistence.size PVC Storage Request for PostgreSQL volume
|
||||
postgresql:
|
||||
enabled: true
|
||||
image:
|
||||
tag: 11
|
||||
# diagnosticMode:
|
||||
# enabled: true
|
||||
# containerSecurityContext:
|
||||
# runAsUser: 0
|
||||
global:
|
||||
postgresql:
|
||||
auth:
|
||||
password: gitea
|
||||
database: gitea
|
||||
username: gitea
|
||||
service:
|
||||
ports:
|
||||
postgresql: 5432
|
||||
primary:
|
||||
persistence:
|
||||
size: 10Gi
|
||||
existingClaim: gitea-postgresql-data-nfs
|
||||
mountPath: /bitnami/postgresql/data
|
||||
|
||||
|
||||
postgresql-ha:
|
||||
enabled: false
|
||||
|
||||
# By default, removed or moved settings that still remain in a user defined values.yaml will cause Helm to fail running the install/update.
|
||||
# Set it to false to skip this basic validation check.
|
||||
## @section Advanced
|
||||
## @param checkDeprecation Set it to false to skip this basic validation check.
|
||||
## @param test.enabled Set it to false to disable test-connection Pod.
|
||||
## @param test.image.name Image name for the wget container used in the test-connection Pod.
|
||||
## @param test.image.tag Image tag for the wget container used in the test-connection Pod.
|
||||
checkDeprecation: true
|
||||
test:
|
||||
enabled: true
|
||||
image:
|
||||
name: busybox
|
||||
tag: latest
|
||||
|
||||
## @param extraDeploy Array of extra objects to deploy with the release
|
||||
##
|
||||
extraDeploy: []
|
19
infrastructure/gitea/kustomization.yaml
Normal file
19
infrastructure/gitea/kustomization.yaml
Normal file
@ -0,0 +1,19 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- namespace.yaml
|
||||
- gitea.pvc.yaml
|
||||
- gitea.ingress.yaml
|
||||
- drone-kube-runner.deployment.yaml
|
||||
- drone-server.deployment.yaml
|
||||
- drone-server.sealedsecret.yaml
|
||||
|
||||
namespace: gitea
|
||||
|
||||
|
||||
helmCharts:
|
||||
- name: gitea
|
||||
releaseName: gitea
|
||||
version: 9.6.1
|
||||
valuesFile: gitea.values.yaml
|
||||
repo: https://dl.gitea.io/charts/
|
4
infrastructure/gitea/namespace.yaml
Normal file
4
infrastructure/gitea/namespace.yaml
Normal file
@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: placeholder
|
@ -1,25 +0,0 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: argocd-imageupdate
|
||||
namespace: argocd
|
||||
annotations:
|
||||
argocd-image-updater.argoproj.io/image-list: quay.io/argoprojlabs/argocd-image-updater
|
||||
argocd-image-updater.argoproj.io/alias.update-strategy: latest
|
||||
argocd-image-updater.argoproj.io/git-branch: main
|
||||
argocd-image-updater.argoproj.io/write-back-target: kustomization:/infrastructure/argocd-imageupdate/
|
||||
argocd-image-updater.argoproj.io/write-back-method: git
|
||||
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/argocd-imageupdate
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: journal
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/backup/overlays/backup
|
||||
destination:
|
||||
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/backup/common
|
||||
destination:
|
||||
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/backup/postgres
|
||||
destination:
|
||||
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/backup/overlays/prune
|
||||
destination:
|
||||
|
26
kluster-deployments/gitea-repo.sealedsecret.yaml
Normal file
26
kluster-deployments/gitea-repo.sealedsecret.yaml
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"kind": "SealedSecret",
|
||||
"apiVersion": "bitnami.com/v1alpha1",
|
||||
"metadata": {
|
||||
"name": "gitea-repo",
|
||||
"namespace": "argocd",
|
||||
"creationTimestamp": null
|
||||
},
|
||||
"spec": {
|
||||
"template": {
|
||||
"metadata": {
|
||||
"name": "gitea-repo",
|
||||
"namespace": "argocd",
|
||||
"creationTimestamp": null,
|
||||
"labels": {
|
||||
"argocd.argoproj.io/secret-type": "repository"
|
||||
}
|
||||
}
|
||||
},
|
||||
"encryptedData": {
|
||||
"sshPrivateKey": "AgAuB46H/Fu7ql0wEurUAR5BZdntwc7VB2d7UyAOj7Tt++fcv4iTUe6KBqHkpCqDNwxClhtD5LBkyHFKWPUMKMcEgFzLVtx0GBhJ+xI040po2ktDy6tFuyQqA060sAo2aT5jP6kbMmfD2o3h8Lxm7QF2XzczYlTb3ldSa/TQTaBgJ97aGHu8Evlath5s2ykGRc3iSn4HdaRv4gXCQVPDhCF6rb2MgA4/VjWJi/IgQ2V0RChCAX3PvlfjZs1ekfHn2NkQkP7TuxXbG6kNdw0RKXi10NC9uNNEyxu0ydMIECuLJn2YVsTZ2xZgBuAdy1CtnKqk4sLg8LNoOqXlXBeLMdy7TS8IA5WFyn7BQBhOW6ppwEjDk2yb/6Icn4WhU4YdN3qF9BdaIu//opN2NKuI932x+QsqeHXnbRAd/ylGBD3QadOsm4aDAlFaaMR+fLecUTaERkWVvCAj35hAtgPzi081uLVxzWRSaTrT1GgwkmHa1Hlh9MnjZZvkAExiTdi03jseRSfGlNOY3QAQz59NCSLL3wMrDwF21Jyd/XpKiSUw5Qxw85ympxJMnpDCnUG+4n/eKcHA1zdpAEhhZ+cZumqrS63ApCHeICdRvodpeUkS/Fd6//IKH/pW2xsMP1NZ6wLn49YZTX+TJdTbXp1EKD0dmEwtDGvvkx10BjNIAGFrUeLEuCNXV7MVDvb0dBfAWw8+aIEV10vYahq04t9akeM0ZUkAabi87w1RHEnSlnFDNCpR7DFWPUOltDUfgMtH59ANDIwk30sRU52eSSIJsXrI4XG+keV9LwHho0u5CgD9sgYB+QAJPKccxFPBJ4XK4N27bTlG9W2hTepnnB4O+mb0ZfpkafFHtQDy55xLeTibAwuXkltAW9tZzzfAiGC0Dr4BP70nuXf+mzqzbcvOdjlHNcPfqhwDAe4mn2ozPBzzPrOuOkGCUhufqjoEqqePAoOPoPppw8EcV2C6H0ipJCfPMYXLAPJo3XWnHnmcgEp2DBcJOjRoIElAq5KVrit1hEdBrF/1+1n84ABmxB+BLBtSnMG/9wIwAqe8KDA5lDpXxGJEMymGqBuITKDWz7kJ1d1OBkQirmC921EZ596jpFb7xqAEp/mAeZbJdsInyWekF3Ge4ocbp8GobywKlsUzshoifwk/clQTVPmmhwcMxUY2JJujvKu3kyM2N56dDEN+HG0zM+OHOXzCMC08+B0t3i3cPWtfXvRcjXBDDjHRvwMx03qoDV1rw/vjew4=",
|
||||
"type": "AgBUdBqiYmxFWjEKOnQQq3eyWKxbfFYKEjF1wFM3cR3GvYQ73l0Zv4t8O/IyXA1n/b8JJsjangSSRE8gwqep+WwM3DDI/93GF3R5Qej1jWfur7m04ZovCXK4l5ira8H6U4aJ9Cim9+HNMzRekchcCMQvHhXeYaNp+gYNQnajU41BFQM1f1G7UF1KyQim/wY3vneAU+FaIYY6+kvTEA/Xd8z7bPYDUP0nuCc0Qt6lWhxiPkNBPOjq0BWBBabWUS6sp8QYgMirbu58aspxcvbGn4nU6qN+O10JLe9NrJO3b6i/62WOk9/SwRF+zbFYnTUF71kgtiV6VkPoUqGZdrxwgP3oBW0PJUlNYu0/1mlfsV6yirrVb3ULMTwqylD2WQzh6uXO1n3z7YFixakJBFU/6rHyabQyM2xTqgQug3da2GGlrK5F4cX6obGM4qg3RX1rjGJtcVstgJJXubIXlwdUAo+ZpBGoXLY6FHweVe6tGsbKQYDB+nT5TAoKCjpfRnRGsM13VoS8EEKyekVF5lRw/3sb/rZT5MqdDoTnp/f7IhSr9as3u8FUBZ+lBk2T2gXcNrL5mHUisXXJjQmM5I7Yt/nKbkipw4+2yGXkx0wRcFmP0HpHam4TQiqrALaZ08HmrChWFtY3/dRJG7dmbawBCVeeKaC5D2FUPuGKCHI/VoFI5XXMIUrZjAUvu6Z5z0iOhloFEfc=",
|
||||
"url": "AgBqFKApOGBV4LA7N/rcT7vfYs3E0RVC4GHokOZFsB99Z2V7FhxppM68Acx0x7G7Pstr9ZM7x9RfRaOkkiHMePvOfUWWMvONk+lbzlLDMEy77kZxZzIlo0kQYL1wGXw55yQi3a0y5iMnIQCrJTEZ/PGFzNThzgNR8aMF+QeN+VcZDCGKM73hISk59pv+Yv4awFTAtkbN56vMOnO0ycCrHulnnBBrJKujEFpBIXC2FM+oXf/P4M/WpwFE7qiDhOVEwQfyNXbnt8F4X9Pm4lUMPlEyv5w6xOxMX6ejB+8hTkGxq0akXvSL20qdS6fJcA5/Lv1LU//3OlgjkvFJ7cRxFUFZ9suBZ7ubHXDTERlXONhkKDzhuI4iRoUcJHUVZILON2nA/MY1Sy1+2fymmqc7EVv9XtIihs0WdfGTP9j0UhtV3UycFupA5SnhyT5fe5nPThVivDfElXc4zIHENJy8EE3AeVrgBIPabjsEUkktrmvC0BCPJSqUoa3I9EPtiDGf3QEh1Yktr71p3jMrbpZnJqEJ0a9SOFRQ0pedqU7w1gWciuF3aEhzO12MnnEOiRb+s57VBtR7KdgVXLz9Up5rDreCCGVKSQNRxC85KqtPhKv45BExHC4cA/hgbsbslGKaAbB7QfgpuhZ41A2VvLtd71yGBehCFbP6UY6oE14HzC6h/+mTmgrL7DcM8mkJm7W1wKxnd/WqXNfmrGH1k4Znlfz+kzHOS6izKE5TPtavITH0842iwtlJwckkuwDY4uu4MxmtfQVsVjGU"
|
||||
}
|
||||
}
|
||||
}
|
18
kluster-deployments/gitea/application.yaml
Normal file
18
kluster-deployments/gitea/application.yaml
Normal file
@ -0,0 +1,18 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: gitea-application
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: ssh://git@github.com:moll-re/bootstrap-k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/gitea
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: gitea
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
@ -1,4 +1,4 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- application.yaml
|
||||
- application.yaml
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: apps
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: apps/homeassistant
|
||||
destination:
|
||||
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: apps
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: apps/immich
|
||||
destination:
|
||||
|
@ -18,9 +18,9 @@
|
||||
}
|
||||
},
|
||||
"encryptedData": {
|
||||
"sshPrivateKey": "AgBXAxyJk0OIXCUQ+bGEX7lj9sqUXHtsu6vflyQpv7USUl5y6WxbTDupwv7ewkqR7tir8fE5NqL6BlTSK1qvUP1L/Ba6jHBkA8r5Yz3QH73fjdjsMj12S/DUhSvN/aoSzwQBF+VW1MIoAhBwjh47DINes+Dbo9fvc9BcXzY5CS8+FcSrzNvh4Jh7u2bv9Xi9RswyeAWdvjRB2gPd1sDWk0yFEdz8d/wvQJ6SmB/+dhuB5RqdvnHtLCZf+wTDbyTyhKR+zUVmv0MhgremDFr+2KEUbWmi1KKhg1uZti7UHZ6KbssltHSMe0LstVQeuzjBBN1YLnc8AIKbCZBh7j7+UJ0ApEwiyA8uet54tjAjD/ai87tZW9fcMXqjlwf/xfB33m8UWZ/RsB2ipUhTMTPgmFrqQ5iK6rCFAHz8MbWy86CE97a7kYq+IwivtOJf5q87KVvfRLR1r/9LGHc0JWIYXaIsBaIakW6lJqeHTrvRfBsucf8b3DJTv6bhih8XZha5oWNx/d0HL21Y8wuxMJ2nM5KMJ5q4Kqor71cWbTqH2Eus/JaW5uU0qQQg6YvuCMc9STTESkm3pn8SJRM/4VLgC9taA2lpT6XykqrnegnxAan22/4FfVdHq4aTsL57KCyIxxb2s3Xg2x3EDRoI0bplMl7G2LAqRSKRQ0OVUEawizI9UFaJ/LLYZtoq61tdTvcNbp/V+w62N5g/4HVrwAElC17GyxpQQmTn+8e3eOU+Vp46VYQgA0g/p/OumJP24IGOCwa4qdLLsxiv8lVLbIDMYQ8sLQyieqOoCwgXSUqJRClT19K/JAaHbdLt5l5ZpGwD13hciaxPOZnSafqMXI/aDQfaWTknuQMtYR8wT2KW19w/x3YQzSU3ntEh9phVFLkMaPScB+rrX5b8QJNBWmsG8Waong8b0kz0gEG7QZCUMZdQqfSGxuBaADg4tJR8VVnSwRlIRw02SsqbL1zi4MQvTNl8l5C6dRU2bgJNj/r6IYKoNlUBtU8lxZ8yqaIDljcnsf/orYjNHLOoXMUamyQl2AZDf89vzYthobhpVlVZKOxA6mcCYjkYCBhVhZ8h+2SckrNnRcU8rajIAjWzKVnhvabAVmsF6cw00+QsgUMaWPb3PSiEwXy1xEhhM591F8AAhHYR4VyDDYUkKQS9UXAUnFJRCWRicGUfnzcvd4EAi0/2Kmz1trUIiCF1f3XTa75ynz4ifzciOU8IwCz/Xw0+vjb8aJ6LCll07Eed2sk=",
|
||||
"type": "AgBHGEdzEMcn4m58AZwrO2ifFldHAVmtcccH9oh0NGZC5waVFPjD3mQs+OeMzkMQmaBSyOM9FhuYT3fTAZn/Kk68mFj/qhl3U9WQlMB8F5tW0bVVqGFCRJgwH0t74FZiOl7rbz/x5eJybBv2mBZf9slH/iDJo/NrM+EvoawY5+oo7WITUWDf61yM8TAyA9074Z6gdp7mpx4rmAqSd2eVOBA0BQOCnSwYwM4xLDtCbEA19U9fjywPr0FLI1s4iIc3xbR+OxbGh0ke/SHIxQ8C0MfLudfNRZazk7lZ2GISwm1LhePTYVTOeYYtkp03NOjvDidv8WSXRIGYci9gdoNtfa1SqS8h3wUTgMyyA5C2+3nnGXx7NExGlS1nExcfxa0Y+sR/Z9Nldk+UlhBNZP+BtE7yAokXbfKTXzLqLfLq9jRDLlBQlqGiGrklCuNIIS84h0DZtAiE17C7THpHZGDguhxlVnFxCsnyApCjYYE/lKk4zg2/UumktPzPdrwyRl0EZtYChgnCmwtRNfqE1sYUnU6sQI5cQLOrzUVm+RGut+XEqOp14d684fRYkMgqxUdpIvRsO4y8SlSrHq0g5Tu9N3ykrk+l2u1EDOW1tr+JryKMFvQxJrJ+iJlpdXUUc4rFn42PRhhFZ4+xclOl/HqFlSa9m3ycAj+1c+bHrpcymxUonfik6ggDZR7LOKP/0CANuvaUBdU=",
|
||||
"url": "AgA6Zj3U6h+Qnx+RklbDHcYo+m7F+cSkdqAKeEv0/q2czxoiWZcnNywkFhsLd2JsUZCM2k7/0Z6jdiEKmO7y5Pu6En2KCOHpwVft2GZPrFIa516UUxi53+vJP9VrM7GOMJH77AFZ5OeLM7eFu85TIl9QXe8ZXQeuGdlr3aWNDWY0JPYHMgqJj3XEWv8ebzBTIW30rA2Yykg3Lvfxh1iY5oNf8hJ1XIUTeYler4yysWUQe6FchYVmnv35n54mLRkNeK9I/5anpJdE8aptptX1H0Ci/tYtGts68fKlhMzxnaOjfsw7xvoNOhWfaqoUyT/L8xQnAO7EZiblfJc6Pwvw3rCmdPpIUwTju5pqItvBDRn5TYMsGn7vrzM6ycluXbjpvcGnlM0FkHsekrjJUj+uhy6ZrSHr9pJCGDuxuYDeI0mPVcVpeJDZYB4EE3JBP1UsupoYl96anOGO13NN0+zJOl6oaRIRE3aVLsxaJwfujk9mnh3kyn2waPY2NEcYTn3b8gGMYFsrN9jT1j9edFEx67wG4Gy93EorQDPX5pp31TE37qcknRqqfY/VXu4zcT9aPqm26Ndwhy6fCTSZzt6NRDT7PqUmgcDTN1pJnAZV77/Bh+gAEDzrlClAMDWes/6Fo7iHqtiWQz/LAAWrUJoUrF/wFdZ4Lf7Q8jB4RgaKTegRK3gZeGt1Rp7ljzcFosx9Tfp7M4sWOnk28NhJeHJjp0/TwtnRZ1IQxaaAojlAOubOksXGOa8sojYuYqcE9TatTjvK6T55dSwDxM8="
|
||||
"sshPrivateKey": "AgCaTyeP8TwLWOOWsXbnH3lNnUxAWQIVG4+t+O4RWV7BS75LWp3ggmuiTX2mQF5D0B1VK1XB51hlCajQQW+LTZXUW3W8fn68wTi8FlbV5nSIpk+zAR3+07APGs09kwCwKDVBEZytMZdCGcJsEXghVTjgHL3eF73HPmORMKVvJ1D5Q6KfqX1s8XhbHE+LGM5qf30q8x+wfug7LacdFWbn0L/WR+k3Uw2EWh01M4loIBvERd48zGViYjWHZeOCAV3tu50KaiAwqlq//E0B1vIDouHDcma8EPr6OO5xCdTt6eLW+OWaDPVqKklhAXO4LiLVL6mpW+N+JTsCpyzSLxJyuLMrNoCvZsQpn1MqpNayRIx0n7Xmt2Ie9CBnKVcCF7v4kJofe2u558ZpOoUnZmB+iVOQVhonYVFW7IGfPjDpSNcI9RDicBRtnmBqzrLQwMv2kNG65eosjgtZtaPEF5Zo6mSYeutFuqjHy3J8HXJmtB5jTmXkHXEpRjMApoqKZyV4et0DF2QdZYrBSOnIY8r7ki8XvlN5bRHWD3irIT6ItzLQ/gb7A16MmqrjhIa9w6eiKhPk6sNJh9LBIadbBLluajPeVtf9B0Z4n1gcGKnrdv9ed+afgOLnT+rgwp5KTam2eeraoNp2gVG+Y6Yo1BUcjbbavpNTxCj8/V9/xd93tPtfl4FHdNveA8TowGqctwQ0T0z0BZ4puUt139QAPT85ckHt29h/1BtWvTIXea9IDD8NHt9MIG8y3v6ZzIbLoyhHhN9IWMqSeDu2r/lcLn+A38osF4WHBZyh+D9KMbKCn7EBck0o2LNfzzIcA4Py+xLEaSc9Zwrdp4H132VmQVoNWU1Ehkzd744kxIqzCvFU6nvYoxlnuV/Y9eP3cxSwSHbDqA+91pScDy76zanvUUcEmiSUN92GQEJV2/iCRbejvef1GClaEXc8rq6aTsb/w5NAaybT6dWV2LEMlY/wdx4TCqOVq3McYBZ6uOviShg2NC6qpDywG4h52uVVUd+LL12o16jeOzLPvIb0BZQYvPIFP2h3ur98zJSInN4vR7htwDYq7EbhyqF33LpgB+yqR3PLKShbpXjCtOPTnx6rXb9arUE7Dx8OHvXn+LnsKIUIJs2JbLAXwrMj42Z0c4BsdmcsVTphqcE8I4SqlTIibQGs3+BxRIo4c28t5Z+5SfmdAJctgLbyO+tCaR8gWBsx1myMIr/Z6vljAAI7AqKWU8RMi9o4aEBKvBNY1HQfHRc=",
|
||||
"type": "AgAgzf5llrSWW7HI8d6QnLv31t0eKEbzwbL2ssPO11EqVSW4Pv5kudAOguQcuIN+8suBpvZ4DXyt7/lKc9A1uAzdpQM7B1bR7616MJLjVkKT4IIPc1dWRa8dXFS9w1bD9jAnNiJdu67nczVlbZbzdnQu4aGOmnHkvz7hD0eLmA/VUETZE/r1SPHLmeJBjz9O+6UNRjq35SJTIhjxoYBm5CQXPzJ7XxqDaQEwcvB8DycmgwrnxvTCAzoQaYJU4p8WsaVzlhgzh4TmHsNFzM92giLYBSnRPWUjDAPdtSEk8jZh5UjAIsptkQT4e+K5MYAiMJM4AfvSJEUHzvTJRHFfR/6IV7m7GSLe/IofQjYz9K/bh3aYoy42LdqF4uBDCZUVezsnwbreLJqbs9l++8fEFzfSfTQ4IMdDu1y5lTJazvvPBLhqRh39n255L9d9j/5T/xxnSZL0GaR1BR6gLMCzxSmHNAyu7HWZLHoCJDavDDPCaeu3VR6I7ek6BbI8aRTTcFkBxpIRBxSyNkc4brZnf0QTGcvJU4eaRbkasWltpANE/v092yIjMa5lmCChJuzBGGP9dCKeYSjAhcSr8Th1QtFaeoemGtM2uZkg7QZlmycvwZcWVi0RZReaW2r6oGpkAldzdLewHyf1AvNgSrG69NzRveJdtwGtfC/15T8Nen/npKrICPBegX6SqVosYgYyfDru0Vk=",
|
||||
"url": "AgBInFis3TiCSRBVYNRJCn1NnBw3ynChue3akHMQkrLz5DccXtskw+Zr+Jl4ZTPohm5XRZbHKREq3/l7iv5+XRc+tqiCldZHVdPliH6bmSy0JWBR/0Gw2NhpIzF6gUaZR7FAhPdKTUcbnz/gdJEyLQYg+5jSHwqw/Mz/BUsxg1ngRbEeSpE6aYk0pbapmBLNxCkWROD3a5Vv3bOn461r71gE4VEZOlcxZkWhcFp0To8jgThkan2uDlx1hjtgCOLlih/5jkva6+ieVE7Fch7uUfcm+wWEOc2kIcZ4ARjP3vmVMSXiBLNRCEXyhtRAdvY8uvRC6vuIi2NBaaAGOqL26+sw8mbUm7dwdhlGGVuxGAwYKN9SY5L8YAgoYTWJ2LNIQqNXLUyThzRvb+40qvYETwH/Yd1qyKS5ZL+kMSKLRPHko0y79TKnZTLwhvKjzF9mbXhkLUm9zaB+54S2G5GmrCwzM62xIL+xW59P2+g0FDn5Pjhp7SoDhkFEuLi49LJ7HJs+Doyki9RIm9+Y+GxJeMdacvA6vZbmWJTnpcjq7TwUNOlA4RshMdJO38ZZm70EjS/pvFnNvufElYFMC060AVGXStx736tfRZL2xlRjzbKTeumJsVkm4yP/1ALaU2GVhKuzThZFAVSXDRSSpCLJWK/N5XHnOWeqH/Dwn8fZu9n0DJcMCyntOxqJyLHWXybJvJ7gn8gHskPSZZr+aB7tUX18GYpx7f2x9QPC/GMC/bzHBxXgVghxr+tCqFOYBzeSgLs264Ht653UVlo="
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,11 +5,15 @@ namespace: argocd
|
||||
|
||||
|
||||
resources:
|
||||
# infrastructure
|
||||
# repo keys
|
||||
# - bootstrap-repo.sealedsecret.yaml already set for app of apps
|
||||
- gitea-repo.sealedsecret.yaml
|
||||
|
||||
# infrastructure apps
|
||||
- projects.yaml
|
||||
- nfs/
|
||||
- backup/
|
||||
# - argocd-imageupdate/
|
||||
- gitea/
|
||||
- renovate/
|
||||
- traefik/
|
||||
|
||||
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@github.com:moll-re/bootstrap-k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/nfs/
|
||||
destination:
|
||||
|
@ -7,7 +7,7 @@ metadata:
|
||||
spec:
|
||||
project: apps
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: apps/ntfy
|
||||
destination:
|
||||
|
@ -7,7 +7,7 @@ metadata:
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/renovate
|
||||
destination:
|
||||
|
@ -7,7 +7,7 @@ metadata:
|
||||
spec:
|
||||
project: apps
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: apps/rss
|
||||
destination:
|
||||
|
@ -7,7 +7,7 @@ metadata:
|
||||
spec:
|
||||
project: infrastructure
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@github.com:moll-re/bootstrap-k3s-infra.git
|
||||
targetRevision: main
|
||||
path: infrastructure/traefik-system
|
||||
destination:
|
||||
|
@ -6,7 +6,7 @@ metadata:
|
||||
spec:
|
||||
project: apps
|
||||
source:
|
||||
repoURL: https://github.com/moll-re/k3s-infra.git
|
||||
repoURL: ssh://git@git.kluster.moll.re:2222/remoll/k3s-infra.git
|
||||
targetRevision: main
|
||||
path: apps/whoami/overlays/main
|
||||
destination:
|
||||
|
Loading…
x
Reference in New Issue
Block a user