This commit is contained in:
DeveloperDurp
2025-12-14 07:02:44 -06:00
parent 935f9cd9e2
commit d6cf85135c
10 changed files with 102 additions and 249 deletions

View File

@@ -1,43 +0,0 @@
#apiVersion: argoproj.io/v1alpha1
#kind: Application
#metadata:
# name: octopusdeploy
# namespace: argocd
#spec:
# project: default
# source:
# repoURL: https://gitlab.com/developerdurp/homelab.git
# targetRevision: main
# path: infra/octopusdeploy
# destination:
# namespace: octopusdeploy
# name: in-cluster
# syncPolicy:
# automated:
# prune: true
# selfHeal: true
# syncOptions:
# - CreateNamespace=true
#
#---
#apiVersion: argoproj.io/v1alpha1
#kind: Application
#metadata:
# name: octopusdeploy-agent
# namespace: argocd
#spec:
# project: default
# source:
# repoURL: https://gitlab.com/developerdurp/homelab.git
# targetRevision: main
# path: infra/octopus-agent
# destination:
# namespace: octopus-agent
# name: in-cluster
# syncPolicy:
# automated:
# prune: true
# selfHeal: true
# syncOptions:
# - CreateNamespace=true
#

View File

@@ -0,0 +1,20 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: portainer
namespace: argocd
spec:
project: default
source:
repoURL: https://gitlab.com/developerdurp/homelab.git
targetRevision: main
path: infra/portainer
destination:
namespace: portainer
name: in-cluster
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true

View File

@@ -1,12 +0,0 @@
apiVersion: v2
name: octopusdeploy
description: A Helm chart for Kubernetes
type: application
version: 0.1.0
appVersion: "1.16.0"
dependencies:
- name: kubernetes-agent
repository: oci://registry-1.docker.io/octopusdeploy
version: 2.*.*

View File

@@ -1,23 +0,0 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: vault
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: agent-token
spec:
secretStoreRef:
name: vault
kind: ClusterSecretStore
target:
name: agent-token
data:
- secretKey: bearer-token
remoteRef:
key: kv/octopusdeploy
property: infra-bearer-token

View File

@@ -1,19 +0,0 @@
kubernetes-agent:
agent:
bearerTokenSecretName: agent-token
acceptEula: "Y"
serverUrl: "https://octopus.durp.info/"
serverCommsAddresses:
- "https://octopus-deploy-node0.octopusdeploy.svc.cluster.local:10943/"
- "https://octopus-deploy-node1.octopusdeploy.svc.cluster.local:10943/"
- "https://octopus-deploy-node2.octopusdeploy.svc.cluster.local:10943/"
space: "Default"
name: "infra"
deploymentTarget:
initial:
environments:
- "development"
- "production"
tags:
- "infra-cluster"
enabled: "true"

View File

@@ -1,32 +0,0 @@
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: octopus-ingress
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
spec:
entryPoints:
- websecure
routes:
- match: Host(`octopus.durp.info`) && PathPrefix(`/`)
kind: Rule
services:
- name: octopusdeploy-octopus-deploy
port: 80
tls:
secretName: octopus-tls
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: octopus-tls
spec:
secretName: octopus-tls
issuerRef:
name: vault-issuer
kind: ClusterIssuer
commonName: "octopus.durp.info"
dnsNames:
- "octopus.durp.info"

View File

@@ -1,106 +0,0 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: vault
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: octopusdeploy-adminpassword
spec:
secretStoreRef:
name: vault
kind: ClusterSecretStore
target:
name: octopusdeploy-adminpassword
data:
- secretKey: secret
remoteRef:
key: kv/octopusdeploy
property: adminpassword
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: octopusdeploy-adminusername
spec:
secretStoreRef:
name: vault
kind: ClusterSecretStore
target:
name: octopusdeploy-adminusername
data:
- secretKey: secret
remoteRef:
key: kv/octopusdeploy
property: adminusername
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: octopusdeploy-connectionstring
spec:
secretStoreRef:
name: vault
kind: ClusterSecretStore
target:
name: octopusdeploy-connectionstring
data:
- secretKey: secret
remoteRef:
key: kv/octopusdeploy
property: connectionstring
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: octopusdeploy-masterkey
spec:
secretStoreRef:
name: vault
kind: ClusterSecretStore
target:
name: octopusdeploy-masterkey
data:
- secretKey: secret
remoteRef:
key: kv/octopusdeploy
property: masterkey
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: octopusdeploy-sapassword
spec:
secretStoreRef:
name: vault
kind: ClusterSecretStore
target:
name: octopusdeploy-sapassword
data:
- secretKey: secret
remoteRef:
key: kv/octopusdeploy
property: sapassword
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: octopusdeploy-licensekey
spec:
secretStoreRef:
name: vault
kind: ClusterSecretStore
target:
name: octopusdeploy-licensekey
data:
- secretKey: secret
remoteRef:
key: kv/octopusdeploy
property: licensekey

View File

@@ -1,10 +0,0 @@
octopusdeploy-helm:
octopus:
image:
repository: registry.durp.info/octopusdeploy/octopusdeploy
tag: 2025.3
createSecrets: false
acceptEula: Y
replicaCount: 3
mssql:
enabled: true

View File

@@ -1,5 +1,5 @@
apiVersion: v2
name: octopusdeploy
name: portainer
description: A Helm chart for Kubernetes
type: application
@@ -7,6 +7,6 @@ version: 0.1.0
appVersion: "1.16.0"
dependencies:
- name: octopusdeploy-helm
repository: oci://ghcr.io/octopusdeploy
version: 1.7.0
- name: portainer
repository: https://portainer.github.io/k8s/
version: 2.33.5

View File

@@ -0,0 +1,78 @@
portainer:
replicaCount: 1
image:
repository: registry.durp.info/portainer/portainer-ce
tag: 2.33.5
pullPolicy: Always
imagePullSecrets: []
nodeSelector: {}
tolerations: []
serviceAccount:
annotations: {}
name: portainer-sa-clusteradmin
# This flag provides the ability to enable or disable RBAC-related resources during the deployment of the Portainer application
# If you are using Portainer to manage the K8s cluster it is deployed to, this flag must be set to true
localMgmt: true
service:
# Set the httpNodePort and edgeNodePort only if the type is NodePort
# For Ingress, set the type to be ClusterIP and set ingress.enabled to true
# For Cloud Providers, set the type to be LoadBalancer
type: NodePort
httpPort: 9000
httpsPort: 9443
httpNodePort: 30777
httpsNodePort: 30779
edgePort: 8000
edgeNodePort: 30776
annotations: {}
tls:
# If set, Portainer will be configured to use TLS only
force: false
# If set, will mount the existing secret into the pod
existingSecret: ""
trusted_origins:
# If set, Portainer will be configured to trust the domains specified in domains
enabled: false
# specify (in a comma-separated list) the domain(s) used to access Portainer when it is behind a reverse proxy
# example: portainer.mydomain.com,portainer.example.com
domains: ""
mtls:
# If set, Portainer will be configured to use mTLS only
enable: false
# If set, will mount the existing secret into the pod
existingSecret: ""
feature:
flags: []
ingress:
enabled: false
ingressClassName: ""
annotations: {}
# kubernetes.io/ingress.class: nginx
# Only use below if tls.force=true
# nginx.ingress.kubernetes.io/backend-protocol: HTTPS
# Note: Hosts and paths are of type array
hosts:
- host:
paths: []
# - path: "/"
tls: []
resources: {}
persistence:
enabled: true
size: "10Gi"
annotations: {}
storageClass: longhorn
existingClaim: