Recreate the truenas-csi stack
This commit is contained in:
@@ -4,7 +4,7 @@ metadata:
|
|||||||
name: linking
|
name: linking
|
||||||
namespace: linkding
|
namespace: linkding
|
||||||
resources:
|
resources:
|
||||||
- pvc.yaml
|
|
||||||
- deployment.yaml
|
|
||||||
- namespace.yaml
|
- namespace.yaml
|
||||||
- srv.yaml
|
- srv.yaml
|
||||||
|
- pvc.yaml
|
||||||
|
- deployment.yaml
|
||||||
|
|||||||
@@ -4,20 +4,20 @@ metadata:
|
|||||||
name: immich
|
name: immich
|
||||||
namespace: cnpg-cluster
|
namespace: cnpg-cluster
|
||||||
stringData:
|
stringData:
|
||||||
password: ENC[AES256_GCM,data:EkUl5vYOCPWdJvY/M0COw+CIqNL0EI5VjTf4onZiZeKeqE/eo8AcsQ==,iv:lcz6YjxSFU5JhPys5sgEND9n0nw2dDi3+dVzkDayO0Y=,tag:dAezI92YHWC7vlT2EE2BOw==,type:str]
|
password: ENC[AES256_GCM,data:+zTZydXQhJNoPd5i7DDkmzp6C6lxyLx7abyDj4E1tdFUlWGqtFbQUQ==,iv:z5JM00MiNu1U3dWMbYy1DS7++D+ezdRCudufhDqWXNo=,tag:WWfLEPix+6eguUIVNMav/Q==,type:str]
|
||||||
username: ENC[AES256_GCM,data:XJRhXHPW,iv:jN/EKRRpPXtMS4OzoE9DqdohcVpTchBUVOKSbI1J0dE=,tag:/uSBDd/uYpMx+9qdFkIeXQ==,type:str]
|
username: ENC[AES256_GCM,data:aSkTrfeJ,iv:QqUrhzGvT7qbwCggZwpugdD2eRgig+fA3812x2oX54U=,tag:5sNY9+OoEDDhtYMe8w1ubQ==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
||||||
enc: |
|
enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQYWh6Q3p3djd4Q09wUXhG
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBvekNFdXNDV3Zzdllockw5
|
||||||
R0M2Y3NGTGd5SUJyM0w2bnZ2aGVGTFNPczBzCnhVWVVtQ2ZRRTJiazMyTEQzQTY0
|
aFAyYm9zYUZzVFNZUENDODFLc1phWW5RSWtVCjRFSDdlaDBDRnIwMlp4RDN1YXZu
|
||||||
Ulo1cVBBWjlrRkU0K0pNa1BuYlFTOEkKLS0tIE9yZTYxNkhTakE0bzNsemNIV0ll
|
a0cyVHNNdVNDUW43UytOVGVyRGZ2aVUKLS0tIFFEeGtuVVRkUDNmaC9IRDBmOTVV
|
||||||
c0c2R0lDdUNaT1dxSHNYZFh4UVVnQkUKhn0SbMrmeVwGsdn8O24/kBkNZMBp6J3S
|
amJ6OTJvc0EyaXZTcHhHeXA5QTF6RDQKL8UiivxcPu2dKMpJRiFw58SZpX0Qc+WQ
|
||||||
CeG4Cb7Jj43Sd9D2vClMPVtXWS1POEPeXyAoQ0AfII/Yw6UzJcADNA==
|
P99bAZq/d1EwlYdjta9MRd4Ie04D+EcZtA8+F7t+XCby4gvkS6xxRg==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2026-05-01T18:44:47Z"
|
lastmodified: "2026-05-01T19:01:27Z"
|
||||||
mac: ENC[AES256_GCM,data:dsHcOdOeJivq744GvQc1PvRxt9V7L8x66Hot9JwMaZb5trjUrmEMh4Pd44HvDEMZIaQ/Y1TU8bT5eN1ODX22LJ6rA1hifXZa1FaoO4HmG2oHOkcad899YkmXS2Imn+15N9WAPUaL/xnNDD3ckVwIox2ZWP+UcUBo4BSds5GFe24=,iv:AeBbXufM9OD6mAYtvp9JuCTArCFE9Cz3DqqZETu6ylQ=,tag:GDuLIsl1Sj0yQzD5VnHMLA==,type:str]
|
mac: ENC[AES256_GCM,data:jyfmrXB3nYTxGCog4i1kUZjY6xMhfLppkZDY+Bv6cevrXmLR1bDFkvt8suaOl0MAFkoBpvSkVNLC2riRnbHTf7GwRgY6AYTAKQAoRtuENe4sXL7ph9Brf3MkGsxguf93JKmL6QkokC/EEVW18/14iLTDuLb8+UhS3r3dYlUCHHU=,iv:bQFMtgCgeR0b6VLyS3v1Fn6WGh2qqga8EMBkPYNS4h8=,tag:Ji3UgaUVWFp2iwhZKYLDbw==,type:str]
|
||||||
encrypted_regex: ^(data|stringData)$
|
encrypted_regex: ^(data|stringData)$
|
||||||
version: 3.12.2
|
version: 3.12.2
|
||||||
|
|||||||
@@ -4,23 +4,23 @@ metadata:
|
|||||||
name: immich
|
name: immich
|
||||||
namespace: immich
|
namespace: immich
|
||||||
stringData:
|
stringData:
|
||||||
db_host: ENC[AES256_GCM,data:+GeHxWkxBjbKZZudQ6g1iITfhqrjfZsSu/PImlxhDiIIZ1aCPDYstT/s65QqWw==,iv:MkyRzB9/+Z7iWPIRrhbGyPeDRaoy3o4zFRX48cakLtk=,tag:vnHRcM1PPq89wmGEJWNupQ==,type:str]
|
db_host: ENC[AES256_GCM,data:2MV9dErTC4Di9qFUZtWVAc2ad6/ElQX5uDKflHjO/phm8aoDDE12w2ty12z08w==,iv:+P1yYKMheueCmcwUzYNoYOccoqLXlvbimIF8+k0u51M=,tag:ApnYW9n+qMGiQ6oRoVI58g==,type:str]
|
||||||
db_name: ENC[AES256_GCM,data:/RsDzsLW,iv:UBLaqFGrlcXL8jT4U+zyImU9vYCupA9gBvZc6BxrwBc=,tag:zmg7DsqE5kqQlpKWc8n7Fw==,type:str]
|
db_name: ENC[AES256_GCM,data:KcPMIVfj,iv:FtgrUX82DHNP6GjCt/Gs2P6dvc2JhmwqADlKAhneCgg=,tag:ifUR93N/OcO/DqRXwccRuw==,type:str]
|
||||||
db_password: ENC[AES256_GCM,data:qRzvebXnfz010AXrw5juFtw34uaaPj7qMBb6CjrstpqCKHQvWyycbw==,iv:5YG9fYuiNsCsGRE7o5QqYFKFLsuv8YiminlaR1VZhAI=,tag:Wn1rdOprM41dZBwMW7kUUw==,type:str]
|
db_password: ENC[AES256_GCM,data:amJjSCHVwdtg84H2u8waUUcs7PqBJc6vcjwUFI4oBjGG6ZOJuEZirw==,iv:CmXl4Del1DytyK0oj/6XjuY12wJT2NB/Ewwaa6bje6E=,tag:a+5BFIvhmC+CqhkXbOrvYw==,type:str]
|
||||||
db_port: ENC[AES256_GCM,data:hNHEPg==,iv:JAdm4zl+tgWhMimq+B0F1dkcIhAfU0F410bPq55cYw4=,tag:XiXgnNf1gY8/p3Oe9gjF5w==,type:str]
|
db_port: ENC[AES256_GCM,data:ZCrUVA==,iv:VcBzsDkRKOBCApIfDgO9D52Z3CBRvW+THaViTe1sIy0=,tag:OTrZiW+1KJ7rQob3jzwO6A==,type:str]
|
||||||
db_username: ENC[AES256_GCM,data:6PhAJz2c,iv:/VOD4rrccuGdWLyS507bVPsnHtTZNsZmME2QRtG0WZE=,tag:wDo3aCK+QipBbGYJ8F0hEQ==,type:str]
|
db_username: ENC[AES256_GCM,data:6yv3/Naz,iv:CgoU6FWdaBGqOC+B0lLAJSCvOmd3Lm4jNTP8hAAiCwo=,tag:UNYZj4aUTL+t2oKzobVE6g==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
||||||
enc: |
|
enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrMGxRNDJFM0RveGM5NlFr
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB5Q3hBV2dQTzhEMDBvbTl2
|
||||||
VWFVRnBpczFCMVgySGtzUGM5NjNyYkw0TURnClh0a3c1S1RFRGdQMU0rVmRQNEt1
|
eEFBQndkR0lOcGpxSDZwNzlMa1IrbDlmYmdFCnVJMGo5cThqRng4VnRjS2x5aWVS
|
||||||
UVQ2eDR5enVoMVdJcHFzTDJ1cVNLTEUKLS0tIGlUUnhsWGxaWVhSbklRR0tHUzRT
|
d3JnOGlQZTJ0aDFFSUlwRTFjNTNUNFkKLS0tIDdmNmpRSi9hYno4SmYxZ0dkZWNG
|
||||||
UC8zV3FuSVBvYUtjUUpTbTV5OFNBY1UK3xfeL0uv0fJ33XPfETwvw5W7z+sLeEXb
|
UWtOZFJuK1M0anQ2VWpNd29hQzBlNUkKBG0OgcOgBDm1m5a5ZksMXrhpXitA4X+E
|
||||||
YvENLg+wcJ+t288ofDRM339pTuAazNaXJn1j1HhHNw7BVZhr0Z47jA==
|
gX0CiMjFZ88jpbgAmp+i8McoXB3Pgs5otO+qX9gccWe3SEQet+CFWg==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2026-05-01T18:44:47Z"
|
lastmodified: "2026-05-01T19:01:27Z"
|
||||||
mac: ENC[AES256_GCM,data:pCIEi0jM9O9PTHjzlLEQncAy/RWOlHGAQvav7H43trwMZZmj2aJcqGfu0FkO0iubZ/cqCmobvhHgCSDBVTH+G5s4eCcWOMTz4LrQ82pi56FYEVW91Bq23L/53pyhou6t+5cguGtyFqC8RGe5ATzeg8f5x6Nj225zRNszu1x1R54=,iv:OT+s2pEsxbc4HmsoMDkPO/EOB6EgOxDug65HySzgUMs=,tag:IeYBZpJqMqsFJ6NZ5LKKww==,type:str]
|
mac: ENC[AES256_GCM,data:siCjV+Z5YLlwzfcdjO1+FoXfWW0LLA4VwxQrqaAAE6Q6BZFkXZD83l9mDyXKkya93oOwwVNPmcZyqoJpRwpddA8Lhh/zh6LkWtAhK9gCk4/B33w9iq/TbWS9AJsePrgSjXuSO8KNUl6SOIp6xAMZ7maUj4CIGic+8Z+g149Bwxs=,iv:4HlnGoesdg1Ui8SPI4mNq1FfART9+h8qsVdMw2rgKns=,tag:i4XyPWRZrc2emJsT9Tjnlw==,type:str]
|
||||||
encrypted_regex: ^(data|stringData)$
|
encrypted_regex: ^(data|stringData)$
|
||||||
version: 3.12.2
|
version: 3.12.2
|
||||||
|
|||||||
@@ -4,20 +4,20 @@ metadata:
|
|||||||
name: linking
|
name: linking
|
||||||
namespace: linkding
|
namespace: linkding
|
||||||
stringData:
|
stringData:
|
||||||
supe_user_name: ENC[AES256_GCM,data:vhWZevOo3I38ovyEcjMAWqI=,iv:tJBB8q/j++EeBh9xkbV8b0Z4Cjv+FfAhCMvcvuCNHiU=,tag:TaNZD57gc4YPC0F9XMG9Zw==,type:str]
|
supe_user_name: ENC[AES256_GCM,data:u67lwRTU4J5IxQazkFhtY6M=,iv:V7SgzZdRzYbt0Xiprgz4eR5tSR3PMFmArJ/1QN7JFOc=,tag:4hTpjlEyoNoOwNkr/pCEFQ==,type:str]
|
||||||
supe_user_password: ENC[AES256_GCM,data:3AmIPdvgT9Sm3NnBZOrNwavqufZ8qMDF2mmArGRZu0E7BHh+ACdA4va1LWU=,iv:BneAVoeEkRp1JxKqMuwqld8fq5BEWCCtPDGUId69egE=,tag:swsQQhBmahluZq104KPs7w==,type:str]
|
supe_user_password: ENC[AES256_GCM,data:bO8IYw8pPB4HrAow9iJXF+mTQqYnWawMh21I/ivgIDVVD+zn7TpLGJgbWIg=,iv:fybrYsAIsdGUqQzcLmutlsR+K+kJ4FVZydaU2f+j6yg=,tag:4VfnVxMswCh8poqrV3vdvw==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
||||||
enc: |
|
enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBiK21KOHlwemhCVDVVRnVh
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAweU9jN3Jpd1RSaFkreVM4
|
||||||
YTNJZWFsUGRsZ2RrQmRTSGdMbmZMQlRYMlRNCnFMR2VZd2dCY0p4SjR0NUFlT3ZM
|
TkY3WFdUUmhQY21rcWNvQ1dIT29iNG5SL0VJCm1xeDJ1QnpJMkJLUUtrU0FyN2kr
|
||||||
VW5oa3Q5K3EyOW9KMWd5TlZVWnVBd28KLS0tIGxOUDBQMllaY0pxRWFhZHRiZ292
|
bzR5U2pxM0JiNDN0T0ZNcXZVT1NOUXcKLS0tIFU3bGtCNG8wQUJjTWlwUTNCSVpl
|
||||||
d014VjIveFprV1VzSWJZU0FPeGNTU2MKsmNy2B8d+RnaOAQptvinUGSly/tDhfne
|
OG9NWTRHUWxpM2VEN2s1VHZuRm5OUXMKwKC/dAJIwHNM8aCdjhLn6teFRMQLfHx5
|
||||||
oaymAmk4Ekn455auBK/mAez641hJleYmUYpSfNQP6JyEYgrQBHfbfQ==
|
jK6RLcMmplqYzLCStt6dlLjwIwbDbCpMpY5v9vrwHXin8lN2DPgygQ==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2026-05-01T18:44:47Z"
|
lastmodified: "2026-05-01T19:01:27Z"
|
||||||
mac: ENC[AES256_GCM,data:6tM/koVtZU1FWhNQ7w9Rbksu/tbjEEErgtxtJPjPjMtE9bfdtSd+vpojS2haZ7UKmfEwT/jUN/nSdtQ9ktdKpVqDx0S9SuQ6fhToIgdrKQyHO/CGBzLSrWl32OhB9gdLajGlpINi2MTjQ1EjudgDgovhg5TBBEwFU3AeFuwtNNo=,iv:v7XQiE5JV9raVCvfGf7x+BomPHAKgHxwU/uldX7Q5+M=,tag:B/mwaoNfWjLQZMRzxnIgMw==,type:str]
|
mac: ENC[AES256_GCM,data:W3XJB7kXMPZgFGL7OJ4/9iNpPujvbtjfVglN/WfQ3FpuMcnH088DHg7UKN9D0XdtG5UnSLGhF/OxuumQq2tKUs3Zvnr2YjBiAGf2XGbqEEpiW75dZMSVp/OcdR9kjGOkSxucuPN8NlyV2799wQmBoAOq+C6zejNNCWMuZAGRQnM=,iv:rAiyCWR9LOPtMVUckWMfxXWd2e8eSl/CG/nyWFGUFQ4=,tag:SEtc82xE4SU7jfYTJOEoYA==,type:str]
|
||||||
encrypted_regex: ^(data|stringData)$
|
encrypted_regex: ^(data|stringData)$
|
||||||
version: 3.12.2
|
version: 3.12.2
|
||||||
|
|||||||
@@ -1,22 +1,22 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Secret
|
kind: Secret
|
||||||
metadata:
|
metadata:
|
||||||
name: truenas-csi-api-credentials
|
name: truenas-api-credentials
|
||||||
namespace: truenas-csi
|
namespace: truenas-csi
|
||||||
stringData:
|
stringData:
|
||||||
api-key: ENC[AES256_GCM,data:ZW9RMpi2x2os0hDIKu2rUvJJvOgNiOTzT909qm3w9JWRmO91gLI3wo6Gk4gKDzSAM0W12OHFHuP+Dxu+qYjKDrce,iv:cwosmbH9PNOS1YwVNwE66UxTZMRfls3be+bd0bDu9YE=,tag:1YJToI18Jk4VvKsa0PPaYg==,type:str]
|
api-key: ENC[AES256_GCM,data:vIufuqaIdNQH53pLCPfdi7cYIJlqwuHRbzUshgVJDw6Ayw9fPcVj2Ctp0bY34toHgmMjghYs4GdEtiQJz8BithRf,iv:J1woXagNbwqkjNTerrYjvCDQn/+FpvI25ow/szOCxN0=,tag:mRMKq2Nrs8qnyoQRYkIBtQ==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
- recipient: age1lelpkv7u2xh5wezuwp09fmf9gsa8gp4rzy92jz0t203au82a7u5sutsjwa
|
||||||
enc: |
|
enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBtUmYreGhzaWNteUI5NklM
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCbDhQMmMyNGlUTW9ZSVla
|
||||||
cmVSbUVZd1VuL1hURkUvdGc3RFlYamZ0c1dzCitSSkkwc01WR1QxbmVzNXJVc1Na
|
MHF3Sm1lS2prVGlFMnVlSWFYaENhUGlBa1I4Ckw0N0RJUTBnTk53eVFFZXZyQmEy
|
||||||
NEVybzAzS1N0SnQ3RXozUEhlYko3Nm8KLS0tIGdYbWhjUUx1anRNbEx5YTMvazdh
|
Sk1rLysxMnRYNVJEZzdoS0xTVXF4eTgKLS0tIFZZZ3lJRmNSOEVocG54TWd2bzM4
|
||||||
OFVYWHNOcjZjZXo4Wi9XR1dYTlEvQWsKJWRfpG5MUzIqKmQaUIvHbveU9H2qRAmO
|
cDVMM3JoTzMzckhpSVA3eFRwR2dnZ0EKD9PygzmR3aAhVIqKQXkmu4acE7Vq5QPj
|
||||||
Y60WwE08GnqXDi6LMHRy0pQQ65gZRtbf5t1aDZ5+zwCInlLKFxBeEg==
|
alS3B/qmLWKIt2jaRlB5hpCK8DXKT4321dRQ0qE113sIPeL3IKxbEg==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2026-05-01T18:44:47Z"
|
lastmodified: "2026-05-01T19:01:27Z"
|
||||||
mac: ENC[AES256_GCM,data:51PPHW9QcGdBgSKoN3Il6QHXzV5sIACgcMXY9BB+eVFK0kNbBFrl0Ytvpl4ec+z2l6+bPIXzj7BHSTOWRUwDTt6tkMjO0/L1/6YTS5rZ4YuPCBlbtXLjqOYHsd3hyCqTTqYKrPBXB+BLaDgI74qw5Uk5w9wSztCh4JUj/Ac097w=,iv:79umLJypCW0adN7dUM3jIS2djX4TKSlmJCL0olftimc=,tag:sFjLm04irHOUGis693c4iw==,type:str]
|
mac: ENC[AES256_GCM,data:m4dQ2as1gWh/C29r4oP7Gdoz1a+E+nSeT5qqA2hjegdMb/RQDh0qt69Cb3cVPXtguM0gi9D7toajHUAWwxCwrYGECtKtuA7VA38aRKheUHUJ+qNo6THzBcZRru3vFNgWwoi4r4fQbX97z92vTehblANm+YPIjK/orwfaXPsQA0Y=,iv:BOVDv+zreFJdbfrCySfip7BXe6FCKoEdGXccBoJ4SV0=,tag:soco0NPvlLKh6DtZQ4Gcfw==,type:str]
|
||||||
encrypted_regex: ^(data|stringData)$
|
encrypted_regex: ^(data|stringData)$
|
||||||
version: 3.12.2
|
version: 3.12.2
|
||||||
|
|||||||
+2
-1
@@ -12,6 +12,7 @@ import (
|
|||||||
"danicos.dev/daniel/homelab/pkg/longhorn"
|
"danicos.dev/daniel/homelab/pkg/longhorn"
|
||||||
"danicos.dev/daniel/homelab/pkg/monitoring"
|
"danicos.dev/daniel/homelab/pkg/monitoring"
|
||||||
"danicos.dev/daniel/homelab/pkg/root"
|
"danicos.dev/daniel/homelab/pkg/root"
|
||||||
|
"danicos.dev/daniel/homelab/pkg/truenas"
|
||||||
/*
|
/*
|
||||||
apps "k8s.io/api/apps/v1"
|
apps "k8s.io/api/apps/v1"
|
||||||
core "k8s.io/api/core/v1"
|
core "k8s.io/api/core/v1"
|
||||||
@@ -26,7 +27,7 @@ func main() {
|
|||||||
hydra_infrastructure := map[string]stack.Stack{
|
hydra_infrastructure := map[string]stack.Stack{
|
||||||
"monitoring": monitoring.Stack(),
|
"monitoring": monitoring.Stack(),
|
||||||
"longhorn": longhorn.Stack(),
|
"longhorn": longhorn.Stack(),
|
||||||
// "truenas-csi": truenas.Stack(),
|
"truenas-csi": truenas.Stack(),
|
||||||
"cloud-native-pg": cnpg.Stack(),
|
"cloud-native-pg": cnpg.Stack(),
|
||||||
}
|
}
|
||||||
for name, s := range hydra_infrastructure {
|
for name, s := range hydra_infrastructure {
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
---
|
|
||||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
|
||||||
kind: HelmRelease
|
|
||||||
metadata:
|
|
||||||
name: longhorn-release
|
|
||||||
namespace: longhorn-system
|
|
||||||
spec:
|
|
||||||
chart:
|
|
||||||
spec:
|
|
||||||
chart: longhorn
|
|
||||||
reconcileStrategy: ChartVersion
|
|
||||||
sourceRef:
|
|
||||||
kind: HelmRepository
|
|
||||||
name: longhorn-repo
|
|
||||||
version: v1.11.1
|
|
||||||
interval: 1m0s
|
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
defaultPool: datapool
|
||||||
|
iscsiIQNBase: iqn.2026-04.net.ts.orca-uaru.apex-truenas
|
||||||
|
iscsiPortal: apex-truenas.orca-uaru.ts.net:3260
|
||||||
|
nfsServer: apex-truenas.orca-uaru.ts.net
|
||||||
|
truenasInsecure: "true"
|
||||||
|
truenasURL: wss://apex-truenas.orca-uaru.ts.net/api/current
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: truenas-csi-config
|
||||||
|
namespace: truenas-csi
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
metadata:
|
||||||
|
name: truenas-csi
|
||||||
|
namespace: truenas-csi
|
||||||
|
resources:
|
||||||
|
- namespace.yaml
|
||||||
|
- config.yaml
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: truenas-csi
|
||||||
|
spec: {}
|
||||||
|
status: {}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+14
-15
@@ -18,7 +18,7 @@ var Secret = struct {
|
|||||||
Name string
|
Name string
|
||||||
APIKey string
|
APIKey string
|
||||||
}{
|
}{
|
||||||
Name: root.TrueNAS_CSI + "-api-credentials",
|
Name: "truenas-api-credentials",
|
||||||
APIKey: "api-key",
|
APIKey: "api-key",
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -54,9 +54,10 @@ func init() {
|
|||||||
nodeSA = kube.ServiceAccount(root.TrueNAS_CSI+"-node", Namespace)
|
nodeSA = kube.ServiceAccount(root.TrueNAS_CSI+"-node", Namespace)
|
||||||
split := strings.Split(root.TrueNASURL, ".")
|
split := strings.Split(root.TrueNASURL, ".")
|
||||||
slices.Reverse(split)
|
slices.Reverse(split)
|
||||||
|
config_meta := kube.NewMetadata("truenas-csi-config", Namespace)
|
||||||
config = core.ConfigMap{
|
config = core.ConfigMap{
|
||||||
TypeMeta: kube.ConfigMapMeta,
|
TypeMeta: kube.ConfigMapMeta,
|
||||||
ObjectMeta: meta.Meta(),
|
ObjectMeta: config_meta.Meta(),
|
||||||
Data: map[string]string{
|
Data: map[string]string{
|
||||||
Config.TruenasURL: fmt.Sprintf("wss://%s/api/current", root.TrueNASURL),
|
Config.TruenasURL: fmt.Sprintf("wss://%s/api/current", root.TrueNASURL),
|
||||||
Config.TrueNASInsecure: "true",
|
Config.TrueNASInsecure: "true",
|
||||||
@@ -69,24 +70,22 @@ func init() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func Stack() stack.Stack {
|
func Stack() stack.Stack {
|
||||||
controllerRole := controllerClusterRole()
|
|
||||||
nodeRole := nodeClusterRole()
|
|
||||||
kz := kube.NewKuztomizedStack(
|
kz := kube.NewKuztomizedStack(
|
||||||
meta,
|
meta,
|
||||||
map[string]any{
|
map[string]any{
|
||||||
"namespace": Namespace,
|
"namespace": Namespace,
|
||||||
"controller-deployment": controllerDeployment(),
|
// "controller-deployment": controllerDeployment(),
|
||||||
"controller-service-account": controllerSA,
|
// "controller-service-account": controllerSA,
|
||||||
"controller-cluster-role": controllerRole,
|
// "controller-cluster-role": controllerRole,
|
||||||
"controller-binding": kube.ClusterRoleBinding(controllerRole.Name+"-binding", controllerSA, controllerRole),
|
// "controller-binding": kube.ClusterRoleBinding(controllerRole.Name+"-binding", controllerSA, controllerRole),
|
||||||
"node-service-account": nodeSA,
|
// "node-service-account": nodeSA,
|
||||||
"node-cluster-role": nodeRole,
|
// "node-cluster-role": nodeRole,
|
||||||
"node-binding": kube.ClusterRoleBinding(nodeRole.Name+"-binding", nodeSA, nodeRole),
|
// "node-binding": kube.ClusterRoleBinding(nodeRole.Name+"-binding", nodeSA, nodeRole),
|
||||||
"node-deamonset": nodeCSI(),
|
// "node-deamonset": nodeCSI(),
|
||||||
"CSIDriver": CSIDriver(root.TrueNASProvisioner),
|
// "CSIDriver": CSIDriver(root.TrueNASProvisioner),
|
||||||
"config": config,
|
"config": config,
|
||||||
"nfs-storage-class": NFSStorageClass,
|
// "nfs-storage-class": NFSStorageClass,
|
||||||
"iscsi-storage-class": iSCSIStorageClass,
|
// "iscsi-storage-class": iSCSIStorageClass,
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
return kz.Stack(root.TrueNAS_CSI)
|
return kz.Stack(root.TrueNAS_CSI)
|
||||||
|
|||||||
Reference in New Issue
Block a user