-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbootstrap.yaml
More file actions
115 lines (115 loc) · 2.69 KB
/
bootstrap.yaml
File metadata and controls
115 lines (115 loc) · 2.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
---
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
name: argocd-system
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
description: Apps that manage the ArgoCD system
sourceRepos:
- 'https://github.com/bamaas/HomeLab-2.0'
sourceNamespaces:
- 'argocd'
destinations:
- namespace: 'argocd'
server: 'https://kubernetes.default.svc'
clusterResourceWhitelist:
- group: '*'
kind: '*'
namespaceResourceWhitelist:
- group: '*'
kind: '*'
---
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: bootstrap-system
namespace: argocd
spec:
goTemplate: true
goTemplateOptions: ["missingkey=error"]
generators:
- git:
repoURL: https://github.com/bamaas/HomeLab-2.0
revision: main
directories:
- path: 'bootstrap/${ENV}/projects'
- path: 'bootstrap/${ENV}/resources'
- path: 'bootstrap/${ENV}/misc'
template:
metadata:
name: '{{ .path.basename }}'
spec:
project: argocd-system
sources:
- repoURL: https://github.com/bamaas/HomeLab-2.0
targetRevision: main
path: '{{.path.path}}'
destination:
server: https://kubernetes.default.svc
namespace: argocd
syncPolicy:
automated:
prune: true
selfHeal: true
allowEmpty: true
syncOptions:
- CreateNamespace=true
- ServerSideApply=true
---
apiVersion: v1
kind: Secret
metadata:
name: argocd-cluster-name
namespace: argocd
labels:
argocd.argoproj.io/secret-type: cluster
type: Opaque
stringData:
name: ${ENV}
server: https://kubernetes.default.svc
config: |-
{
"tlsClientConfig":{
"insecure":false
}
}
---
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: appset-bootstrap
namespace: argocd
spec:
goTemplate: true
goTemplateOptions: ["missingkey=error"]
generators:
- git:
repoURL: https://github.com/bamaas/HomeLab-2.0
revision: main
directories:
- path: 'apps/${ENV}/*/*/*'
template:
metadata:
name: '{{ .path.basename }}'
spec:
project: '{{ index .path.segments 2 }}'
source:
repoURL: https://github.com/bamaas/HomeLab-2.0
targetRevision: main
path: '{{.path.path}}'
plugin:
name: cmp-sops-decrypt
destination:
server: https://kubernetes.default.svc
namespace: '{{ index .path.segments 3 }}'
syncPolicy:
automated:
prune: true
selfHeal: true
allowEmpty: true
syncOptions:
- CreateNamespace=true
- ServerSideApply=true