mirror of
https://github.com/k8s-at-home/charts.git
synced 2025-03-12 20:16:05 +00:00
Compare commits
1175 Commits
lidarr-9.0
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
2463dec153 | ||
|
458918f6b5 | ||
|
eece1368af | ||
|
c2491608c1 | ||
|
f95784018a | ||
|
9ebe6d0700 | ||
|
7f68a483a3 | ||
|
da8b09cf86 | ||
|
1952cf8c8a | ||
|
77d4398e0a | ||
|
fd8539c2ba | ||
|
638c0ab5c5 | ||
|
0e12f5b54e | ||
|
5c394e807d | ||
|
a936168c5e | ||
|
1d3eab6178 | ||
|
8d8dba0f15 | ||
|
2f55aac1a8 | ||
|
95f4f55a9f | ||
|
1c4640c1c0 | ||
|
a6bf8e1d92 | ||
|
0c0b53489a | ||
|
526a6c79b0 | ||
|
54f03bc19e | ||
|
b00dcc37c1 | ||
|
cf3fcc4089 | ||
|
34f0468625 | ||
|
7990906462 | ||
|
5dd0cd93d2 | ||
|
14c7624fce | ||
|
645a857f7e | ||
|
770390c59f | ||
|
d6d28bf27b | ||
|
402fa10cb1 | ||
|
ed357b1f13 | ||
|
535821d65a | ||
|
fcfe860c7a | ||
|
a4d622cbb3 | ||
|
fa3028961e | ||
|
155a9558b1 | ||
|
e2cba2c602 | ||
|
c30b6976c3 | ||
|
6574501569 | ||
|
c32c6a24d8 | ||
|
7288861d79 | ||
|
c679761009 | ||
|
24f6568867 | ||
|
c1604d9ec8 | ||
|
144fd832f6 | ||
|
f7afe9ca37 | ||
|
948e0dc592 | ||
|
e6655559c6 | ||
|
014938a1b3 | ||
|
3143732494 | ||
|
4925d1f08c | ||
|
ad814f200b | ||
|
80cfaabf86 | ||
|
89a5f49e15 | ||
|
02c96ebc05 | ||
|
1cf4fdcfd0 | ||
|
cc371396eb | ||
|
509bc55eec | ||
|
418e6cea1e | ||
|
9c1e76f8b1 | ||
|
c6de36c34c | ||
|
1bf86d16d1 | ||
|
d4926f5a70 | ||
|
d068e85edc | ||
|
f65e42910a | ||
|
7bcfb345b2 | ||
|
f0345c078a | ||
|
02a7f4e62e | ||
|
d0bc990f67 | ||
|
8d77a215aa | ||
|
81ca3d5d06 | ||
|
4e9ed6d6c3 | ||
|
acc39e1d4b | ||
|
95a6930b67 | ||
|
db2d3eca46 | ||
|
f16e4a6295 | ||
|
3ba86144eb | ||
|
9495b968cd | ||
|
319503daaf | ||
|
ff8a6b3237 | ||
|
c28612368c | ||
|
802a863deb | ||
|
72dbc21972 | ||
|
4ec0145538 | ||
|
9d6206ebb9 | ||
|
c7c3dfa100 | ||
|
ce43362859 | ||
|
caa523f29a | ||
|
6d3a74356f | ||
|
c209d7415d | ||
|
465ec021bb | ||
|
e2bf88265a | ||
|
0ed409014f | ||
|
83420cbef9 | ||
|
0b409cb25d | ||
|
95209955ec | ||
|
b53babbfe9 | ||
|
baa62ae091 | ||
|
b834072bc3 | ||
|
0df44560c5 | ||
|
07d6c67695 | ||
|
8ed1c8c575 | ||
|
3203fc1e09 | ||
|
5d0765db75 | ||
|
8bbf2dfc3e | ||
|
19357c418c | ||
|
829d17511d | ||
|
cdec16007d | ||
|
f6d88b41f2 | ||
|
bc859d8d17 | ||
|
9e7b43170f | ||
|
6cece45f1e | ||
|
e09b86ac82 | ||
|
0bfd054a6a | ||
|
84127b59d3 | ||
|
9da60809f4 | ||
|
3a97cd13e6 | ||
|
7ed07024e0 | ||
|
fffd91fd61 | ||
|
53a7dc2c50 | ||
|
30edb42ead | ||
|
8042cc87c6 | ||
|
73d499922c | ||
|
bb3612fff0 | ||
|
359a05eadf | ||
|
c6ceb4994e | ||
|
dbc0a46faf | ||
|
70a20f3881 | ||
|
6dee535dd6 | ||
|
f62f4cc93c | ||
|
0dcd16947a | ||
|
718a9dc3b9 | ||
|
7c1a567093 | ||
|
787fb5fee3 | ||
|
735eb99a1b | ||
|
7f042d18cc | ||
|
ca8b9d9a68 | ||
|
03a61e4283 | ||
|
9c2e650a53 | ||
|
d592b0035c | ||
|
4ad9491cb1 | ||
|
02621d64b6 | ||
|
3b54c90168 | ||
|
d35052eb8a | ||
|
26aadd37e8 | ||
|
6d73f60e6a | ||
|
35fdac841b | ||
|
8e29cf2920 | ||
|
2df2224ea6 | ||
|
da002fda82 | ||
|
d5ce3d0906 | ||
|
44add29118 | ||
|
bcfc817d6e | ||
|
9ef09d7bdb | ||
|
36ef9fc534 | ||
|
fe4c265938 | ||
|
d2f18a6fb9 | ||
|
4cad496822 | ||
|
795f747866 | ||
|
1befa1e65f | ||
|
5cc6edc0da | ||
|
5bc8abe09c | ||
|
b3142f8547 | ||
|
a1ad4b8ce4 | ||
|
b68d5ca4e6 | ||
|
93b52f1910 | ||
|
7a849b1e16 | ||
|
5cb613c87a | ||
|
9246ef58dc | ||
|
432b5db9d5 | ||
|
41da804d60 | ||
|
f1509e7a59 | ||
|
770bdfa9ca | ||
|
0818e384a9 | ||
|
22ec029d47 | ||
|
e39cc70589 | ||
|
43c99b2eca | ||
|
27649b40bf | ||
|
88544af340 | ||
|
e59cde5bb0 | ||
|
9bbe007af5 | ||
|
55a2925851 | ||
|
7f38be11d9 | ||
|
af94b06ad9 | ||
|
25f4f3bd54 | ||
|
be37d1dc3a | ||
|
bb420441c9 | ||
|
a91e7ba232 | ||
|
08d70d2b60 | ||
|
9d91ac81c0 | ||
|
82e5e914ac | ||
|
11bc80140e | ||
|
37c0bf2fba | ||
|
a1e59f2ce8 | ||
|
469d3d0d96 | ||
|
f868f0f0e1 | ||
|
78c260f39e | ||
|
ddd9e2f85d | ||
|
3cf5a1b679 | ||
|
f4dde05b33 | ||
|
894e49f6ab | ||
|
5da9ddbb9c | ||
|
7c8381234f | ||
|
9cee080c8e | ||
|
037dde5049 | ||
|
31f76182c0 | ||
|
c8c3826973 | ||
|
7bb7557710 | ||
|
33f07cea4e | ||
|
862610b516 | ||
|
93406f9b93 | ||
|
670659e035 | ||
|
b02b4eefdb | ||
|
16accfa8c7 | ||
|
2a11166887 | ||
|
556d1a454f | ||
|
e30fab9184 | ||
|
4e8db95e48 | ||
|
31c1b26010 | ||
|
39814b662e | ||
|
2b68d4b40e | ||
|
bac9ba2906 | ||
|
2ce3544796 | ||
|
2b097b5f78 | ||
|
fba4a8d90d | ||
|
b1dca7b790 | ||
|
cb695b3804 | ||
|
8eff184f7d | ||
|
dc30fbad17 | ||
|
0957637d89 | ||
|
1d41fdc931 | ||
|
f83027a4be | ||
|
76ce1af9ad | ||
|
4409099438 | ||
|
f77d9f5d90 | ||
|
6df48910e4 | ||
|
78abbef0b0 | ||
|
ffbfbdb8bd | ||
|
6586b17b51 | ||
|
7d3df61980 | ||
|
ef74abbe1f | ||
|
17b9317ad6 | ||
|
e7696b46a9 | ||
|
729be86fa6 | ||
|
269ab2c0ad | ||
|
4327aa0297 | ||
|
26b01f90c4 | ||
|
97d17c3e77 | ||
|
49c28640f9 | ||
|
80840cd907 | ||
|
405da28cd3 | ||
|
c0e176fcb9 | ||
|
aaedd037d2 | ||
|
dce7d51afa | ||
|
12d8790717 | ||
|
44056e680c | ||
|
0a0c2ef87e | ||
|
0564e120b2 | ||
|
fae94f6e36 | ||
|
9a5d3b2e2a | ||
|
3a47a625b6 | ||
|
f49a79bdf6 | ||
|
b12a8d1041 | ||
|
738a907a5f | ||
|
ca702a62f3 | ||
|
932f7aa9b4 | ||
|
29f0d11b5d | ||
|
cfd656a76f | ||
|
a7cc4fb3d4 | ||
|
ca03d11676 | ||
|
035ed59188 | ||
|
375ee9a796 | ||
|
3e94aa60ef | ||
|
2776e41c99 | ||
|
b3fbb33f88 | ||
|
3d590ced65 | ||
|
147378866f | ||
|
10f2dca826 | ||
|
5bccd66201 | ||
|
7d70766735 | ||
|
933e8fe3a5 | ||
|
b7b712c6ca | ||
|
eee90ebd7c | ||
|
4aed6aa920 | ||
|
d7895d8672 | ||
|
66a65617cc | ||
|
506dccddc7 | ||
|
22492639cb | ||
|
091c7c735b | ||
|
4c4c47d415 | ||
|
8b9568109b | ||
|
82b28dda47 | ||
|
567758c75b | ||
|
a93974a6d4 | ||
|
da65604a53 | ||
|
e420963bdd | ||
|
b9634fda7c | ||
|
9591420716 | ||
|
cb104ea594 | ||
|
6d5ee6ce91 | ||
|
e24bb4275d | ||
|
dc541c7bdc | ||
|
246c7f41a8 | ||
|
b9ebbd8b93 | ||
|
989083decc | ||
|
32e06cf5ff | ||
|
21895621b8 | ||
|
3defc35d4a | ||
|
d65124ec8b | ||
|
ef813bda6e | ||
|
5ed3273609 | ||
|
b0fc5e52e3 | ||
|
f5a6c52ccc | ||
|
515e0aea0f | ||
|
b3308eb940 | ||
|
710e873e7c | ||
|
4062e4730e | ||
|
f5a80e0a45 | ||
|
c7cd3c30de | ||
|
4ef4259a96 | ||
|
fdcc8a6dd4 | ||
|
5c62fc8d5d | ||
|
95a834e73d | ||
|
0890ec9196 | ||
|
0ba34d5d4b | ||
|
a572689e16 | ||
|
07366a2313 | ||
|
9edf3fc002 | ||
|
bb3e59cc86 | ||
|
b78794d3bc | ||
|
85dc5a826d | ||
|
c500db777a | ||
|
57f9aabc7a | ||
|
3ce30c8ac3 | ||
|
e2767c00e2 | ||
|
d4e1f124d1 | ||
|
f46a8d08f1 | ||
|
458aaea9e0 | ||
|
40ac623e3c | ||
|
1a7b78f5df | ||
|
471101b5b5 | ||
|
5243f370f5 | ||
|
703559d660 | ||
|
d19e6c1a89 | ||
|
cf35450ca5 | ||
|
e92fd316b0 | ||
|
ae81ca4b5a | ||
|
fb6c58165b | ||
|
49077c43e0 | ||
|
e6a8fc7caa | ||
|
78e8e2d29a | ||
|
a83aba1e2a | ||
|
997b3c13db | ||
|
92105a4ae2 | ||
|
593cd38508 | ||
|
e33bde7446 | ||
|
dd22935f93 | ||
|
6ae2682e0b | ||
|
319fc288c7 | ||
|
d784e69c85 | ||
|
26c33aa8f1 | ||
|
655caff53b | ||
|
bc3811ac01 | ||
|
eaec12cc82 | ||
|
7bb050d177 | ||
|
f7a4cddaee | ||
|
6b276162e6 | ||
|
9a8fe0e854 | ||
|
7b85e388a1 | ||
|
1d89c3f86e | ||
|
236bd21e02 | ||
|
dc60a1911c | ||
|
a10c53cce3 | ||
|
7f3a976430 | ||
|
1f35105f3c | ||
|
7c19db377d | ||
|
798bfdf3af | ||
|
0fa3722295 | ||
|
e1d68c84f2 | ||
|
05af1b178a | ||
|
8856491aaa | ||
|
b5aff5e52b | ||
|
a389c0ed86 | ||
|
dddd47c090 | ||
|
10dc3ac9da | ||
|
d6c1f1f5d4 | ||
|
a4d859efe5 | ||
|
c82a11bf8b | ||
|
c439af7018 | ||
|
644bc1070d | ||
|
ed6fb93413 | ||
|
84bf867daf | ||
|
af1313a8f0 | ||
|
28236d89fe | ||
|
9a350b7074 | ||
|
d15c8e49f9 | ||
|
a377c3d2d3 | ||
|
dcb2200ccd | ||
|
715ebb37d5 | ||
|
fbf582680b | ||
|
4caa8f82a1 | ||
|
f0984b954c | ||
|
4991c13b0d | ||
|
7a6f41ba9f | ||
|
4585ca9f66 | ||
|
d73f54fbd7 | ||
|
1a0a42cff0 | ||
|
8e09367a5a | ||
|
ba355365b8 | ||
|
372312e13d | ||
|
deed7f4497 | ||
|
15ba418e8a | ||
|
bb7c421bb8 | ||
|
18c032fcbf | ||
|
1477ff26c3 | ||
|
c84b3c3eae | ||
|
f59e1af294 | ||
|
9d8ef6eee6 | ||
|
4b4e136fba | ||
|
24832aaef0 | ||
|
452c738a52 | ||
|
d77018b242 | ||
|
eedb10b767 | ||
|
e307719bae | ||
|
4d112565b7 | ||
|
00ba361853 | ||
|
eacbf95b91 | ||
|
7ee1f9914d | ||
|
4cc083d7a2 | ||
|
a33219152a | ||
|
ff26315c57 | ||
|
6851e89504 | ||
|
79b8752934 | ||
|
f18a4d895d | ||
|
edc4318a6a | ||
|
7a4b852013 | ||
|
2c01769411 | ||
|
c3cdd2b5af | ||
|
ade46f17fa | ||
|
f30da71898 | ||
|
09328441f2 | ||
|
a97785f85e | ||
|
c650ff5335 | ||
|
a587be6fcc | ||
|
2350c47efb | ||
|
d1d63ffa3f | ||
|
11d62d84f3 | ||
|
5178d5495e | ||
|
c00ab02809 | ||
|
777437a3da | ||
|
72d0df12fd | ||
|
926b96499a | ||
|
90e92b65c9 | ||
|
48196fac6f | ||
|
2523cb7b5e | ||
|
aa69f69828 | ||
|
0d229ec376 | ||
|
5475a5ffff | ||
|
c156819394 | ||
|
bb314ce2d9 | ||
|
ffe4297db0 | ||
|
ee03d09780 | ||
|
90a62afddc | ||
|
05347d1716 | ||
|
f7b54c65ff | ||
|
a7aaa5a524 | ||
|
e2bb5d8ed4 | ||
|
fbf13879b8 | ||
|
f8cbead63b | ||
|
6d51e3cf22 | ||
|
e5238adde0 | ||
|
0c3f44e3b7 | ||
|
f4a5eb4603 | ||
|
5c3101f03e | ||
|
00cc4540ea | ||
|
68b03c60fc | ||
|
7cc2b37c68 | ||
|
cc52622614 | ||
|
3f50891603 | ||
|
e8e2d25873 | ||
|
2e63e3740b | ||
|
951d2c20f3 | ||
|
34dea81127 | ||
|
c3e83ecaa0 | ||
|
4474e30af2 | ||
|
a2e26d5a0f | ||
|
574f6529c5 | ||
|
c0317251aa | ||
|
17f0578b4f | ||
|
de1d9c2580 | ||
|
356a0f2f16 | ||
|
0065e83f75 | ||
|
bbb81ffb9e | ||
|
f74e6ebe07 | ||
|
a8e0296ddf | ||
|
fc2e341c47 | ||
|
1395771b7f | ||
|
2b92555678 | ||
|
fe6ae00012 | ||
|
6e3e59fa73 | ||
|
01ca1d423f | ||
|
998aa05027 | ||
|
2a58efa68e | ||
|
54f9b87b70 | ||
|
5e5f23c69d | ||
|
19b3af8f2f | ||
|
8003e17a76 | ||
|
a101402e74 | ||
|
085bd01f1a | ||
|
b4af8c56c1 | ||
|
ee6b8361da | ||
|
1db3745ec4 | ||
|
9c4cc4fefd | ||
|
66ee00cb63 | ||
|
47deacc271 | ||
|
98a0ac4d90 | ||
|
85348178f1 | ||
|
6dd5f3ff0b | ||
|
ae9e3c02a1 | ||
|
000771d79f | ||
|
8c3edda840 | ||
|
8b2121e522 | ||
|
a3582f3c83 | ||
|
42dbe4ee4a | ||
|
8b6f481099 | ||
|
803f9433eb | ||
|
9e8aa6d2eb | ||
|
d111bcdcad | ||
|
133647a1c5 | ||
|
07bcb33623 | ||
|
523ce4e823 | ||
|
eee839e548 | ||
|
50d0d5e7c8 | ||
|
278351c2de | ||
|
85ac8697fb | ||
|
f02beeb9f0 | ||
|
b1fc8dd547 | ||
|
8f5d80ab5e | ||
|
8b37db4b7c | ||
|
7f51945eff | ||
|
49266748b1 | ||
|
78fe13e697 | ||
|
a92c96b422 | ||
|
a7da4dbb38 | ||
|
96d7dde82f | ||
|
c25ed8a428 | ||
|
edc5e8099e | ||
|
02e8b833c9 | ||
|
d887e99035 | ||
|
ba1893871a | ||
|
73bd01f394 | ||
|
6e39a0ae19 | ||
|
d704fd4583 | ||
|
c3b20c3efe | ||
|
71bb5f38e2 | ||
|
8f7ebaeeed | ||
|
efa86aba46 | ||
|
952e704240 | ||
|
baf95f7cbe | ||
|
a9e1c99954 | ||
|
771e4c2e16 | ||
|
0012fec226 | ||
|
1852e81ecd | ||
|
0d9b0db335 | ||
|
102a91160b | ||
|
23e9f33a56 | ||
|
e54d84e056 | ||
|
2e6bdebac5 | ||
|
36956c2b20 | ||
|
5614ea7c6d | ||
|
da5e7b65fc | ||
|
837a89dbd5 | ||
|
1385ad29fb | ||
|
9070817c91 | ||
|
8d94e9ef4a | ||
|
e1b5116761 | ||
|
75af05159a | ||
|
febbc4b303 | ||
|
44f000572c | ||
|
e910e72ac5 | ||
|
36b01f0e23 | ||
|
47e214967b | ||
|
4b2a666701 | ||
|
a93ac84c5d | ||
|
3ceb7c803f | ||
|
a23c17866b | ||
|
f69e909109 | ||
|
ca6bd37216 | ||
|
bab0ff6126 | ||
|
a76d6ce9f2 | ||
|
101cb5405b | ||
|
11181f3200 | ||
|
8e7885b65b | ||
|
7dfd78ed73 | ||
|
47e213b1f3 | ||
|
65189db872 | ||
|
04d9b5b035 | ||
|
2f8d9142ff | ||
|
db7b71d848 | ||
|
820042639c | ||
|
57535a1662 | ||
|
fcdd8496c8 | ||
|
9a585ee3cf | ||
|
b61de0b706 | ||
|
1ea8e6bb1a | ||
|
88d5e02aac | ||
|
a0633c4967 | ||
|
edb77727d2 | ||
|
216debfc67 | ||
|
cd9c234ee5 | ||
|
e5652e6abb | ||
|
8273953cc4 | ||
|
b91b97c5a1 | ||
|
1329aeeca8 | ||
|
2807ef0d57 | ||
|
7c1ab59c7c | ||
|
cc39287410 | ||
|
31b125c42e | ||
|
c1ab113f7c | ||
|
20a4212105 | ||
|
f072cd8329 | ||
|
d73a85fabc | ||
|
0ee5613188 | ||
|
c0da878c87 | ||
|
3c0abd663a | ||
|
5573907216 | ||
|
4cbe510d4a | ||
|
1676ae0f0b | ||
|
18fe0f7516 | ||
|
13371cfc2e | ||
|
d860835181 | ||
|
e1f44492af | ||
|
bbb4aa6c7c | ||
|
f2741f62c0 | ||
|
1ac1ecbd82 | ||
|
da1438421b | ||
|
db3f0181c7 | ||
|
24113553e1 | ||
|
5e69120579 | ||
|
92cd353c31 | ||
|
057a66d0fe | ||
|
33f27904e0 | ||
|
42740ebb88 | ||
|
1c720e3744 | ||
|
468c7842da | ||
|
e91ee11305 | ||
|
adb11019c7 | ||
|
6cfc938d34 | ||
|
ba64db4255 | ||
|
bb0adce751 | ||
|
637acca530 | ||
|
34947d84ef | ||
|
cee70404f0 | ||
|
0a1094f6fd | ||
|
cc426b4593 | ||
|
728ebbfa23 | ||
|
d979e9309a | ||
|
c1cb492647 | ||
|
f01c58aaff | ||
|
3abce5f8d5 | ||
|
fa4b5ef2e0 | ||
|
5ccef0ec65 | ||
|
4dc3408914 | ||
|
e94b5a1679 | ||
|
df2e863705 | ||
|
2afb28717e | ||
|
5d55c5a0cb | ||
|
4814919d30 | ||
|
8ac0850530 | ||
|
b898048c9e | ||
|
3320a2a6aa | ||
|
3aa177891c | ||
|
307f0a5a0d | ||
|
df3a9b264c | ||
|
0f93fa47ec | ||
|
1170d8f8ff | ||
|
eb1a4cb657 | ||
|
b451394abf | ||
|
c56d02b0d1 | ||
|
f5306e9099 | ||
|
e57fc8c849 | ||
|
b9dc4a55bc | ||
|
a82e691445 | ||
|
ce7889aae2 | ||
|
2a6a05e561 | ||
|
dca8b2d13b | ||
|
753b437f0e | ||
|
0549695536 | ||
|
9b183fd674 | ||
|
680106d7cd | ||
|
901916ddda | ||
|
020060f948 | ||
|
eb8f8cbc34 | ||
|
d27b6a9c49 | ||
|
1ae43a3e8d | ||
|
9885be3c1d | ||
|
eba5e12c58 | ||
|
58508efaad | ||
|
f3fb87f608 | ||
|
2df5ff05e3 | ||
|
f5fef88848 | ||
|
f58881f68e | ||
|
372b98f1bc | ||
|
59ea2d192b | ||
|
330fe768d0 | ||
|
f29865981e | ||
|
7b89f057f5 | ||
|
8f34266e4f | ||
|
669564d6f8 | ||
|
42422a3b36 | ||
|
2d0f83c2df | ||
|
8af40e02e4 | ||
|
917ae5b927 | ||
|
b7d45b5c54 | ||
|
63b6354a67 | ||
|
7f835947b6 | ||
|
9aa89c3c4a | ||
|
8c79f6c375 | ||
|
9bb61afb12 | ||
|
7c73a02205 | ||
|
2b17c7d750 | ||
|
0fc65ac663 | ||
|
5c56e18eae | ||
|
faec4db9ef | ||
|
c3017ec800 | ||
|
80d311f7f6 | ||
|
46df74c8ae | ||
|
34842b9fdd | ||
|
e1494a5b59 | ||
|
5491a25b94 | ||
|
24ffd592f4 | ||
|
7ad14f58db | ||
|
d314ec81d9 | ||
|
a8a67065b0 | ||
|
c34ecd5a73 | ||
|
9f99855c90 | ||
|
04e9beed84 | ||
|
379e69a974 | ||
|
e9595b94b0 | ||
|
40678c8abc | ||
|
ae5e2b23dd | ||
|
abc787fd38 | ||
|
86b05e1d9f | ||
|
977cca1d45 | ||
|
1a678567c1 | ||
|
985f4ab257 | ||
|
b750382b52 | ||
|
f57549eeab | ||
|
302bdd1b95 | ||
|
b36d90e5f1 | ||
|
5165f06ca7 | ||
|
f16383e204 | ||
|
caac991f65 | ||
|
31c36ef258 | ||
|
eb2910e587 | ||
|
1cab628960 | ||
|
4aa2b5e2d6 | ||
|
4e7b66bb3e | ||
|
bfd9b94f6e | ||
|
ff7a384e29 | ||
|
aa1ec1df0c | ||
|
b7837a8990 | ||
|
1aa5bf3cbb | ||
|
62140f8d2c | ||
|
440f518efc | ||
|
7fd2ef4f1e | ||
|
2ba410d4e7 | ||
|
e4f3894a05 | ||
|
38b0952140 | ||
|
dff8cac8b9 | ||
|
a01a23d9ff | ||
|
1d5df59f8b | ||
|
d0482adec8 | ||
|
f6beaa7fe1 | ||
|
efd1fae655 | ||
|
5c75bb4b9e | ||
|
5048d694b9 | ||
|
d3e6d22bbd | ||
|
c356d9eb7d | ||
|
7a7850613e | ||
|
90036d5f6b | ||
|
b12bbf052d | ||
|
f2982489f0 | ||
|
55ac1bf834 | ||
|
6f1690ab2f | ||
|
4e258501c8 | ||
|
18d106d278 | ||
|
bea53e250d | ||
|
83e6378d97 | ||
|
847cecff25 | ||
|
faae366302 | ||
|
480a882ffc | ||
|
dc4d6fd583 | ||
|
354f9c7bb3 | ||
|
3beb9af198 | ||
|
52afc309db | ||
|
1ab2028a14 | ||
|
10fb48fd27 | ||
|
fe6403318e | ||
|
d80eeedd4c | ||
|
2216127da4 | ||
|
9e9d39e2b0 | ||
|
be699c5035 | ||
|
2df5b026b8 | ||
|
02f1040111 | ||
|
d44819695f | ||
|
e67c4213c2 | ||
|
fdc36dafa9 | ||
|
6473218dd5 | ||
|
4d74bfc1e2 | ||
|
c7186800da | ||
|
fb898031b4 | ||
|
f1d6009768 | ||
|
3b07afaaf0 | ||
|
3b04d62f28 | ||
|
226ccc84f0 | ||
|
5d1e7d6ddc | ||
|
b9b96e5892 | ||
|
34bcb259ea | ||
|
cfca06cb46 | ||
|
4c11a2f073 | ||
|
d21551b9d7 | ||
|
1cf71ea5a7 | ||
|
2220ef13c7 | ||
|
9616b91166 | ||
|
83b431aab9 | ||
|
6cf95a59f0 | ||
|
fc9ecd6d02 | ||
|
fe2b0a8eb1 | ||
|
5ea3df64a9 | ||
|
4709b114bd | ||
|
d576bb458b | ||
|
6566c4047c | ||
|
1e9b109f36 | ||
|
b6e68e7ea6 | ||
|
60f4945c27 | ||
|
5e85a73e42 | ||
|
55a03e7897 | ||
|
e80147c11f | ||
|
a77147b7d0 | ||
|
6558012215 | ||
|
8276fa44bf | ||
|
8d9993c4de | ||
|
bc5265c6fd | ||
|
b145bd21c5 | ||
|
4e7525476c | ||
|
0fc0088d9b | ||
|
1fdcfebbcb | ||
|
0f8ad35215 | ||
|
5481f77bf7 | ||
|
f77bb36710 | ||
|
8de01b8ffc | ||
|
454d818866 | ||
|
c0ae019bca | ||
|
849709775d | ||
|
a5b459cdfc | ||
|
25e2c34582 | ||
|
a66ace3641 | ||
|
1e5f1ad50a | ||
|
bb633c1ea2 | ||
|
229af21b63 | ||
|
b1bac1cbab | ||
|
adf135e69e | ||
|
8f10a87533 | ||
|
79d923d989 | ||
|
75a72e87dc | ||
|
afdece0e9a | ||
|
619d9e49e9 | ||
|
09ab372625 | ||
|
233bac5c47 | ||
|
b972760a6f | ||
|
24d289bcaa | ||
|
0c1161508e | ||
|
1da4c33e59 | ||
|
cad1e45756 | ||
|
d49e8c3a63 | ||
|
174105aeec | ||
|
1adc7e60b6 | ||
|
5a106b60f9 | ||
|
bf7728eec7 | ||
|
558f2b00c8 | ||
|
053a8e1f85 | ||
|
596f049055 | ||
|
ad28ce0bb0 | ||
|
26d3a2518b | ||
|
c9cdfddee8 | ||
|
7618262923 | ||
|
58e367937f | ||
|
40d8c8d27b | ||
|
7bfb7780ea | ||
|
79eaa14e58 | ||
|
d54b66eb81 | ||
|
d44ae609dd | ||
|
3e7ac9f00f | ||
|
4420956b18 | ||
|
61ae401cc7 | ||
|
9cd4a42465 | ||
|
6f67bdc46e | ||
|
0bdbdc4e86 | ||
|
e15203d023 | ||
|
80f5fae493 | ||
|
09e1596c3a | ||
|
cb0328ab59 | ||
|
0eaf35c739 | ||
|
dfc13670b2 | ||
|
79c791ce7a | ||
|
36efe70230 | ||
|
4e9a190905 | ||
|
482ffffbde | ||
|
b0fd990b6c | ||
|
06f98bdd5a | ||
|
584c3aa4ed | ||
|
2378ee32b1 | ||
|
065948be7a | ||
|
bba162a210 | ||
|
01ca4d7da1 | ||
|
2ef0c8d04e | ||
|
8b4eaf4242 | ||
|
0a80414ca0 | ||
|
8bc717291f | ||
|
4200998525 | ||
|
ba9a61c053 | ||
|
a795337930 | ||
|
43e985f60d | ||
|
cb2c481e17 | ||
|
6a388c870b | ||
|
d3ec5370c8 | ||
|
712ee55c3a | ||
|
86e5851a3c | ||
|
d4bfcc43a8 | ||
|
1659f3c867 | ||
|
750d536fbd | ||
|
1a86731252 | ||
|
e5a2f699e5 | ||
|
a8628dca06 | ||
|
fcf5efa333 | ||
|
414b7af680 | ||
|
405f263a40 | ||
|
7f81fdce5e | ||
|
4597588ff6 | ||
|
4747f7b2f4 | ||
|
82e88a43a4 | ||
|
c187e518d6 | ||
|
f276622036 | ||
|
34af2fc726 | ||
|
6eae653ea4 | ||
|
ee3c2a7fe0 | ||
|
ae91887c19 | ||
|
a145d13dd9 | ||
|
6a122a3153 | ||
|
57c7d7b2fd | ||
|
4b244cae3f | ||
|
1199385813 | ||
|
df077379bf | ||
|
b9828b848d | ||
|
301e2a92af | ||
|
866512eef0 | ||
|
690639ef33 | ||
|
5cba3de4cf | ||
|
187abe7849 | ||
|
f134ec7be6 | ||
|
ddb87d0ea5 | ||
|
ddbb9a6707 | ||
|
046b4e77d3 | ||
|
c2a1e40bfe | ||
|
e05ab1488c | ||
|
e9e819666d | ||
|
805ad3e5e8 | ||
|
41510259c5 | ||
|
38164be149 | ||
|
964944a6cf | ||
|
e517349340 | ||
|
953684762c | ||
|
a16010c772 | ||
|
743fb67d7d | ||
|
ad6211098e | ||
|
01a40b5431 | ||
|
72fdff6400 | ||
|
13c4cb5493 | ||
|
bdac05e23b | ||
|
9498870c02 | ||
|
4ab426fddb | ||
|
077afc9d29 | ||
|
687ddf88ec | ||
|
b2f256d380 | ||
|
253fbadeeb | ||
|
73387a3987 | ||
|
606c578a94 | ||
|
7f4f247a33 | ||
|
d6686e5805 | ||
|
0f386aee53 | ||
|
6b1bf47c1c | ||
|
7c27e23147 | ||
|
c45892bee6 | ||
|
2de98a94da | ||
|
5a1e4b4c96 | ||
|
7c28992f55 | ||
|
7af29b7a82 | ||
|
32d9f7b16a | ||
|
ffa8bd53c9 | ||
|
417dd63006 | ||
|
fce43fdc84 | ||
|
943302e00f | ||
|
c52f0b2b2c | ||
|
da4ae6c5d6 | ||
|
b8cc842cbf | ||
|
c8d6a4c612 | ||
|
6e610d870c | ||
|
446836375c | ||
|
ffa47f512f | ||
|
b62bf06af6 | ||
|
853442d375 | ||
|
42a9c434f6 | ||
|
58b0343233 | ||
|
fbecb3a3c3 | ||
|
747da94940 | ||
|
7d1d105aa8 | ||
|
2caae48b99 | ||
|
63a557ab3b | ||
|
e062593a2f | ||
|
656b00cd34 | ||
|
0c85e04946 | ||
|
012d8d7c62 | ||
|
0cf9ec793f | ||
|
25c3695e0f | ||
|
3d73b38c7b | ||
|
0c589bf088 | ||
|
527dd9fcc9 | ||
|
6766dae946 | ||
|
fe14d15444 | ||
|
5fe9446653 | ||
|
77ffc073cf | ||
|
138e4161cb | ||
|
9664be3916 | ||
|
299ed3ec71 | ||
|
00792aa1c0 | ||
|
097d61499e | ||
|
053e1952e8 | ||
|
6b8aaafbc3 | ||
|
baedab9658 | ||
|
b20bffc634 | ||
|
0572c4a6b7 | ||
|
3077b9122c | ||
|
b0067a5394 | ||
|
1e74de9af1 | ||
|
403b282b8b | ||
|
0087a7806e | ||
|
7b0276ffce | ||
|
98603fdc8a | ||
|
3595da8ca5 | ||
|
4dfb13d356 | ||
|
ed7e0965d3 | ||
|
6b9dbce1d1 | ||
|
89e09bde2a | ||
|
71a9087f05 | ||
|
4f5bb0a747 | ||
|
404ab7f4cb | ||
|
1bed9c1fc2 | ||
|
874aa19a85 | ||
|
d828d7148f | ||
|
e9f78e91ab | ||
|
6e261d4537 | ||
|
bc8aee9648 | ||
|
82bc14973f | ||
|
8d9fbc4980 | ||
|
047489d781 | ||
|
f10b49181a | ||
|
21ecb2e75c | ||
|
116b45ab1e | ||
|
530ba71802 | ||
|
6ea84f1868 | ||
|
b2db7ee982 | ||
|
4a76c38ca2 | ||
|
35beee5238 | ||
|
0771e20f09 | ||
|
b29c1ba744 | ||
|
ffea67c4d4 | ||
|
da27984f60 | ||
|
76ab38c293 | ||
|
6fd1f76c34 | ||
|
dfa264038d | ||
|
1340f023f9 | ||
|
7464125591 | ||
|
862c1c75d7 | ||
|
30fd19148f | ||
|
6b2491898a | ||
|
db04081491 | ||
|
03fe978070 | ||
|
41f2093c87 | ||
|
2cde36472e | ||
|
c6e87d10b5 | ||
|
17234658c8 | ||
|
b842379fef | ||
|
8b92339f42 | ||
|
671ff5362b | ||
|
4b52e9e01a | ||
|
b6ce1780ee | ||
|
cf6454cad6 | ||
|
53d80f14c9 | ||
|
c6cc0d6b3f | ||
|
27434c81e9 | ||
|
a51ce79fcf | ||
|
7135a2e90d | ||
|
4be85faf42 | ||
|
b0034d9a7f | ||
|
1e02a6c744 | ||
|
781b299c80 | ||
|
717ce706a5 | ||
|
012de9cd8f | ||
|
f117805a43 | ||
|
5f0390417e | ||
|
06ea5198bf | ||
|
6d67d08a2b | ||
|
aa871ef32e | ||
|
5791513e93 | ||
|
22c3d2386e | ||
|
237190216a | ||
|
d92b551b4a | ||
|
5226ba5eea | ||
|
21e50dd6ec | ||
|
1cf1012236 | ||
|
703496c543 | ||
|
f8e1cf060e | ||
|
0413be10c0 | ||
|
728d6348db | ||
|
df9cc45dea | ||
|
05db852d35 | ||
|
e8d2ffafaa | ||
|
4eec8994ef | ||
|
0258032687 | ||
|
2c91a14ee7 | ||
|
9e4786989d | ||
|
9d4d0aac04 | ||
|
7ea17d2597 | ||
|
71b339bad2 | ||
|
534de68571 | ||
|
29ae29acf9 | ||
|
fedf396ed3 | ||
|
60819426c1 | ||
|
84ab22ed6b | ||
|
6ee5e4054c | ||
|
a16132ba7d | ||
|
4bde90909a | ||
|
590bb3f597 | ||
|
110a4d4d82 | ||
|
a9898bb895 | ||
|
e6718e2234 | ||
|
a98f42b657 | ||
|
8394533292 | ||
|
f5e0e308b9 | ||
|
9a6dd78778 | ||
|
66a7ab60e2 | ||
|
e145839479 | ||
|
c89748678f | ||
|
c2a547db04 | ||
|
2a88f60800 | ||
|
d55b98d49e | ||
|
bcb2c84cfa | ||
|
34edb83ab8 | ||
|
068bb15c54 | ||
|
7241334173 | ||
|
c8f75feb1d | ||
|
6c5afb5550 | ||
|
4d2332b8ca | ||
|
447b92702c | ||
|
de742e58dc | ||
|
ccc703ae02 | ||
|
de642089d2 | ||
|
dab04a5fde | ||
|
201575b246 | ||
|
5ee354cea1 |
@ -211,6 +211,402 @@
|
|||||||
"contributions": [
|
"contributions": [
|
||||||
"code"
|
"code"
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "jr0dd",
|
||||||
|
"name": "jr0dd",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/285797?v=4",
|
||||||
|
"profile": "https://github.com/jr0dd",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "beshkenadze",
|
||||||
|
"name": "Aleksandr Beshkenadze",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/167288?v=4",
|
||||||
|
"profile": "https://4xxi.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "unasuke",
|
||||||
|
"name": "Yusuke Nakamura",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/4487291?v=4",
|
||||||
|
"profile": "https://unasuke.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "brandon099",
|
||||||
|
"name": "Brandon Clifford",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/1628223?v=4",
|
||||||
|
"profile": "https://github.com/brandon099",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "Truxnell",
|
||||||
|
"name": "Nat Allan",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/19149206?v=4",
|
||||||
|
"profile": "http://www.voltaicforge.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "jmmaloney4",
|
||||||
|
"name": "Jack Maloney",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/5781547?v=4",
|
||||||
|
"profile": "https://github.com/jmmaloney4",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "zamnuts",
|
||||||
|
"name": "Andrew Zammit",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/4969305?v=4",
|
||||||
|
"profile": "https://github.com/zamnuts",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "TuxOtaku",
|
||||||
|
"name": "Ryan Draga",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/3494484?v=4",
|
||||||
|
"profile": "https://boxingoctop.us",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "jkroepke",
|
||||||
|
"name": "Jan-Otto Kröpke",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/1560587?v=4",
|
||||||
|
"profile": "https://github.com/jkroepke",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "chris-sanders",
|
||||||
|
"name": "Chris Sanders",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/813115?v=4",
|
||||||
|
"profile": "https://github.com/chris-sanders",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "alexwaibel",
|
||||||
|
"name": "Alex Waibel",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/7026879?v=4",
|
||||||
|
"profile": "https://waibel.us",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "simoncaron",
|
||||||
|
"name": "Simon Caron",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/8635747?v=4",
|
||||||
|
"profile": "https://github.com/simoncaron",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "Kimi450",
|
||||||
|
"name": "Karan Samani",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/24758074?v=4",
|
||||||
|
"profile": "https://github.com/Kimi450",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "reitermarkus",
|
||||||
|
"name": "Markus Reiter",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/1309829?v=4",
|
||||||
|
"profile": "http://reitermark.us",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "brenix",
|
||||||
|
"name": "Paul N",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/1131159?v=4",
|
||||||
|
"profile": "https://github.com/brenix",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "varac",
|
||||||
|
"name": "Varac",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/488213?v=4",
|
||||||
|
"profile": "https://www.varac.net",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "CoolMintChocolate",
|
||||||
|
"name": "CoolMintChocolate",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/70276626?v=4",
|
||||||
|
"profile": "https://github.com/CoolMintChocolate",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "PixelJonas",
|
||||||
|
"name": "Jonas Janz",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/5434875?v=4",
|
||||||
|
"profile": "https://github.com/PixelJonas",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "titilambert",
|
||||||
|
"name": "Thibault Cohen",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/47721?v=4",
|
||||||
|
"profile": "https://twitter.com/ttb_lt",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "dangmai",
|
||||||
|
"name": "Dang Mai",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/1305527?v=4",
|
||||||
|
"profile": "http://dangmai.net",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "larivierec",
|
||||||
|
"name": "Christopher Larivière",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/3633214?v=4",
|
||||||
|
"profile": "https://github.com/larivierec",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "wrmilling",
|
||||||
|
"name": "Winston R. Milling",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/6162814?v=4",
|
||||||
|
"profile": "https://Winston.Milli.ng",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "pysen",
|
||||||
|
"name": "Arthur",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/3030145?v=4",
|
||||||
|
"profile": "https://github.com/pysen",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "samip5",
|
||||||
|
"name": "Skyler Mäntysaari",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/1703002?v=4",
|
||||||
|
"profile": "https://samip.dev",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "disconn3ct",
|
||||||
|
"name": "Dis",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/397465?v=4",
|
||||||
|
"profile": "https://github.com/disconn3ct",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "rogerrum",
|
||||||
|
"name": "Roger Rumao",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/10350796?v=4",
|
||||||
|
"profile": "https://github.com/rogerrum",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "marcelloceschia",
|
||||||
|
"name": "Marcello Ceschia",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/203448?v=4",
|
||||||
|
"profile": "https://github.com/marcelloceschia",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "roobre",
|
||||||
|
"name": "Roberto Santalla",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/969721?v=4",
|
||||||
|
"profile": "https://www.carrierlost.net",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "greghaskins",
|
||||||
|
"name": "Greg Haskins",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/285310?v=4",
|
||||||
|
"profile": "http://www.greghaskins.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "jlrgraham",
|
||||||
|
"name": "jlrgraham",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/2184689?v=4",
|
||||||
|
"profile": "https://github.com/jlrgraham",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "psych0d0g",
|
||||||
|
"name": "Lukas Wingerberg",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/181302?v=4",
|
||||||
|
"profile": "https://cronix.cc",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "TheDJVG",
|
||||||
|
"name": "TheDJVG",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/17107225?v=4",
|
||||||
|
"profile": "http://www.djvg.net",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "rschoultz",
|
||||||
|
"name": "Rickard Schoultz",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/727834?v=4",
|
||||||
|
"profile": "https://github.com/rschoultz",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "tvories",
|
||||||
|
"name": "Taylor Vories",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/13934524?v=4",
|
||||||
|
"profile": "http://taylorvories.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "djjudas21",
|
||||||
|
"name": "Jonathan",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/604595?v=4",
|
||||||
|
"profile": "http://www.jonathangazeley.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "johanneskastl",
|
||||||
|
"name": "Johannes Kastl",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/26167225?v=4",
|
||||||
|
"profile": "https://www.b1-systems.de",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "funkypenguin",
|
||||||
|
"name": "David Young",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/1524686?v=4",
|
||||||
|
"profile": "https://www.funkypenguin.co.nz",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "bikram990",
|
||||||
|
"name": "Bikramjeet Singh",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/6782131?v=4",
|
||||||
|
"profile": "https://github.com/bikram990",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "geraldwuhoo",
|
||||||
|
"name": "Gerald Wu",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/22160945?v=4",
|
||||||
|
"profile": "http://geraldwu.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "ntrp",
|
||||||
|
"name": "Ivan Gregurić Ortolan",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/720492?v=4",
|
||||||
|
"profile": "http://ntrpigo.blogspot.com",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "lucacalcaterra",
|
||||||
|
"name": "Luca Calcaterra",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/879825?v=4",
|
||||||
|
"profile": "https://github.com/lucacalcaterra",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "Omar007",
|
||||||
|
"name": "Omar Pakker",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/5380079?v=4",
|
||||||
|
"profile": "https://github.com/Omar007",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "frezbo",
|
||||||
|
"name": "Noel Georgi",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/18496730?v=4",
|
||||||
|
"profile": "https://resume.frezbo.dev",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "lanquarden",
|
||||||
|
"name": "lanquarden",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/446743?v=4",
|
||||||
|
"profile": "https://github.com/lanquarden",
|
||||||
|
"contributions": [
|
||||||
|
"code"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"contributorsPerLine": 7,
|
"contributorsPerLine": 7,
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.154.0/containers/ruby/.devcontainer/base.Dockerfile
|
|
||||||
|
|
||||||
# [Choice] Ruby version: 2, 2.7, 2.6, 2.5
|
|
||||||
ARG VARIANT="2"
|
|
||||||
FROM mcr.microsoft.com/vscode/devcontainers/ruby:0-${VARIANT}
|
|
||||||
|
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
|
||||||
|
|
||||||
COPY Gemfile /tmp/Gemfile
|
|
||||||
|
|
||||||
RUN \
|
|
||||||
apt-get update \
|
|
||||||
&& \
|
|
||||||
apt-get -y install --no-install-recommends \
|
|
||||||
jq \
|
|
||||||
libjq-dev \
|
|
||||||
libonig-dev \
|
|
||||||
gnupg2 \
|
|
||||||
&& \
|
|
||||||
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/bin \
|
|
||||||
&& \
|
|
||||||
curl -fsSL https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | /bin/bash - \
|
|
||||||
&& \
|
|
||||||
bundle config set system 'true' \
|
|
||||||
&& bundle install --gemfile /tmp/Gemfile \
|
|
||||||
&& rm /tmp/Gemfile
|
|
@ -1,33 +0,0 @@
|
|||||||
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
|
|
||||||
// https://github.com/microsoft/vscode-dev-containers/tree/v0.154.0/containers/ruby
|
|
||||||
{
|
|
||||||
"name": "Ruby",
|
|
||||||
"build": {
|
|
||||||
"context": "..",
|
|
||||||
"dockerfile": "Dockerfile",
|
|
||||||
"args": {
|
|
||||||
// Update 'VARIANT' to pick a Ruby version: 2, 2.7, 2.6, 2.5
|
|
||||||
"VARIANT": "2.7",
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// Set *default* container specific settings.json values on container create.
|
|
||||||
"settings": {
|
|
||||||
"terminal.integrated.shell.linux": "/bin/bash"
|
|
||||||
},
|
|
||||||
|
|
||||||
// Add the IDs of extensions you want installed when the container is created.
|
|
||||||
"extensions": [
|
|
||||||
"ms-kubernetes-tools.vscode-kubernetes-tools",
|
|
||||||
"rebornix.Ruby"
|
|
||||||
],
|
|
||||||
|
|
||||||
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
|
||||||
// "forwardPorts": [],
|
|
||||||
|
|
||||||
// Use 'postCreateCommand' to run commands after the container is created.
|
|
||||||
"postCreateCommand": "export RUBYJQ_USE_SYSTEM_LIBRARIES=1 && bundle install",
|
|
||||||
|
|
||||||
// Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
|
||||||
"remoteUser": "vscode"
|
|
||||||
}
|
|
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
@ -1,2 +1,2 @@
|
|||||||
# https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
|
# https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
|
||||||
* @onedr0p @bjw-s @billimek @carpenike
|
* @onedr0p @bjw-s @billimek @carpenike @Truxnell
|
||||||
|
36
.github/ISSUE_TEMPLATE/bug-report.md
vendored
36
.github/ISSUE_TEMPLATE/bug-report.md
vendored
@ -1,36 +0,0 @@
|
|||||||
---
|
|
||||||
name: Bug report
|
|
||||||
about: Create a report to help us improve
|
|
||||||
title: ''
|
|
||||||
labels: kind:bug
|
|
||||||
assignees: ''
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# Details
|
|
||||||
|
|
||||||
**Helm chart name and version:**
|
|
||||||
|
|
||||||
<!-- Note: This should be the helm chart name and version you have deployed. e.g. jackett 5.4.0 -->
|
|
||||||
|
|
||||||
**Container name and tag:**
|
|
||||||
|
|
||||||
<!-- Note: This should be the container image version you have deployed. e.g. linuxserver/jackett:v0.16.2106 -->
|
|
||||||
|
|
||||||
**What steps did you take and what happened:**
|
|
||||||
|
|
||||||
<!-- Note: This should be a clear and concise description of what the bug is. -->
|
|
||||||
|
|
||||||
**Relevant Helm values:**
|
|
||||||
|
|
||||||
<!-- Note: Please include a snippet of the relevant values in (or a Pastebin/similar link to) your values.yaml. -->
|
|
||||||
|
|
||||||
**What did you expect to happen:**
|
|
||||||
|
|
||||||
**Anything else you would like to add:**
|
|
||||||
|
|
||||||
<!-- Note: Miscellaneous information that will assist in solving the issue. -->
|
|
||||||
|
|
||||||
**Additional Information:**
|
|
||||||
|
|
||||||
<!-- Note: Anything to give further context to the bug report. -->
|
|
98
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
Normal file
98
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
---
|
||||||
|
name: Bug report
|
||||||
|
description: Create a report to help us improve
|
||||||
|
title: '[<chart name>] Concise description of the issue'
|
||||||
|
labels: ["bug"]
|
||||||
|
|
||||||
|
# Header
|
||||||
|
|
||||||
|
body:
|
||||||
|
- type: markdown
|
||||||
|
attributes:
|
||||||
|
value: |
|
||||||
|
Have a question? 👉 [Start a new discussion](https://github.com/k8s-at-home/organization/discussions/new) or [ask on our Discord](https://discord.gg/k8s-at-home).
|
||||||
|
|
||||||
|
Before opening an issue, please check [the documentation](https://docs.k8s-at-home.com/our-helm-charts/introduction/) and see if it helps you resolve your issue. Please also make sure that you followed the installation instructions.
|
||||||
|
|
||||||
|
Finally, please search issues and discussions before opening a new bug report.
|
||||||
|
|
||||||
|
# Helm Chart details
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: chart-name
|
||||||
|
attributes:
|
||||||
|
label: Helm chart name
|
||||||
|
description: Name of the Helm chart this issue relates to
|
||||||
|
placeholder: e.g. sonarr
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: chart-version
|
||||||
|
attributes:
|
||||||
|
label: Helm chart version
|
||||||
|
description: Version of the Helm chart this issue relates to
|
||||||
|
placeholder: e.g. 16.1.0
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
# Container details
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: container-image
|
||||||
|
attributes:
|
||||||
|
label: Container name
|
||||||
|
description: Name of the container image this issue relates to
|
||||||
|
placeholder: e.g. ghcr.io/k8s-at-home/sonarr
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: container-tag
|
||||||
|
attributes:
|
||||||
|
label: Container tag
|
||||||
|
description: Tag of the container image this issue relates to
|
||||||
|
placeholder: e.g. v3.0.7.1477
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
# Issue details
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: description
|
||||||
|
attributes:
|
||||||
|
label: Description
|
||||||
|
description: A clear and concise description of what the bug is.
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: expected-result
|
||||||
|
attributes:
|
||||||
|
label: Expected result
|
||||||
|
description: What did you expect to happen
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: helm-values
|
||||||
|
attributes:
|
||||||
|
label: Helm values to reproduce
|
||||||
|
description: A snippet of the relevant Helm values
|
||||||
|
placeholder: |
|
||||||
|
Enter your relevant YAML values here
|
||||||
|
render: YAML
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: other-info
|
||||||
|
attributes:
|
||||||
|
label: Additional Information
|
||||||
|
description: Anything to give further context to the bug report or information that will assist in solving the issue
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: repository-link
|
||||||
|
attributes:
|
||||||
|
label: Repo link
|
||||||
|
description: A link to a (public) Git repository where your values are available
|
2
.github/ISSUE_TEMPLATE/config.yml
vendored
2
.github/ISSUE_TEMPLATE/config.yml
vendored
@ -1,7 +1,7 @@
|
|||||||
blank_issues_enabled: false
|
blank_issues_enabled: false
|
||||||
contact_links:
|
contact_links:
|
||||||
- name: Discuss on Discord
|
- name: Discuss on Discord
|
||||||
url: https://discord.com/invite/sTMX7Vh
|
url: https://discord.gg/k8s-at-home
|
||||||
about: Join our Discord community
|
about: Join our Discord community
|
||||||
- name: Ask a question
|
- name: Ask a question
|
||||||
url: https://github.com/k8s-at-home/organization/discussions
|
url: https://github.com/k8s-at-home/organization/discussions
|
||||||
|
26
.github/ISSUE_TEMPLATE/enhancement.md
vendored
26
.github/ISSUE_TEMPLATE/enhancement.md
vendored
@ -1,26 +0,0 @@
|
|||||||
---
|
|
||||||
name: Feature request
|
|
||||||
about: Suggest an idea for this project
|
|
||||||
title: ''
|
|
||||||
labels: kind:enhancement
|
|
||||||
assignees: ''
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# Details
|
|
||||||
|
|
||||||
**Helm chart name:**
|
|
||||||
|
|
||||||
<!-- Note: This should be the helm chart name you are referring to. e.g. jackett -->
|
|
||||||
|
|
||||||
**Describe the solution you'd like:**
|
|
||||||
|
|
||||||
<!-- Note: A clear and concise description of what you want to happen. -->
|
|
||||||
|
|
||||||
**Anything else you would like to add:**
|
|
||||||
|
|
||||||
<!-- Note: Miscellaneous information that will assist in solving the issue. -->
|
|
||||||
|
|
||||||
**Additional Information:**
|
|
||||||
|
|
||||||
<!-- Note: Anything to give further context to the requested new feature. -->
|
|
40
.github/ISSUE_TEMPLATE/enhancement.yml
vendored
Normal file
40
.github/ISSUE_TEMPLATE/enhancement.yml
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
name: Feature request
|
||||||
|
description: Suggest an idea for this project
|
||||||
|
title: '[<chart name>] Concise description of the enhancement'
|
||||||
|
labels: ["enhancement"]
|
||||||
|
|
||||||
|
# Header
|
||||||
|
|
||||||
|
body:
|
||||||
|
- type: markdown
|
||||||
|
attributes:
|
||||||
|
value: |
|
||||||
|
Have a question? 👉 [Start a new discussion](https://github.com/k8s-at-home/organization/discussions/new) or [ask on our Discord](https://discord.gg/k8s-at-home).
|
||||||
|
|
||||||
|
# Helm Chart details
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
id: chart-name
|
||||||
|
attributes:
|
||||||
|
label: Helm chart name
|
||||||
|
description: Name of the Helm chart this issue relates to
|
||||||
|
placeholder: e.g. sonarr
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
# Enhancement details
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: description
|
||||||
|
attributes:
|
||||||
|
label: Describe the solution you'd like
|
||||||
|
description: A clear and concise description of what you want to happen
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
- type: textarea
|
||||||
|
id: other-info
|
||||||
|
attributes:
|
||||||
|
label: Additional Information
|
||||||
|
description: Anything to give further context to the requested new feature
|
5
.github/PULL_REQUEST_TEMPLATE.md
vendored
5
.github/PULL_REQUEST_TEMPLATE.md
vendored
@ -32,8 +32,9 @@ Also don't be worried if the request is closed or not integrated sometimes our p
|
|||||||
<!-- If there's anything else that's important and relevant to your pull request, mention that information here.-->
|
<!-- If there's anything else that's important and relevant to your pull request, mention that information here.-->
|
||||||
|
|
||||||
**Checklist** <!-- [Place an '[X]' (no spaces) in all applicable fields. Please remove unrelated fields.] -->
|
**Checklist** <!-- [Place an '[X]' (no spaces) in all applicable fields. Please remove unrelated fields.] -->
|
||||||
- [ ] Chart version bumped in `Chart.yaml` according to [semver](http://semver.org/).
|
|
||||||
- [ ] Title of the PR starts with chart name (e.g. `[home-assistant]`)
|
- [ ] Title of the PR starts with chart name (e.g. `[home-assistant]`)
|
||||||
- [ ] Variables are documented in the README.md (this can be done with using our helm-docs wrapper `./hack/gen-helm-docs.sh stable <chart>`)
|
- [ ] Chart version bumped in `Chart.yaml` according to [semver](http://semver.org/).
|
||||||
|
- [ ] Chart `artifacthub.io/changes` changelog annotation has been updated in `Chart.yaml`. See [Artifact Hub documentation](https://artifacthub.io/docs/topics/annotations/helm/#supported-annotations) for more info.
|
||||||
|
- [ ] Variables have been documented in the `values.yaml` file.
|
||||||
|
|
||||||
<!-- Keep in mind that if you are submitting a new chart, try to use our [common](https://github.com/k8s-at-home/charts/tree/master/charts/common) library as a dependency. This will help maintaining charts here and keep them consistent between each other -->
|
<!-- Keep in mind that if you are submitting a new chart, try to use our [common](https://github.com/k8s-at-home/charts/tree/master/charts/common) library as a dependency. This will help maintaining charts here and keep them consistent between each other -->
|
||||||
|
45
.github/actions/collect-changes/action.yaml
vendored
Normal file
45
.github/actions/collect-changes/action.yaml
vendored
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
name: "Collect changes"
|
||||||
|
description: "Collects and stores changed files/charts"
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
changesDetected:
|
||||||
|
description: "Whether or not changes to charts have been detected"
|
||||||
|
value: ${{ steps.filter.outputs.addedOrModified }}
|
||||||
|
addedOrModifiedFiles:
|
||||||
|
description: "A list of the files changed"
|
||||||
|
value: ${{ steps.filter.outputs.addedOrModified_files }}
|
||||||
|
addedOrModifiedCharts:
|
||||||
|
description: "A list of the charts changed"
|
||||||
|
value: ${{ steps.filter-charts.outputs.addedOrModified }}
|
||||||
|
|
||||||
|
runs:
|
||||||
|
using: "composite"
|
||||||
|
steps:
|
||||||
|
- name: Collect changed files
|
||||||
|
uses: dorny/paths-filter@v2
|
||||||
|
id: filter
|
||||||
|
with:
|
||||||
|
list-files: shell
|
||||||
|
filters: |
|
||||||
|
addedOrModified:
|
||||||
|
- added|modified: 'charts/*/**'
|
||||||
|
|
||||||
|
- name: Collect changed charts
|
||||||
|
if: |
|
||||||
|
steps.filter.outputs.addedOrModified == 'true'
|
||||||
|
id: filter-charts
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
CHARTS=()
|
||||||
|
PATHS=(${{ steps.filter.outputs.addedOrModified_files }})
|
||||||
|
# Get only the chart paths
|
||||||
|
for CHARTPATH in "${PATHS[@]}"
|
||||||
|
do
|
||||||
|
IFS='/' read -r -a path_parts <<< "${CHARTPATH}"
|
||||||
|
CHARTS+=("${path_parts[1]}/${path_parts[2]}")
|
||||||
|
done
|
||||||
|
|
||||||
|
# Remove duplicates
|
||||||
|
CHARTS=( `printf "%s\n" "${CHARTS[@]}" | sort -u` )
|
||||||
|
# Set output to changed charts
|
||||||
|
printf "::set-output name=addedOrModified::%s\n" "${CHARTS[*]}"
|
48
.github/actions/label-from-status/action.yaml
vendored
Normal file
48
.github/actions/label-from-status/action.yaml
vendored
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
name: "Set issue labels based on status"
|
||||||
|
description: "Sets / removes issue labels based on CI job status"
|
||||||
|
inputs:
|
||||||
|
token:
|
||||||
|
required: true
|
||||||
|
description: "The Github API token to use"
|
||||||
|
issue-number:
|
||||||
|
required: true
|
||||||
|
description: "The issue to label"
|
||||||
|
prefix:
|
||||||
|
required: true
|
||||||
|
description: "The label prefix (e.g. lint, install)"
|
||||||
|
job-status:
|
||||||
|
required: true
|
||||||
|
description: "The status of the CI job"
|
||||||
|
remove-on-skipped:
|
||||||
|
required: false
|
||||||
|
default: false
|
||||||
|
description: "Remove the label if the job was skipped"
|
||||||
|
|
||||||
|
runs:
|
||||||
|
using: "composite"
|
||||||
|
steps:
|
||||||
|
- name: Label success
|
||||||
|
uses: andymckay/labeler@1.0.4
|
||||||
|
if: ${{ inputs.job-status == 'success' }}
|
||||||
|
with:
|
||||||
|
repo-token: ${{ inputs.token }}
|
||||||
|
issue-number: ${{ inputs.issue-number }}
|
||||||
|
add-labels: "${{ inputs.prefix }}:ok"
|
||||||
|
remove-labels: "${{ inputs.prefix }}:failed"
|
||||||
|
|
||||||
|
- name: Label failure
|
||||||
|
uses: andymckay/labeler@1.0.4
|
||||||
|
if: ${{ inputs.job-status == 'failure' }}
|
||||||
|
with:
|
||||||
|
repo-token: ${{ inputs.token }}
|
||||||
|
issue-number: ${{ inputs.issue-number }}
|
||||||
|
add-labels: "${{ inputs.prefix }}:failed"
|
||||||
|
remove-labels: "${{ inputs.prefix }}:ok"
|
||||||
|
|
||||||
|
- name: Remove label
|
||||||
|
uses: andymckay/labeler@1.0.4
|
||||||
|
if: ${{ (inputs.job-status == 'skipped') && (inputs.remove-on-skipped == 'true') }}
|
||||||
|
with:
|
||||||
|
repo-token: ${{ inputs.token }}
|
||||||
|
issue-number: ${{ inputs.issue-number }}
|
||||||
|
remove-labels: "${{ inputs.prefix }}:ok, ${{ inputs.prefix }}:failed"
|
15
.github/ct-install.yaml
vendored
15
.github/ct-install.yaml
vendored
@ -5,13 +5,26 @@ chart-dirs:
|
|||||||
- charts/incubator
|
- charts/incubator
|
||||||
- charts/stable
|
- charts/stable
|
||||||
excluded-charts:
|
excluded-charts:
|
||||||
|
- charts/incubator/kah-common-chart
|
||||||
|
- charts/incubator/sdtd
|
||||||
- charts/stable/alertmanager-bot
|
- charts/stable/alertmanager-bot
|
||||||
- charts/stable/dnsmadeeasy-webhook
|
- charts/stable/alertmanager-discord
|
||||||
|
- charts/stable/amcrest2mqtt
|
||||||
|
- charts/stable/facebox
|
||||||
|
- charts/stable/factorio
|
||||||
|
- charts/stable/foundryvtt
|
||||||
|
- charts/stable/heimdall
|
||||||
|
- charts/stable/multus
|
||||||
|
- charts/stable/pod-gateway
|
||||||
- charts/stable/promcord
|
- charts/stable/promcord
|
||||||
|
- charts/stable/reg
|
||||||
- charts/stable/ser2sock
|
- charts/stable/ser2sock
|
||||||
|
- charts/stable/satisfactory
|
||||||
- charts/stable/zalando-postgres-cluster
|
- charts/stable/zalando-postgres-cluster
|
||||||
- charts/stable/zigbee2mqtt
|
- charts/stable/zigbee2mqtt
|
||||||
|
- charts/stable/wireguard
|
||||||
chart-repos:
|
chart-repos:
|
||||||
- bitnami=https://charts.bitnami.com/bitnami
|
- bitnami=https://charts.bitnami.com/bitnami
|
||||||
- k8s-at-home-libraries=https://library-charts.k8s-at-home.com
|
- k8s-at-home-libraries=https://library-charts.k8s-at-home.com
|
||||||
- k8s-at-home=https://k8s-at-home.com/charts
|
- k8s-at-home=https://k8s-at-home.com/charts
|
||||||
|
- jetstack=https://charts.jetstack.io
|
||||||
|
1
.github/ct-lint.yaml
vendored
1
.github/ct-lint.yaml
vendored
@ -9,3 +9,4 @@ chart-repos:
|
|||||||
- bitnami=https://charts.bitnami.com/bitnami
|
- bitnami=https://charts.bitnami.com/bitnami
|
||||||
- k8s-at-home-libraries=https://library-charts.k8s-at-home.com
|
- k8s-at-home-libraries=https://library-charts.k8s-at-home.com
|
||||||
- k8s-at-home=https://k8s-at-home.com/charts
|
- k8s-at-home=https://k8s-at-home.com/charts
|
||||||
|
- jetstack=https://charts.jetstack.io
|
||||||
|
35
.github/label-commenter-config.yml
vendored
Normal file
35
.github/label-commenter-config.yml
vendored
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
---
|
||||||
|
labels:
|
||||||
|
- name: incomplete-template
|
||||||
|
labeled:
|
||||||
|
issue:
|
||||||
|
body: |
|
||||||
|
:wave: @{{ issue.user.login }}, please follow the template provided.
|
||||||
|
action: close
|
||||||
|
locking: lock
|
||||||
|
lock_reason: resolved
|
||||||
|
|
||||||
|
- name: support
|
||||||
|
labeled:
|
||||||
|
issue:
|
||||||
|
body: |
|
||||||
|
:wave: @{{ issue.user.login }}, we use the issue tracker exclusively
|
||||||
|
for bug reports and feature requests. However, this issue appears
|
||||||
|
to be a support request. Please use our support channels
|
||||||
|
to get help.
|
||||||
|
- [Docs](https://docs.k8s-at-home.com/)
|
||||||
|
- [Discord](https://discord.gg/sTMX7Vh)
|
||||||
|
- [GitHub Discussions](https://github.com/k8s-at-home/organization/discussions)
|
||||||
|
action: close
|
||||||
|
|
||||||
|
- name: incomplete-docs
|
||||||
|
labeled:
|
||||||
|
pr:
|
||||||
|
body: |
|
||||||
|
:wave: @{{ pull_request.user.login }}, thanks for taking the time to submit this PR. 🙏🏽
|
||||||
|
|
||||||
|
We have noticed that the chart documentation has not been completely updated for this PR.
|
||||||
|
Could you please make sure that the following items have been updated:
|
||||||
|
- `version` in `Chart.yaml` has been updated per [semver](http://semver.org/)
|
||||||
|
- The `artifacthub.io/changes` chart annotation contains a summary of the updates for this new version. See [Artifact Hub documentation](https://artifacthub.io/docs/topics/annotations/helm/#supported-annotations) for more info.
|
||||||
|
- [Documentation strings](https://github.com/norwoodj/helm-docs#valuesyaml-metadata) have been added to the keys in `values.yaml`.
|
111
.github/labels.yaml
vendored
Normal file
111
.github/labels.yaml
vendored
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
---
|
||||||
|
# CI Status
|
||||||
|
- name: "precommit:ok"
|
||||||
|
color: "0E8A16"
|
||||||
|
description: >-
|
||||||
|
CI status: pre-commit validation successful
|
||||||
|
- name: "precommit:failed"
|
||||||
|
color: "D93F0B"
|
||||||
|
description: >-
|
||||||
|
CI status: pre-commit validation failed
|
||||||
|
- name: "changelog:ok"
|
||||||
|
color: "0E8A16"
|
||||||
|
description: >-
|
||||||
|
CI status: changelog validation successful
|
||||||
|
- name: "changelog:failed"
|
||||||
|
color: "D93F0B"
|
||||||
|
description: >-
|
||||||
|
CI status: changelog validation failed
|
||||||
|
- name: "lint:ok"
|
||||||
|
color: "0E8A16"
|
||||||
|
description: >-
|
||||||
|
CI status: linting successful
|
||||||
|
- name: "lint:failed"
|
||||||
|
color: "D93F0B"
|
||||||
|
description: >-
|
||||||
|
CI status: linting failed
|
||||||
|
- name: "install:ok"
|
||||||
|
color: "0E8A16"
|
||||||
|
description: >-
|
||||||
|
CI status: install successful
|
||||||
|
- name: "install:failed"
|
||||||
|
color: "D93F0B"
|
||||||
|
description: >-
|
||||||
|
CI status: install failed
|
||||||
|
|
||||||
|
# Semantic Type
|
||||||
|
- name: type/patch
|
||||||
|
color: "FFEC19"
|
||||||
|
- name: type/minor
|
||||||
|
color: "FF9800"
|
||||||
|
- name: type/major
|
||||||
|
color: "F6412D"
|
||||||
|
|
||||||
|
# Renovate
|
||||||
|
- name: renovate/container
|
||||||
|
color: "ffc300"
|
||||||
|
- name: renovate/helm
|
||||||
|
color: "ffc300"
|
||||||
|
|
||||||
|
# Size
|
||||||
|
- name: size/XS
|
||||||
|
color: "009900"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR that changes 0-9 lines, ignoring generated files.
|
||||||
|
- name: size/S
|
||||||
|
color: "77bb00"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR that changes 10-29 lines, ignoring generated files.
|
||||||
|
- name: size/M
|
||||||
|
color: "eebb00"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR that changes 30-99 lines, ignoring generated files.
|
||||||
|
- name: size/L
|
||||||
|
color: "ee9900"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR that changes 100-499 lines, ignoring generated files.
|
||||||
|
- name: size/XL
|
||||||
|
color: "ee5500"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR that changes 500-999 lines, ignoring generated files.
|
||||||
|
- name: size/XXL
|
||||||
|
color: "ee0000"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR that changes 1000+ lines, ignoring generated files.
|
||||||
|
|
||||||
|
# Issue categories
|
||||||
|
- name: documentation
|
||||||
|
color: "0075ca"
|
||||||
|
- name: bug
|
||||||
|
color: "B60205"
|
||||||
|
- name: enhancement
|
||||||
|
color: "a2eeef"
|
||||||
|
- name: "help wanted"
|
||||||
|
color: "008672"
|
||||||
|
- name: wontfix
|
||||||
|
color: "ffffff"
|
||||||
|
- name: "support"
|
||||||
|
color: ffffff
|
||||||
|
- name: "incomplete-template"
|
||||||
|
color: ffffff
|
||||||
|
|
||||||
|
- name: "new-chart"
|
||||||
|
color: "C2E0C6"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR or issue that references a new Helm chart.
|
||||||
|
- name: do-not-merge
|
||||||
|
color: "ee0701"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR that should not be merged in the current state.
|
||||||
|
- name: "incomplete-docs"
|
||||||
|
color: B72175
|
||||||
|
description: >-
|
||||||
|
Categorises a PR for which the documentation has not been updated completely.
|
||||||
|
- name: keepalive
|
||||||
|
color: "4D28C4"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR or issue that should not be marked as stale.
|
||||||
|
- name: stale
|
||||||
|
color: "D4C5F9"
|
||||||
|
description: >-
|
||||||
|
Categorises a PR or issue that has not been active for a specified time.
|
48
.github/renovate.json5
vendored
48
.github/renovate.json5
vendored
@ -5,7 +5,6 @@
|
|||||||
"assigneesFromCodeOwners": true,
|
"assigneesFromCodeOwners": true,
|
||||||
"reviewersFromCodeOwners": true,
|
"reviewersFromCodeOwners": true,
|
||||||
"suppressNotifications": ["prIgnoreNotification"],
|
"suppressNotifications": ["prIgnoreNotification"],
|
||||||
"rebaseWhen": "conflicted",
|
|
||||||
"prConcurrentLimit": 5,
|
"prConcurrentLimit": 5,
|
||||||
"helm-values": {
|
"helm-values": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
@ -16,66 +15,87 @@
|
|||||||
"packageRules": [
|
"packageRules": [
|
||||||
// Setup datasources
|
// Setup datasources
|
||||||
{
|
{
|
||||||
"datasources": ["helm"],
|
"matchDatasources": ["helm"],
|
||||||
"commitMessageTopic": "Helm chart {{depName}}",
|
"commitMessageTopic": "Helm chart {{depName}}",
|
||||||
"separateMinorPatch": true
|
"separateMinorPatch": true
|
||||||
},
|
},
|
||||||
|
// Custom version schemes
|
||||||
|
{
|
||||||
|
"matchDatasources": ["github-tags"],
|
||||||
|
"matchPackageNames": ["potiuk/get-workflow-origin"],
|
||||||
|
"versioning": "regex:^v(?<major>\\d+)_(?<minor>\\d+)(_(?<patch>\\d+))?$"
|
||||||
|
},
|
||||||
|
///
|
||||||
|
/// Automatically update minor/patch Github Actions
|
||||||
|
///
|
||||||
|
{
|
||||||
|
"matchManagers": ["github-actions"],
|
||||||
|
"automerge": true,
|
||||||
|
"automergeType": "branch",
|
||||||
|
"matchUpdateTypes": ["minor", "patch"]
|
||||||
|
},
|
||||||
//
|
//
|
||||||
// Common library dep
|
// Common library dep
|
||||||
//
|
//
|
||||||
{
|
{
|
||||||
|
"matchDatasources": ["helm"],
|
||||||
"commitMessagePrefix": "[{{{parentDir}}}]",
|
"commitMessagePrefix": "[{{{parentDir}}}]",
|
||||||
"branchTopic": "{{{parentDir}}}-{{{depNameSanitized}}}-{{{newMajor}}}{{#if isPatch}}.{{{newMinor}}}{{/if}}.x{{#if isLockfileUpdate}}-lockfile{{/if}}",
|
"branchTopic": "{{{parentDir}}}-{{{depNameSanitized}}}-{{{newMajor}}}{{#if isPatch}}.{{{newMinor}}}{{/if}}.x{{#if isLockfileUpdate}}-lockfile{{/if}}",
|
||||||
"updateTypes": ["major"],
|
"updateTypes": ["major"],
|
||||||
"bumpVersion": "major",
|
"bumpVersion": "major",
|
||||||
"labels": ["dependency/major"],
|
"labels": ["type/major"],
|
||||||
"packageNames": ["common"],
|
"packageNames": ["common"],
|
||||||
"groupName": ["internal major dep"]
|
"groupName": ["common library major"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"matchDatasources": ["helm"],
|
||||||
"updateTypes": ["minor"],
|
"updateTypes": ["minor"],
|
||||||
"bumpVersion": "minor",
|
"bumpVersion": "minor",
|
||||||
"labels": ["dependency/minor"],
|
"labels": ["type/minor"],
|
||||||
"packageNames": ["common"],
|
"packageNames": ["common"],
|
||||||
"groupName": ["internal minor dep"]
|
"groupName": ["common library minor"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"matchDatasources": ["helm"],
|
||||||
"updateTypes": ["patch"],
|
"updateTypes": ["patch"],
|
||||||
"bumpVersion": "patch",
|
"bumpVersion": "patch",
|
||||||
"labels": ["dependency/patch"],
|
"labels": ["type/patch"],
|
||||||
"packageNames": ["common"],
|
"packageNames": ["common"],
|
||||||
"groupName": ["internal patch dep"]
|
"groupName": ["common library patch"]
|
||||||
},
|
},
|
||||||
//
|
//
|
||||||
// Other library deps
|
// Other external chart deps
|
||||||
//
|
//
|
||||||
{
|
{
|
||||||
|
"matchDatasources": ["helm"],
|
||||||
"commitMessagePrefix": "[{{{parentDir}}}]",
|
"commitMessagePrefix": "[{{{parentDir}}}]",
|
||||||
"branchTopic": "{{{parentDir}}}-{{{depNameSanitized}}}-{{{newMajor}}}{{#if isPatch}}.{{{newMinor}}}{{/if}}.x{{#if isLockfileUpdate}}-lockfile{{/if}}",
|
"branchTopic": "{{{parentDir}}}-{{{depNameSanitized}}}-{{{newMajor}}}{{#if isPatch}}.{{{newMinor}}}{{/if}}.x{{#if isLockfileUpdate}}-lockfile{{/if}}",
|
||||||
"updateTypes": ["major"],
|
"updateTypes": ["major"],
|
||||||
"bumpVersion": "major",
|
"bumpVersion": "major",
|
||||||
"labels": ["dependency/major"],
|
"labels": ["type/major"],
|
||||||
"excludePackageNames": ["common"],
|
"excludePackageNames": ["common"],
|
||||||
"schedule": [
|
"schedule": [
|
||||||
"every 3 months on the first day of the month"
|
"every 3 months on the first day of the month"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"matchDatasources": ["helm"],
|
||||||
"updateTypes": ["minor"],
|
"updateTypes": ["minor"],
|
||||||
"bumpVersion": "minor",
|
"bumpVersion": "minor",
|
||||||
"labels": ["dependency/minor"],
|
"labels": ["type/minor"],
|
||||||
"excludePackageNames": ["common"],
|
"excludePackageNames": ["common"],
|
||||||
"groupName": ["external minor dep"],
|
"groupName": ["external dependency minor"],
|
||||||
"schedule": [
|
"schedule": [
|
||||||
"every 2 months on the first day of the month"
|
"every 2 months on the first day of the month"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"matchDatasources": ["helm"],
|
||||||
"updateTypes": ["patch"],
|
"updateTypes": ["patch"],
|
||||||
"bumpVersion": "patch",
|
"bumpVersion": "patch",
|
||||||
"labels": ["dependency/patch"],
|
"labels": ["type/patch"],
|
||||||
"excludePackageNames": ["common"],
|
"excludePackageNames": ["common"],
|
||||||
"groupName": ["external patch dep"],
|
"groupName": ["external dependency patch"],
|
||||||
"schedule": [
|
"schedule": [
|
||||||
"every 1 months on the first day of the month"
|
"every 1 months on the first day of the month"
|
||||||
]
|
]
|
||||||
|
49
.github/scripts/check-releasenotes.sh
vendored
Executable file
49
.github/scripts/check-releasenotes.sh
vendored
Executable file
@ -0,0 +1,49 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Check if release notes have been changed
|
||||||
|
# Usage ./check-releasenotes.sh path
|
||||||
|
|
||||||
|
# require yq
|
||||||
|
command -v yq >/dev/null 2>&1 || {
|
||||||
|
printf >&2 "%s\n" "yq (https://github.com/mikefarah/yq) is not installed. Aborting."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Absolute path of repository
|
||||||
|
repository=$(git rev-parse --show-toplevel)
|
||||||
|
|
||||||
|
# Allow for a specific chart to be passed in as a argument
|
||||||
|
if [ $# -ge 1 ] && [ -n "$1" ]; then
|
||||||
|
root="$1"
|
||||||
|
chart_file="${1}/Chart.yaml"
|
||||||
|
if [ ! -f "$chart_file" ]; then
|
||||||
|
printf >&2 "File %s\n does not exist.\n" "${chart_file}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $root
|
||||||
|
|
||||||
|
if [ -z "$DEFAULT_BRANCH" ]; then
|
||||||
|
DEFAULT_BRANCH=$(git remote show origin | awk '/HEAD branch/ {print $NF}')
|
||||||
|
fi
|
||||||
|
|
||||||
|
CURRENT=$(cat Chart.yaml | yq e '.annotations."artifacthub.io/changes"' -P -)
|
||||||
|
|
||||||
|
if [ "$CURRENT" == "" ] || [ "$CURRENT" == "null" ]; then
|
||||||
|
printf >&2 "Changelog annotation has not been set in %s!\n" "$chart_file"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
DEFAULT_BRANCH=$(git remote show origin | awk '/HEAD branch/ {print $NF}')
|
||||||
|
ORIGINAL=$(git show origin/$DEFAULT_BRANCH:./Chart.yaml | yq e '.annotations."artifacthub.io/changes"' -P -)
|
||||||
|
|
||||||
|
if [ "$CURRENT" == "$ORIGINAL" ]; then
|
||||||
|
printf >&2 "Changelog annotation has not been updated in %s!\n" "$chart_file"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
printf >&2 "%s\n" "No chart folder has been specified."
|
||||||
|
exit 1
|
||||||
|
fi
|
@ -6,7 +6,7 @@ set -eu
|
|||||||
|
|
||||||
# require helm-docs
|
# require helm-docs
|
||||||
command -v helm-docs >/dev/null 2>&1 || {
|
command -v helm-docs >/dev/null 2>&1 || {
|
||||||
echo >&2 "helm-docs is not installed. Aborting."
|
echo >&2 "helm-docs (https://github.com/k8s-at-home/helm-docs) is not installed. Aborting."
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -16,7 +16,6 @@ repository=$(git rev-parse --show-toplevel)
|
|||||||
# Templates to copy into each chart directory
|
# Templates to copy into each chart directory
|
||||||
readme_template="${repository}/hack/templates/README.md.gotmpl"
|
readme_template="${repository}/hack/templates/README.md.gotmpl"
|
||||||
readme_config_template="${repository}/hack/templates/README_CONFIG.md.gotmpl"
|
readme_config_template="${repository}/hack/templates/README_CONFIG.md.gotmpl"
|
||||||
readme_changelog_template="${repository}/hack/templates/README_CHANGELOG.md.gotmpl"
|
|
||||||
|
|
||||||
# Gather all charts using the common library, excluding common-test
|
# Gather all charts using the common library, excluding common-test
|
||||||
charts=$(find "${repository}" -name "Chart.yaml")
|
charts=$(find "${repository}" -name "Chart.yaml")
|
||||||
@ -36,18 +35,13 @@ fi
|
|||||||
for chart in ${charts}; do
|
for chart in ${charts}; do
|
||||||
chart_directory="$(dirname "${chart}")"
|
chart_directory="$(dirname "${chart}")"
|
||||||
echo "-] Copying templates to ${chart_directory}"
|
echo "-] Copying templates to ${chart_directory}"
|
||||||
# Copy README template into each Chart directory, overwrite if exists
|
|
||||||
cp "${readme_template}" "${chart_directory}"
|
|
||||||
# Copy CONFIG template to each Chart directory, do not overwrite if exists
|
# Copy CONFIG template to each Chart directory, do not overwrite if exists
|
||||||
cp -n "${readme_config_template}" "${chart_directory}" || true
|
cp -n "${readme_config_template}" "${chart_directory}" || true
|
||||||
# Copy CHANGELOG template to each Chart directory, do not overwrite if exists
|
|
||||||
cp -n "${readme_changelog_template}" "${chart_directory}" || true
|
|
||||||
done
|
done
|
||||||
|
|
||||||
# Run helm-docs for charts using the common library and the common library itself
|
# Run helm-docs for charts using the common library and the common library itself
|
||||||
helm-docs \
|
helm-docs \
|
||||||
--ignore-file="${repository}/.helmdocsignore" \
|
--ignore-file="${repository}/.helmdocsignore" \
|
||||||
--template-files="$(basename "${readme_template}")" \
|
--template-files="${readme_template}" \
|
||||||
--template-files="$(basename "${readme_config_template}")" \
|
--template-files="$(basename "${readme_config_template}")" \
|
||||||
--template-files="$(basename "${readme_changelog_template}")" \
|
|
||||||
--chart-search-root="${root}"
|
--chart-search-root="${root}"
|
153
.github/scripts/renovate-releasenotes.py
vendored
Executable file
153
.github/scripts/renovate-releasenotes.py
vendored
Executable file
@ -0,0 +1,153 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import typer
|
||||||
|
|
||||||
|
from git import Repo
|
||||||
|
from loguru import logger
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
from ruamel.yaml import YAML
|
||||||
|
from ruamel.yaml.comments import CommentedMap
|
||||||
|
from ruamel.yaml.scalarstring import LiteralScalarString
|
||||||
|
from typing import List
|
||||||
|
|
||||||
|
app = typer.Typer(add_completion=False)
|
||||||
|
|
||||||
|
|
||||||
|
def _setup_logging(debug):
|
||||||
|
"""
|
||||||
|
Setup the log formatter for this script
|
||||||
|
"""
|
||||||
|
|
||||||
|
log_level = "INFO"
|
||||||
|
if debug:
|
||||||
|
log_level = "DEBUG"
|
||||||
|
|
||||||
|
logger.remove()
|
||||||
|
logger.add(
|
||||||
|
sys.stdout,
|
||||||
|
colorize=True,
|
||||||
|
format="<level>{message}</level>",
|
||||||
|
level=log_level,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@app.command()
|
||||||
|
def main(
|
||||||
|
chart_folders: List[Path] = typer.Argument(
|
||||||
|
..., help="Folders containing the chart to process"),
|
||||||
|
check_branch: str = typer.Option(
|
||||||
|
None, help="The branch to compare against."),
|
||||||
|
chart_base_folder: Path = typer.Option(
|
||||||
|
"charts", help="The base folder where the charts reside."),
|
||||||
|
debug: bool = False,
|
||||||
|
):
|
||||||
|
_setup_logging(debug)
|
||||||
|
|
||||||
|
git_repository = Repo(search_parent_directories=True)
|
||||||
|
|
||||||
|
if check_branch:
|
||||||
|
logger.info(f"Trying to find branch {check_branch}...")
|
||||||
|
branch = next(
|
||||||
|
(ref for ref in git_repository.remotes.origin.refs if ref.name == check_branch),
|
||||||
|
None
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
logger.info(f"Trying to determine default branch...")
|
||||||
|
branch = next(
|
||||||
|
(ref for ref in git_repository.remotes.origin.refs if ref.name == "origin/HEAD"),
|
||||||
|
None
|
||||||
|
)
|
||||||
|
|
||||||
|
if not branch:
|
||||||
|
logger.error(
|
||||||
|
f"Could not find branch {check_branch} to compare against.")
|
||||||
|
raise typer.Exit(1)
|
||||||
|
|
||||||
|
logger.info(f"Comparing against branch {branch}")
|
||||||
|
|
||||||
|
for chart_folder in chart_folders:
|
||||||
|
chart_folder = chart_base_folder.joinpath(chart_folder)
|
||||||
|
if not chart_folder.is_dir():
|
||||||
|
logger.error(f"Could not find folder {str(chart_folder)}")
|
||||||
|
raise typer.Exit(1)
|
||||||
|
|
||||||
|
chart_metadata_file = chart_folder.joinpath('Chart.yaml')
|
||||||
|
|
||||||
|
if not chart_metadata_file.is_file():
|
||||||
|
logger.error(f"Could not find file {str(chart_metadata_file)}")
|
||||||
|
raise typer.Exit(1)
|
||||||
|
|
||||||
|
logger.info(f"Updating changelog annotation for chart {chart_folder}")
|
||||||
|
|
||||||
|
yaml = YAML(typ=['rt', 'string'])
|
||||||
|
yaml.indent(mapping=2, sequence=4, offset=2)
|
||||||
|
yaml.explicit_start = True
|
||||||
|
yaml.preserve_quotes = True
|
||||||
|
yaml.width = 4096
|
||||||
|
|
||||||
|
old_chart_metadata = yaml.load(
|
||||||
|
git_repository.git.show(f"{branch}:{chart_metadata_file}")
|
||||||
|
)
|
||||||
|
new_chart_metadata = yaml.load(chart_metadata_file.read_text())
|
||||||
|
|
||||||
|
try:
|
||||||
|
old_chart_dependencies = old_chart_metadata["dependencies"]
|
||||||
|
except KeyError:
|
||||||
|
old_chart_dependencies = []
|
||||||
|
|
||||||
|
try:
|
||||||
|
new_chart_dependencies = new_chart_metadata["dependencies"]
|
||||||
|
except KeyError:
|
||||||
|
new_chart_dependencies = []
|
||||||
|
|
||||||
|
annotations = []
|
||||||
|
for dependency in new_chart_dependencies:
|
||||||
|
old_dep = None
|
||||||
|
if "alias" in dependency.keys():
|
||||||
|
old_dep = next(
|
||||||
|
(old_dep for old_dep in old_chart_dependencies if "alias" in old_dep.keys(
|
||||||
|
) and old_dep["alias"] == dependency["alias"]),
|
||||||
|
None
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
old_dep = next(
|
||||||
|
(old_dep for old_dep in old_chart_dependencies if old_dep["name"] == dependency["name"]),
|
||||||
|
None
|
||||||
|
)
|
||||||
|
|
||||||
|
add_annotation = False
|
||||||
|
if old_dep:
|
||||||
|
if dependency["version"] != old_dep["version"]:
|
||||||
|
add_annotation = True
|
||||||
|
else:
|
||||||
|
add_annotation = True
|
||||||
|
|
||||||
|
if add_annotation:
|
||||||
|
if "alias" in dependency.keys():
|
||||||
|
annotations.append({
|
||||||
|
"kind": "changed",
|
||||||
|
"description": f"Upgraded `{dependency['name']}` chart dependency to version {dependency['version']} for alias '{dependency['alias']}'"
|
||||||
|
})
|
||||||
|
else:
|
||||||
|
annotations.append({
|
||||||
|
"kind": "changed",
|
||||||
|
"description": f"Upgraded `{dependency['name']}` chart dependency to version {dependency['version']}"
|
||||||
|
})
|
||||||
|
|
||||||
|
if annotations:
|
||||||
|
annotations = YAML(typ=['rt', 'string']
|
||||||
|
).dump_to_string(annotations)
|
||||||
|
|
||||||
|
if not "annotations" in new_chart_metadata:
|
||||||
|
new_chart_metadata["annotations"] = CommentedMap()
|
||||||
|
|
||||||
|
new_chart_metadata["annotations"]["artifacthub.io/changes"] = LiteralScalarString(
|
||||||
|
annotations)
|
||||||
|
yaml.dump(new_chart_metadata, chart_metadata_file)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
app()
|
5
.github/scripts/requirements.txt
vendored
Normal file
5
.github/scripts/requirements.txt
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
GitPython==3.1.27
|
||||||
|
loguru==0.6.0
|
||||||
|
ruamel.yaml==0.17.21
|
||||||
|
ruamel.yaml.string==0.1.0
|
||||||
|
typer==0.6.1
|
32
.github/stale.yml
vendored
32
.github/stale.yml
vendored
@ -1,32 +0,0 @@
|
|||||||
# Configuration for probot-stale - https://github.com/probot/stale
|
|
||||||
|
|
||||||
# Number of days of inactivity before an Issue or Pull Request becomes stale
|
|
||||||
daysUntilStale: 45
|
|
||||||
|
|
||||||
# Number of days of inactivity before a stale Issue or Pull Request is closed.
|
|
||||||
daysUntilClose: 5
|
|
||||||
|
|
||||||
# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
|
|
||||||
exemptLabels:
|
|
||||||
- on-hold
|
|
||||||
- pinned
|
|
||||||
|
|
||||||
# Label to use when marking as stale
|
|
||||||
staleLabel: stale
|
|
||||||
|
|
||||||
issues:
|
|
||||||
# Comment to post when marking as stale. Set to `false` to disable
|
|
||||||
markComment: >
|
|
||||||
This Issue has been automatically marked as "stale" because it has not had recent activity (for 45 days). It will be closed if no further activity occurs. Thanks for the feedback.
|
|
||||||
# Comment to post when closing a stale Issue or Pull Request.
|
|
||||||
closeComment: >
|
|
||||||
Due to the lack of activity in the last 5 days since it was marked as "stale", we proceed to close this Issue. Do not hesitate to reopen it later if necessary.
|
|
||||||
pulls:
|
|
||||||
# Comment to post when marking as stale. Set to `false` to disable
|
|
||||||
markComment: >
|
|
||||||
This Pull Request has been automatically marked as "stale" because it has not had recent activity (for 45 days). It will be closed if no further activity occurs. Thank you for your contribution.
|
|
||||||
# Comment to post when closing a stale Issue or Pull Request.
|
|
||||||
closeComment: >
|
|
||||||
Due to the lack of activity in the last 5 days since it was marked as "stale", we proceed to close this Pull Request. Do not hesitate to reopen it later if necessary.
|
|
||||||
# Limit the number of actions per hour, from 1-30. Default is 30
|
|
||||||
limitPerRun: 30
|
|
81
.github/workflows/charts-changelog.yaml
vendored
Normal file
81
.github/workflows/charts-changelog.yaml
vendored
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
name: "Charts: Update README"
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
modifiedCharts:
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
isRenovatePR:
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
outputs:
|
||||||
|
commitHash:
|
||||||
|
description: "The most recent commit hash at the end of this workflow"
|
||||||
|
value: ${{ jobs.generate-changelog.outputs.commitHash }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
validate-changelog:
|
||||||
|
name: Validate changelog
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Check changelog annotations
|
||||||
|
if: inputs.isRenovatePR != 'true'
|
||||||
|
run: |
|
||||||
|
CHARTS=(${{ inputs.modifiedCharts }})
|
||||||
|
for i in "${CHARTS[@]}"
|
||||||
|
do
|
||||||
|
IFS='/' read -r -a chart_parts <<< "$i"
|
||||||
|
./.github/scripts/check-releasenotes.sh "charts/${chart_parts[0]}/${chart_parts[1]}"
|
||||||
|
echo ""
|
||||||
|
done
|
||||||
|
|
||||||
|
generate-changelog:
|
||||||
|
name: Generate changelog annotations
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs:
|
||||||
|
- validate-changelog
|
||||||
|
outputs:
|
||||||
|
commitHash: ${{ steps.save-commit-hash.outputs.commit_hash }}
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Setup Python
|
||||||
|
uses: actions/setup-python@v4
|
||||||
|
with:
|
||||||
|
python-version: "3.10"
|
||||||
|
|
||||||
|
- name: Annotate Charts.yaml for Renovate PR's
|
||||||
|
if: inputs.isRenovatePR == 'true'
|
||||||
|
env:
|
||||||
|
CHECK_BRANCH: "origin/${{ github.event.repository.default_branch }}"
|
||||||
|
run: |
|
||||||
|
pip install -r ./.github/scripts/requirements.txt
|
||||||
|
./.github/scripts/renovate-releasenotes.py --check-branch "$CHECK_BRANCH" ${{ inputs.modifiedCharts }}
|
||||||
|
|
||||||
|
- name: Create commit
|
||||||
|
id: create-commit
|
||||||
|
if: inputs.isRenovatePR == 'true'
|
||||||
|
uses: stefanzweifel/git-auto-commit-action@v4
|
||||||
|
with:
|
||||||
|
file_pattern: charts/**/
|
||||||
|
commit_message: "chore: Auto-update chart metadata"
|
||||||
|
commit_user_name: ${{ github.actor }}
|
||||||
|
commit_user_email: ${{ github.actor }}@users.noreply.github.com
|
||||||
|
|
||||||
|
- name: Save commit hash
|
||||||
|
id: save-commit-hash
|
||||||
|
run: |
|
||||||
|
if [ "${{ steps.create-commit.outputs.changes_detected || 'unknown' }}" == "true" ]; then
|
||||||
|
echo '::set-output name=commit_hash::${{ steps.create-commit.outputs.commit_hash }}'
|
||||||
|
else
|
||||||
|
echo "::set-output name=commit_hash::${GITHUB_SHA}"
|
||||||
|
fi
|
52
.github/workflows/charts-helm-docs.yaml.disabled
vendored
52
.github/workflows/charts-helm-docs.yaml.disabled
vendored
@ -1,52 +0,0 @@
|
|||||||
#
|
|
||||||
# Disabled until we fix the chart releaser
|
|
||||||
#
|
|
||||||
|
|
||||||
# name: "Charts: helm-docs"
|
|
||||||
|
|
||||||
# on:
|
|
||||||
# workflow_dispatch:
|
|
||||||
# schedule:
|
|
||||||
# - cron: "0 0 * * *"
|
|
||||||
|
|
||||||
# jobs:
|
|
||||||
# update-helm-docs:
|
|
||||||
# runs-on: ubuntu-20.04
|
|
||||||
# steps:
|
|
||||||
# - name: Checkout
|
|
||||||
# uses: actions/checkout@v2
|
|
||||||
# with:
|
|
||||||
# fetch-depth: 0
|
|
||||||
|
|
||||||
# - name: Install Helm
|
|
||||||
# uses: azure/setup-helm@v1
|
|
||||||
# with:
|
|
||||||
# version: v3.5.3
|
|
||||||
|
|
||||||
# - uses: actions/setup-python@v2
|
|
||||||
# with:
|
|
||||||
# python-version: 3.7
|
|
||||||
|
|
||||||
# - name: Install helm-docs
|
|
||||||
# run: |
|
|
||||||
# wget -O /tmp/helm-docs.deb https://github.com/norwoodj/helm-docs/releases/download/v1.5.0/helm-docs_1.5.0_linux_amd64.deb
|
|
||||||
# sudo dpkg -i /tmp/helm-docs.deb
|
|
||||||
|
|
||||||
# - name: Update Helm docs
|
|
||||||
# run: |
|
|
||||||
# ./hack/gen-helm-docs.sh
|
|
||||||
|
|
||||||
# - name: Create pull request for helm-docs
|
|
||||||
# uses: peter-evans/create-pull-request@v3
|
|
||||||
# with:
|
|
||||||
# token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
# branch: "helm-docs/ci"
|
|
||||||
# delete-branch: true
|
|
||||||
# title: "chore(docs): update helm-docs [ci-skip]"
|
|
||||||
# signoff: true
|
|
||||||
# committer: "${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>"
|
|
||||||
# author: "${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>"
|
|
||||||
# commit-message: "chore(docs): update helm-docs [ci-skip]"
|
|
||||||
# body: |
|
|
||||||
# Signed-off-by: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
|
|
||||||
# labels: helm-docs
|
|
294
.github/workflows/charts-lint-test.yaml
vendored
294
.github/workflows/charts-lint-test.yaml
vendored
@ -1,294 +0,0 @@
|
|||||||
name: "Charts: Lint and test"
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
paths:
|
|
||||||
- 'charts/**'
|
|
||||||
- '!charts/**/README.md'
|
|
||||||
- '!charts/**/README.md.gotmpl'
|
|
||||||
- '!charts/**/README_CHANGELOG.md.gotmpl'
|
|
||||||
- '!charts/**/README_CONFIG.md.gotmpl'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
changes-lint:
|
|
||||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
|
||||||
name: Detect changes for linting
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
outputs:
|
|
||||||
matrix: |
|
|
||||||
{
|
|
||||||
"chart": ${{ steps.list-changed.outputs.charts }}
|
|
||||||
}
|
|
||||||
detected: ${{ steps.list-changed.outputs.detected }}
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Set up chart-testing
|
|
||||||
uses: helm/chart-testing-action@v2.0.1
|
|
||||||
|
|
||||||
- name: Install Dev tools
|
|
||||||
run: |
|
|
||||||
sudo wget https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /usr/bin/yq
|
|
||||||
sudo chmod +x /usr/bin/yq
|
|
||||||
|
|
||||||
- name: Run chart-testing (list-changed)
|
|
||||||
id: list-changed
|
|
||||||
run: |
|
|
||||||
EXCLUDED=$(yq eval -j '.excluded-charts // []' .github/ct-lint.yaml)
|
|
||||||
CHARTS=$(ct list-changed --config .github/ct-lint.yaml)
|
|
||||||
CHARTS_JSON=$(echo "${CHARTS}" | jq -R -s -c 'split("\n")[:-1]')
|
|
||||||
OUTPUT_JSON=$(echo "{\"excluded\": ${EXCLUDED}, \"all\": ${CHARTS_JSON}}" | jq -c '.all-.excluded')
|
|
||||||
echo ::set-output name=charts::${OUTPUT_JSON}
|
|
||||||
if [[ $(echo ${OUTPUT_JSON} | jq -c '. | length') -gt 0 ]]; then
|
|
||||||
echo "::set-output name=detected::true"
|
|
||||||
fi
|
|
||||||
|
|
||||||
changes-install:
|
|
||||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
|
||||||
name: Detect changes for install
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
outputs:
|
|
||||||
matrix: |
|
|
||||||
{
|
|
||||||
"chart": ${{ steps.list-changed.outputs.charts }}
|
|
||||||
}
|
|
||||||
detected: ${{ steps.list-changed.outputs.detected }}
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Set up chart-testing
|
|
||||||
uses: helm/chart-testing-action@v2.0.1
|
|
||||||
|
|
||||||
- name: Install Dev tools
|
|
||||||
run: |
|
|
||||||
sudo wget https://github.com/mikefarah/yq/releases/download/v4.2.0/yq_linux_amd64 -O /usr/bin/yq
|
|
||||||
sudo chmod +x /usr/bin/yq
|
|
||||||
|
|
||||||
- name: Run chart-testing (list-changed)
|
|
||||||
id: list-changed
|
|
||||||
run: |
|
|
||||||
EXCLUDED=$(yq eval -j '.excluded-charts // []' .github/ct-install.yaml)
|
|
||||||
CHARTS=$(ct list-changed --config .github/ct-install.yaml)
|
|
||||||
CHARTS_JSON=$(echo "${CHARTS}" | jq -R -s -c 'split("\n")[:-1]')
|
|
||||||
OUTPUT_JSON=$(echo "{\"excluded\": ${EXCLUDED}, \"all\": ${CHARTS_JSON}}" | jq -c '.all-.excluded')
|
|
||||||
echo ::set-output name=charts::${OUTPUT_JSON}
|
|
||||||
if [[ $(echo ${OUTPUT_JSON} | jq -c '. | length') -gt 0 ]]; then
|
|
||||||
echo "::set-output name=detected::true"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check_version:
|
|
||||||
needs:
|
|
||||||
- changes-lint
|
|
||||||
if: |
|
|
||||||
!contains(github.event.head_commit.message, '[ci-skip]') &&
|
|
||||||
needs.changes-lint.outputs.detected == 'true'
|
|
||||||
name: Check chart version numbers
|
|
||||||
strategy:
|
|
||||||
matrix: ${{ fromJson(needs.changes-lint.outputs.matrix) }}
|
|
||||||
fail-fast: true
|
|
||||||
max-parallel: 15
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Get version
|
|
||||||
id: version-get
|
|
||||||
run: |
|
|
||||||
shopt -s extglob
|
|
||||||
OUTPUT=$(helm inspect chart ${{ matrix.chart }} | grep "^version:")
|
|
||||||
VERSION=${OUTPUT#"version:"}
|
|
||||||
echo "::set-output name=version::${VERSION##*( )}"
|
|
||||||
shopt -u extglob
|
|
||||||
|
|
||||||
- name: Parse version
|
|
||||||
id: version-parse
|
|
||||||
uses: apexskier/github-semver-parse@v1
|
|
||||||
with:
|
|
||||||
version: ${{ steps.version-get.outputs.version }}
|
|
||||||
|
|
||||||
- name: Check version
|
|
||||||
id: version-check
|
|
||||||
run: |
|
|
||||||
if [[ ${{ matrix.chart }} =~ ^charts\/(.*)\/.* ]]; then
|
|
||||||
TYPE="${BASH_REMATCH[1]}"
|
|
||||||
case $TYPE in
|
|
||||||
stable)
|
|
||||||
if [[ ${{ steps.version-parse.outputs.major }} -lt 1 ]]; then
|
|
||||||
echo "::error file=${{ matrix.chart }}::Chart version for \"$TYPE\" charts must be >= 1.0.0"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
incubator)
|
|
||||||
if [[ ${{ steps.version-parse.outputs.major }} -gt 0 ]]; then
|
|
||||||
echo "::error file=${{ matrix.chart }}::Chart version for \"$TYPE\" charts must be < 1.0.0"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
echo "::error file=${{ matrix.chart }}::Unhandled chart type: $TYPE"
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
|
||||||
check_version_success:
|
|
||||||
needs:
|
|
||||||
- changes-lint
|
|
||||||
- check_version
|
|
||||||
if: ${{ always() }}
|
|
||||||
name: Version check successful
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- name: Check Version matrix status
|
|
||||||
if: ${{ !contains(github.event.head_commit.message, '[ci-skip]') && needs.changes-lint.outputs.detected == 'true' && needs.check_version.result != 'success' }}
|
|
||||||
run: |
|
|
||||||
exit 1
|
|
||||||
|
|
||||||
lint:
|
|
||||||
needs:
|
|
||||||
- changes-lint
|
|
||||||
if: |
|
|
||||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
|
||||||
&&
|
|
||||||
needs.changes-lint.outputs.detected == 'true'
|
|
||||||
name: Lint charts
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Install Helm
|
|
||||||
uses: azure/setup-helm@v1
|
|
||||||
with:
|
|
||||||
version: v3.5.3
|
|
||||||
|
|
||||||
- uses: actions/setup-python@v2
|
|
||||||
with:
|
|
||||||
python-version: 3.7
|
|
||||||
|
|
||||||
- name: Set up chart-testing
|
|
||||||
uses: helm/chart-testing-action@v2.0.1
|
|
||||||
|
|
||||||
- name: Run chart-testing (lint)
|
|
||||||
id: lint
|
|
||||||
run: ct lint --config .github/ct-lint.yaml
|
|
||||||
|
|
||||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
|
||||||
lint_success:
|
|
||||||
needs:
|
|
||||||
- changes-lint
|
|
||||||
- lint
|
|
||||||
if: ${{ always() }}
|
|
||||||
name: Lint successful
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- name: Check lint matrix status
|
|
||||||
if: ${{ !contains(github.event.head_commit.message, '[ci-skip]') && needs.changes-lint.outputs.detected == 'true' && needs.lint.result != 'success' }}
|
|
||||||
run: exit 1
|
|
||||||
|
|
||||||
unittest:
|
|
||||||
needs:
|
|
||||||
- lint_success
|
|
||||||
if: |
|
|
||||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
|
||||||
name: Run unit tests
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Install Dev tools
|
|
||||||
run: sudo apt-get update && sudo apt-get install -y jq libjq-dev
|
|
||||||
|
|
||||||
- name: Install Helm
|
|
||||||
uses: azure/setup-helm@v1
|
|
||||||
with:
|
|
||||||
version: v3.5.3
|
|
||||||
|
|
||||||
- name: Install Ruby
|
|
||||||
uses: ruby/setup-ruby@v1
|
|
||||||
with:
|
|
||||||
ruby-version: 2.7
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
env:
|
|
||||||
RUBYJQ_USE_SYSTEM_LIBRARIES: 1
|
|
||||||
run: |
|
|
||||||
bundle install
|
|
||||||
|
|
||||||
- name: Run tests
|
|
||||||
run: |
|
|
||||||
bundle exec m -r ./test/
|
|
||||||
|
|
||||||
install:
|
|
||||||
needs:
|
|
||||||
- changes-install
|
|
||||||
- check_version_success
|
|
||||||
- lint_success
|
|
||||||
if: |
|
|
||||||
!contains(github.event.head_commit.message, '[ci-skip]')
|
|
||||||
&&
|
|
||||||
needs.changes-install.outputs.detected == 'true'
|
|
||||||
name: Install charts
|
|
||||||
strategy:
|
|
||||||
matrix: ${{ fromJson(needs.changes-install.outputs.matrix) }}
|
|
||||||
fail-fast: true
|
|
||||||
max-parallel: 15
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Install Helm
|
|
||||||
uses: azure/setup-helm@v1
|
|
||||||
with:
|
|
||||||
version: v3.5.3
|
|
||||||
|
|
||||||
- uses: actions/setup-python@v2
|
|
||||||
with:
|
|
||||||
python-version: 3.7
|
|
||||||
|
|
||||||
- name: Set up chart-testing
|
|
||||||
uses: helm/chart-testing-action@v2.0.1
|
|
||||||
|
|
||||||
- name: Create k3d cluster
|
|
||||||
uses: nolar/setup-k3d-k3s@v1
|
|
||||||
with:
|
|
||||||
version: v1.19
|
|
||||||
|
|
||||||
- name: Remove node taints
|
|
||||||
run: |
|
|
||||||
kubectl taint --all=true nodes node.cloudprovider.kubernetes.io/uninitialized- || true
|
|
||||||
|
|
||||||
- name: Run chart-testing (install)
|
|
||||||
run: ct install --config .github/ct-install.yaml --charts ${{ matrix.chart }}
|
|
||||||
|
|
||||||
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
|
||||||
install_success:
|
|
||||||
needs:
|
|
||||||
- changes-install
|
|
||||||
- install
|
|
||||||
if: ${{ always() }}
|
|
||||||
name: Install successful
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- name: Check install matrix status
|
|
||||||
if: ${{ !contains(github.event.head_commit.message, '[ci-skip]') && needs.changes-install.outputs.detected == 'true' && needs.install.result != 'success' }}
|
|
||||||
run: exit 1
|
|
54
.github/workflows/charts-lint.yaml
vendored
Normal file
54
.github/workflows/charts-lint.yaml
vendored
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
name: "Charts: Lint"
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
checkoutCommit:
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
chartChangesDetected:
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint:
|
||||||
|
name: Lint charts
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
ref: ${{ inputs.checkoutCommit }}
|
||||||
|
|
||||||
|
- name: Install Kubernetes tools
|
||||||
|
uses: yokawasa/action-setup-kube-tools@v0.8.2
|
||||||
|
with:
|
||||||
|
setup-tools: |
|
||||||
|
helmv3
|
||||||
|
helm: "3.8.0"
|
||||||
|
|
||||||
|
- uses: actions/setup-python@v4
|
||||||
|
with:
|
||||||
|
python-version: "3.10"
|
||||||
|
|
||||||
|
- name: Set up chart-testing
|
||||||
|
uses: helm/chart-testing-action@v2.3.0
|
||||||
|
|
||||||
|
- name: Collect changes
|
||||||
|
id: list-changed
|
||||||
|
if: inputs.chartChangesDetected == 'true'
|
||||||
|
run: |
|
||||||
|
EXCLUDED=$(yq eval -o=json '.excluded-charts // []' .github/ct-lint.yaml)
|
||||||
|
CHARTS=$(ct list-changed --config .github/ct-lint.yaml)
|
||||||
|
CHARTS_JSON=$(echo "${CHARTS}" | jq -R -s -c 'split("\n")[:-1]')
|
||||||
|
OUTPUT_JSON=$(echo "{\"excluded\": ${EXCLUDED}, \"all\": ${CHARTS_JSON}}" | jq -c '.all-.excluded')
|
||||||
|
echo ::set-output name=charts::${OUTPUT_JSON}
|
||||||
|
if [[ $(echo ${OUTPUT_JSON} | jq -c '. | length') -gt 0 ]]; then
|
||||||
|
echo "::set-output name=detected::true"
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Run chart-testing (lint)
|
||||||
|
id: lint
|
||||||
|
if: steps.list-changed.outputs.detected == 'true'
|
||||||
|
run: ct lint --config .github/ct-lint.yaml
|
145
.github/workflows/charts-release.yaml
vendored
145
.github/workflows/charts-release.yaml
vendored
@ -1,61 +1,138 @@
|
|||||||
name: "Charts: Release"
|
name: "Charts: Release"
|
||||||
|
|
||||||
|
concurrency: helm-release
|
||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- master
|
||||||
paths:
|
paths:
|
||||||
- 'charts/**'
|
- "charts/**"
|
||||||
- '!charts/**/README.md'
|
|
||||||
- '!charts/**/README.md.gotmpl'
|
|
||||||
- '!charts/**/README_CHANGELOG.md.gotmpl'
|
|
||||||
- '!charts/**/README_CONFIG.md.gotmpl'
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
pre-release:
|
|
||||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
timeout-minutes: 5
|
|
||||||
steps:
|
|
||||||
- name: Block concurrent jobs
|
|
||||||
uses: softprops/turnstyle@v1
|
|
||||||
with:
|
|
||||||
continue-after-seconds: 180
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
release:
|
release:
|
||||||
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
|
|
||||||
needs: pre-release
|
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- name: Block concurrent jobs
|
- name: Generate Token
|
||||||
uses: softprops/turnstyle@v1
|
uses: tibdex/github-app-token@v1
|
||||||
|
id: generate-token
|
||||||
with:
|
with:
|
||||||
continue-after-seconds: 180
|
app_id: ${{ secrets.K8S_AT_HOME_APP_ID }}
|
||||||
env:
|
private_key: ${{ secrets.K8S_AT_HOME_APP_PRIVATE_KEY }}
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
with:
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Install Kubernetes tools
|
||||||
|
uses: yokawasa/action-setup-kube-tools@v0.8.2
|
||||||
|
with:
|
||||||
|
setup-tools: |
|
||||||
|
helmv3
|
||||||
|
yq
|
||||||
|
helm: "3.8.0"
|
||||||
|
yq: "4.16.2"
|
||||||
|
|
||||||
|
- name: Install helm-docs
|
||||||
|
run: |
|
||||||
|
wget -O /tmp/helm-docs.deb https://github.com/k8s-at-home/helm-docs/releases/download/v0.1.1/helm-docs_0.1.1_Linux_x86_64.deb
|
||||||
|
sudo dpkg -i /tmp/helm-docs.deb
|
||||||
|
|
||||||
|
- name: Collect changes
|
||||||
|
id: collect-changes
|
||||||
|
uses: ./.github/actions/collect-changes
|
||||||
|
|
||||||
|
- name: Generate README for changed charts
|
||||||
|
if: |
|
||||||
|
steps.collect-changes.outputs.changesDetected == 'true'
|
||||||
|
run: |
|
||||||
|
CHARTS=(${{ steps.collect-changes.outputs.addedOrModifiedCharts }})
|
||||||
|
for i in "${CHARTS[@]}"
|
||||||
|
do
|
||||||
|
IFS='/' read -r -a chart_parts <<< "$i"
|
||||||
|
if [ -f "charts/${chart_parts[0]}"/"${chart_parts[1]}/Chart.yaml" ]; then
|
||||||
|
./.github/scripts/gen-helm-docs.sh "${chart_parts[0]}" "${chart_parts[1]}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
- name: Create commit
|
||||||
|
id: create-commit
|
||||||
|
uses: stefanzweifel/git-auto-commit-action@v4
|
||||||
|
with:
|
||||||
|
file_pattern: charts/**/
|
||||||
|
commit_message: "chore: Auto-update chart README [skip ci]"
|
||||||
|
commit_user_name: k8s-at-home[bot]
|
||||||
|
commit_user_email: k8s-at-home[bot]@users.noreply.github.com
|
||||||
|
commit_author: k8s-at-home[bot] <k8s-at-home[bot]@users.noreply.github.com>
|
||||||
|
|
||||||
|
- name: Save commit hash
|
||||||
|
id: save-commit-hash
|
||||||
|
run: |
|
||||||
|
if [ "${{ steps.create-commit.outputs.changes_detected || 'unknown' }}" == "true" ]; then
|
||||||
|
echo '::set-output name=commit_hash::${{ steps.create-commit.outputs.commit_hash }}'
|
||||||
|
else
|
||||||
|
echo "::set-output name=commit_hash::${GITHUB_SHA}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
ref: ${{ steps.save-commit-hash.outputs.commit_hash }}
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Configure Git
|
- name: Configure Git
|
||||||
run: |
|
run: |
|
||||||
git config user.name "$GITHUB_ACTOR"
|
git config user.name "k8s-at-home[bot]"
|
||||||
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
|
git config user.email "k8s-at-home[bot]@users.noreply.github.com"
|
||||||
|
|
||||||
- name: Install Helm
|
|
||||||
uses: azure/setup-helm@v1
|
|
||||||
with:
|
|
||||||
version: v3.5.3
|
|
||||||
|
|
||||||
- name: Run chart-releaser
|
- name: Run chart-releaser
|
||||||
uses: helm/chart-releaser-action@v1.2.0
|
uses: helm/chart-releaser-action@v1.4.0
|
||||||
with:
|
with:
|
||||||
charts_dir: charts/*
|
charts_dir: charts/*
|
||||||
charts_repo_url: https://k8s-at-home.com/charts/
|
charts_repo_url: https://k8s-at-home.com/charts/
|
||||||
env:
|
env:
|
||||||
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
CR_TOKEN: "${{ steps.generate-token.outputs.token }}"
|
||||||
|
CR_SKIP_EXISTING: "true"
|
||||||
|
|
||||||
|
generate-summary:
|
||||||
|
name: Auto-generate charts summary
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
needs:
|
||||||
|
- release
|
||||||
|
steps:
|
||||||
|
- name: Generate Token
|
||||||
|
uses: tibdex/github-app-token@v1
|
||||||
|
id: generate-token
|
||||||
|
with:
|
||||||
|
app_id: ${{ secrets.K8S_AT_HOME_APP_ID }}
|
||||||
|
private_key: ${{ secrets.K8S_AT_HOME_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
ref: master
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Install yq
|
||||||
|
uses: chrisdickinson/setup-yq@latest
|
||||||
|
with:
|
||||||
|
yq-version: v4.9.3
|
||||||
|
|
||||||
|
- name: Run script
|
||||||
|
run: |
|
||||||
|
./hack/gen-chart-summary.sh
|
||||||
|
|
||||||
|
- name: Create Commit
|
||||||
|
uses: stefanzweifel/git-auto-commit-action@v4
|
||||||
|
with:
|
||||||
|
push_options: --force
|
||||||
|
commit_message: Auto-generate chart summary [no ci]
|
||||||
|
commit_user_name: k8s-at-home[bot]
|
||||||
|
commit_user_email: k8s-at-home[bot]@users.noreply.github.com
|
||||||
|
commit_author: k8s-at-home[bot] <k8s-at-home[bot]@users.noreply.github.com>
|
||||||
|
file_pattern: charts/README.md
|
||||||
|
134
.github/workflows/charts-test.yaml
vendored
Normal file
134
.github/workflows/charts-test.yaml
vendored
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
name: "Charts: Test"
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
checkoutCommit:
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
chartChangesDetected:
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
unit-test:
|
||||||
|
name: Run unit tests
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
ref: ${{ inputs.checkoutCommit }}
|
||||||
|
|
||||||
|
- name: Install Kubernetes tools
|
||||||
|
uses: yokawasa/action-setup-kube-tools@v0.8.2
|
||||||
|
with:
|
||||||
|
setup-tools: |
|
||||||
|
helmv3
|
||||||
|
helm: "3.8.0"
|
||||||
|
|
||||||
|
- name: Install Ruby
|
||||||
|
uses: ruby/setup-ruby@v1
|
||||||
|
with:
|
||||||
|
ruby-version: 2.7
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
env:
|
||||||
|
RUBYJQ_USE_SYSTEM_LIBRARIES: 1
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install libjq-dev
|
||||||
|
bundle install
|
||||||
|
|
||||||
|
- name: Run tests
|
||||||
|
run: |
|
||||||
|
bundle exec m -r ./test/
|
||||||
|
|
||||||
|
generate-install-matrix:
|
||||||
|
name: Generate matrix for install
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
matrix: |
|
||||||
|
{
|
||||||
|
"chart": ${{ steps.list-changed.outputs.charts }}
|
||||||
|
}
|
||||||
|
detected: ${{ steps.list-changed.outputs.detected }}
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
ref: ${{ inputs.checkoutCommit }}
|
||||||
|
|
||||||
|
- name: Set up chart-testing
|
||||||
|
uses: helm/chart-testing-action@v2.3.0
|
||||||
|
|
||||||
|
- name: Run chart-testing (list-changed)
|
||||||
|
id: list-changed
|
||||||
|
if: inputs.chartChangesDetected == 'true'
|
||||||
|
run: |
|
||||||
|
EXCLUDED=$(yq eval -o=json '.excluded-charts // []' .github/ct-install.yaml)
|
||||||
|
CHARTS=$(ct list-changed --config .github/ct-install.yaml)
|
||||||
|
CHARTS_JSON=$(echo "${CHARTS}" | jq -R -s -c 'split("\n")[:-1]')
|
||||||
|
OUTPUT_JSON=$(echo "{\"excluded\": ${EXCLUDED}, \"all\": ${CHARTS_JSON}}" | jq -c '.all-.excluded')
|
||||||
|
echo ::set-output name=charts::${OUTPUT_JSON}
|
||||||
|
if [[ $(echo ${OUTPUT_JSON} | jq -c '. | length') -gt 0 ]]; then
|
||||||
|
echo "::set-output name=detected::true"
|
||||||
|
fi
|
||||||
|
|
||||||
|
install-charts:
|
||||||
|
needs:
|
||||||
|
- generate-install-matrix
|
||||||
|
if: needs.generate-install-matrix.outputs.detected == 'true'
|
||||||
|
name: Install charts
|
||||||
|
strategy:
|
||||||
|
matrix: ${{ fromJson(needs.generate-install-matrix.outputs.matrix) }}
|
||||||
|
fail-fast: false
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
ref: ${{ inputs.checkoutCommit }}
|
||||||
|
|
||||||
|
- name: Install Kubernetes tools
|
||||||
|
uses: yokawasa/action-setup-kube-tools@v0.8.2
|
||||||
|
with:
|
||||||
|
setup-tools: |
|
||||||
|
helmv3
|
||||||
|
helm: "3.6.3"
|
||||||
|
|
||||||
|
- uses: actions/setup-python@v4
|
||||||
|
with:
|
||||||
|
python-version: "3.10"
|
||||||
|
|
||||||
|
- name: Set up chart-testing
|
||||||
|
uses: helm/chart-testing-action@v2.3.0
|
||||||
|
|
||||||
|
- name: Create k3d cluster
|
||||||
|
uses: nolar/setup-k3d-k3s@v1
|
||||||
|
with:
|
||||||
|
version: v1.19
|
||||||
|
|
||||||
|
- name: Remove node taints
|
||||||
|
run: |
|
||||||
|
kubectl taint --all=true nodes node.cloudprovider.kubernetes.io/uninitialized- || true
|
||||||
|
|
||||||
|
- name: Run chart-testing (install)
|
||||||
|
run: ct install --config .github/ct-install.yaml --charts ${{ matrix.chart }}
|
||||||
|
|
||||||
|
# Summarize matrix https://github.community/t/status-check-for-a-matrix-jobs/127354/7
|
||||||
|
install_success:
|
||||||
|
needs:
|
||||||
|
- generate-install-matrix
|
||||||
|
- install-charts
|
||||||
|
if: |
|
||||||
|
always()
|
||||||
|
name: Install successful
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Check install matrix status
|
||||||
|
if: ${{ (needs.generate-install-matrix.outputs.detected == 'true') && (needs.install-charts.result != 'success') }}
|
||||||
|
run: exit 1
|
21
.github/workflows/invalid-template.yaml
vendored
21
.github/workflows/invalid-template.yaml
vendored
@ -1,21 +0,0 @@
|
|||||||
---
|
|
||||||
|
|
||||||
name: 'Invalid Template'
|
|
||||||
|
|
||||||
on:
|
|
||||||
issues:
|
|
||||||
types: [labeled, unlabeled, reopened]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
support:
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- uses: dessant/support-requests@v2
|
|
||||||
with:
|
|
||||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
support-label: 'kind:invalid-template'
|
|
||||||
issue-comment: >
|
|
||||||
:wave: @{issue-author}, please follow the template provided.
|
|
||||||
close-issue: true
|
|
||||||
lock-issue: true
|
|
||||||
issue-lock-reason: 'resolved'
|
|
118
.github/workflows/meta-label-pr-ci-status.yaml
vendored
Normal file
118
.github/workflows/meta-label-pr-ci-status.yaml
vendored
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
---
|
||||||
|
name: "Metadata: Label pull requests CI status"
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_run:
|
||||||
|
workflows:
|
||||||
|
- "Pull Request: Validate"
|
||||||
|
types:
|
||||||
|
- completed
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
label-ci-status:
|
||||||
|
name: Label CI status
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Generate Token
|
||||||
|
uses: tibdex/github-app-token@v1
|
||||||
|
id: generate-token
|
||||||
|
with:
|
||||||
|
app_id: ${{ secrets.K8S_AT_HOME_APP_ID }}
|
||||||
|
private_key: ${{ secrets.K8S_AT_HOME_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
|
||||||
|
- name: Download workflow artifact
|
||||||
|
uses: dawidd6/action-download-artifact@v2.22.0
|
||||||
|
with:
|
||||||
|
github_token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
workflow: pr-validate.yaml
|
||||||
|
run_id: ${{ github.event.workflow_run.id }}
|
||||||
|
name: pr_metadata
|
||||||
|
path: ./pr_metadata
|
||||||
|
|
||||||
|
- name: Read the pr_number file
|
||||||
|
id: pr_num_reader
|
||||||
|
uses: juliangruber/read-file-action@v1.1.4
|
||||||
|
with:
|
||||||
|
path: ./pr_metadata/pr_number.txt
|
||||||
|
|
||||||
|
- name: "Get workflow job status"
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
id: get-workflow-jobs
|
||||||
|
with:
|
||||||
|
github-token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
# https://mhagemann.medium.com/the-ultimate-way-to-slugify-a-url-string-in-javascript-b8e4a0d849e1
|
||||||
|
script: |
|
||||||
|
function slugify(string) {
|
||||||
|
const a = 'àáâäæãåāăąçćčđďèéêëēėęěğǵḧîïíīįìıİłḿñńǹňôöòóœøōõőṕŕřßśšşșťțûüùúūǘůűųẃẍÿýžźż·/_,:;'
|
||||||
|
const b = 'aaaaaaaaaacccddeeeeeeeegghiiiiiiiilmnnnnoooooooooprrsssssttuuuuuuuuuwxyyzzz------'
|
||||||
|
const p = new RegExp(a.split('').join('|'), 'g')
|
||||||
|
|
||||||
|
return string.toString().toLowerCase()
|
||||||
|
.replace(/\s+/g, '-') // Replace spaces with -
|
||||||
|
.replace(p, c => b.charAt(a.indexOf(c))) // Replace special characters
|
||||||
|
.replace(/&/g, '-and-') // Replace & with 'and'
|
||||||
|
.replace(/[^\w\-]+/g, '') // Remove all non-word characters
|
||||||
|
.replace(/\-\-+/g, '-') // Replace multiple - with single -
|
||||||
|
.replace(/^-+/, '') // Trim - from start of text
|
||||||
|
.replace(/-+$/, '') // Trim - from end of text
|
||||||
|
}
|
||||||
|
|
||||||
|
let result = new Object
|
||||||
|
|
||||||
|
const wfJobs = await github.rest.actions.listJobsForWorkflowRun({
|
||||||
|
owner: context.repo.owner,
|
||||||
|
repo: context.repo.repo,
|
||||||
|
run_id: context.payload.workflow_run.id,
|
||||||
|
})
|
||||||
|
|
||||||
|
for (const job of wfJobs.data.jobs) {
|
||||||
|
result[slugify(job.name)] = job.conclusion
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log(result)
|
||||||
|
return result
|
||||||
|
|
||||||
|
- name: Label pre-commit status
|
||||||
|
uses: ./.github/actions/label-from-status
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
issue-number: ${{ steps.pr_num_reader.outputs.content }}
|
||||||
|
prefix: precommit
|
||||||
|
job-status: |-
|
||||||
|
${{ fromJSON(steps.get-workflow-jobs.outputs.result).pre-commit-check-run-pre-commit-checks || 'skipped' }}
|
||||||
|
remove-on-skipped: true
|
||||||
|
|
||||||
|
- name: Label changelog status
|
||||||
|
uses: ./.github/actions/label-from-status
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
issue-number: ${{ steps.pr_num_reader.outputs.content }}
|
||||||
|
prefix: changelog
|
||||||
|
job-status: |-
|
||||||
|
${{ fromJSON(steps.get-workflow-jobs.outputs.result).charts-changelog-validate-changelog || 'skipped' }}
|
||||||
|
remove-on-skipped: true
|
||||||
|
|
||||||
|
- name: Label chart lint status
|
||||||
|
uses: ./.github/actions/label-from-status
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
issue-number: ${{ steps.pr_num_reader.outputs.content }}
|
||||||
|
prefix: lint
|
||||||
|
job-status: |-
|
||||||
|
${{ fromJSON(steps.get-workflow-jobs.outputs.result).charts-lint-lint-charts || 'skipped' }}
|
||||||
|
remove-on-skipped: true
|
||||||
|
|
||||||
|
- name: Label chart install status
|
||||||
|
uses: ./.github/actions/label-from-status
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
issue-number: ${{ steps.pr_num_reader.outputs.content }}
|
||||||
|
prefix: install
|
||||||
|
job-status: |-
|
||||||
|
${{ fromJSON(steps.get-workflow-jobs.outputs.result).charts-test-install-successful || 'skipped' }}
|
||||||
|
remove-on-skipped: true
|
38
.github/workflows/metadata-label-commenter.yaml
vendored
Normal file
38
.github/workflows/metadata-label-commenter.yaml
vendored
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
---
|
||||||
|
name: "Metadata: Label Commenter"
|
||||||
|
|
||||||
|
on:
|
||||||
|
issues:
|
||||||
|
types:
|
||||||
|
- labeled
|
||||||
|
- unlabeled
|
||||||
|
pull_request_target:
|
||||||
|
types:
|
||||||
|
- labeled
|
||||||
|
- unlabeled
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
issues: write
|
||||||
|
pull-requests: write
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
comment:
|
||||||
|
name: Label commenter
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
steps:
|
||||||
|
- name: Generate Token
|
||||||
|
uses: tibdex/github-app-token@v1
|
||||||
|
id: generate-token
|
||||||
|
with:
|
||||||
|
app_id: ${{ secrets.K8S_AT_HOME_APP_ID }}
|
||||||
|
private_key: ${{ secrets.K8S_AT_HOME_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
ref: master
|
||||||
|
|
||||||
|
- uses: peaceiris/actions-label-commenter@v1
|
||||||
|
with:
|
||||||
|
github_token: ${{ steps.generate-token.outputs.token }}
|
39
.github/workflows/metadata-label-pr.yaml
vendored
Normal file
39
.github/workflows/metadata-label-pr.yaml
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
---
|
||||||
|
name: "Metadata: Label pull requests"
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
types:
|
||||||
|
- opened
|
||||||
|
- edited
|
||||||
|
- closed
|
||||||
|
- reopened
|
||||||
|
- ready_for_review
|
||||||
|
- synchronize
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
label-size:
|
||||||
|
name: Label Size
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Generate Token
|
||||||
|
uses: tibdex/github-app-token@v1
|
||||||
|
id: generate-token
|
||||||
|
with:
|
||||||
|
app_id: ${{ secrets.K8S_AT_HOME_APP_ID }}
|
||||||
|
private_key: ${{ secrets.K8S_AT_HOME_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
- name: Label Size
|
||||||
|
uses: pascalgn/size-label-action@v0.4.3
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: "${{ steps.generate-token.outputs.token }}"
|
||||||
|
with:
|
||||||
|
sizes: >
|
||||||
|
{
|
||||||
|
"0": "XS",
|
||||||
|
"20": "S",
|
||||||
|
"50": "M",
|
||||||
|
"200": "L",
|
||||||
|
"800": "XL",
|
||||||
|
"2000": "XXL"
|
||||||
|
}
|
60
.github/workflows/pr-metadata.yaml
vendored
Normal file
60
.github/workflows/pr-metadata.yaml
vendored
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
name: "Pull Request: Get metadata"
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
outputs:
|
||||||
|
isRenovatePR:
|
||||||
|
description: "Is the PR coming from Renovate?"
|
||||||
|
value: ${{ jobs.pr-metadata.outputs.isRenovatePR }}
|
||||||
|
isFork:
|
||||||
|
description: "Is the PR coming from a forked repo?"
|
||||||
|
value: ${{ jobs.pr-metadata.outputs.isFork }}
|
||||||
|
addedOrModified:
|
||||||
|
description: "Does the PR contain any changes?"
|
||||||
|
value: ${{ jobs.pr-changes.outputs.addedOrModified }}
|
||||||
|
addedOrModifiedFiles:
|
||||||
|
description: "A list of the files changed in this PR"
|
||||||
|
value: ${{ jobs.pr-changes.outputs.addedOrModifiedFiles }}
|
||||||
|
addedOrModifiedCharts:
|
||||||
|
description: "A list of the charts changed in this PR"
|
||||||
|
value: ${{ jobs.pr-changes.outputs.addedOrModifiedCharts }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
pr-metadata:
|
||||||
|
name: Collect PR metadata
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
isRenovatePR: ${{ startsWith(steps.branch-name.outputs.current_branch, 'renovate/') }}
|
||||||
|
isFork: ${{ github.event.pull_request.head.repo.full_name != github.repository }}
|
||||||
|
steps:
|
||||||
|
- name: Get branch name
|
||||||
|
id: branch-name
|
||||||
|
uses: tj-actions/branch-names@v5.4
|
||||||
|
|
||||||
|
- name: Save PR data to file
|
||||||
|
env:
|
||||||
|
PR_NUMBER: ${{ github.event.number }}
|
||||||
|
run: |
|
||||||
|
echo $PR_NUMBER > pr_number.txt
|
||||||
|
|
||||||
|
- name: Store pr data in artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: pr_metadata
|
||||||
|
path: ./pr_number.txt
|
||||||
|
retention-days: 5
|
||||||
|
|
||||||
|
pr-changes:
|
||||||
|
name: Collect PR changes
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
addedOrModified: ${{ steps.collect-changes.outputs.changesDetected }}
|
||||||
|
addedOrModifiedFiles: ${{ steps.collect-changes.outputs.addedOrModifiedFiles }}
|
||||||
|
addedOrModifiedCharts: ${{ steps.collect-changes.outputs.addedOrModifiedCharts }}
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Collect changes
|
||||||
|
id: collect-changes
|
||||||
|
uses: ./.github/actions/collect-changes
|
54
.github/workflows/pr-validate.yaml
vendored
Normal file
54
.github/workflows/pr-validate.yaml
vendored
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
name: "Pull Request: Validate"
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
types:
|
||||||
|
- opened
|
||||||
|
- edited
|
||||||
|
- reopened
|
||||||
|
- ready_for_review
|
||||||
|
- synchronize
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: ${{ github.head_ref }}-pr-validate
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
pr-metadata:
|
||||||
|
uses: k8s-at-home/charts/.github/workflows/pr-metadata.yaml@master
|
||||||
|
|
||||||
|
pre-commit-check:
|
||||||
|
uses: k8s-at-home/charts/.github/workflows/pre-commit-check.yaml@master
|
||||||
|
needs:
|
||||||
|
- pr-metadata
|
||||||
|
with:
|
||||||
|
modifiedFiles: ${{ needs.pr-metadata.outputs.addedOrModifiedFiles }}
|
||||||
|
|
||||||
|
charts-changelog:
|
||||||
|
uses: k8s-at-home/charts/.github/workflows/charts-changelog.yaml@master
|
||||||
|
needs:
|
||||||
|
- pr-metadata
|
||||||
|
- pre-commit-check
|
||||||
|
with:
|
||||||
|
isRenovatePR: ${{ needs.pr-metadata.outputs.isRenovatePR }}
|
||||||
|
modifiedCharts: ${{ needs.pr-metadata.outputs.addedOrModifiedCharts }}
|
||||||
|
|
||||||
|
charts-lint:
|
||||||
|
uses: k8s-at-home/charts/.github/workflows/charts-lint.yaml@master
|
||||||
|
needs:
|
||||||
|
- pr-metadata
|
||||||
|
- charts-changelog
|
||||||
|
with:
|
||||||
|
checkoutCommit: ${{ needs.charts-changelog.outputs.commitHash }}
|
||||||
|
chartChangesDetected: ${{ needs.pr-metadata.outputs.addedOrModified }}
|
||||||
|
|
||||||
|
charts-test:
|
||||||
|
uses: k8s-at-home/charts/.github/workflows/charts-test.yaml@master
|
||||||
|
needs:
|
||||||
|
- pr-metadata
|
||||||
|
- charts-changelog
|
||||||
|
with:
|
||||||
|
checkoutCommit: ${{ needs.charts-changelog.outputs.commitHash }}
|
||||||
|
chartChangesDetected: ${{ needs.pr-metadata.outputs.addedOrModified }}
|
21
.github/workflows/pre-commit-check.yaml
vendored
Normal file
21
.github/workflows/pre-commit-check.yaml
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
name: "Pre-commit consistency check"
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
modifiedFiles:
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
pre-commit-check:
|
||||||
|
name: Run pre-commit checks
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Run against changes
|
||||||
|
uses: pre-commit/action@v3.0.0
|
||||||
|
with:
|
||||||
|
extra_args: --files ${{ inputs.modifiedFiles }}
|
32
.github/workflows/schedule-sync-labels.yaml
vendored
Normal file
32
.github/workflows/schedule-sync-labels.yaml
vendored
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
name: "Schedule: Sync labels"
|
||||||
|
|
||||||
|
on: # yamllint disable-line rule:truthy
|
||||||
|
workflow_dispatch:
|
||||||
|
schedule:
|
||||||
|
- cron: "0 * * * *"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
labels:
|
||||||
|
name: Sync Labels
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: github.repository == 'k8s-at-home/charts'
|
||||||
|
steps:
|
||||||
|
- name: Generate Token
|
||||||
|
uses: tibdex/github-app-token@v1
|
||||||
|
id: generate-token
|
||||||
|
with:
|
||||||
|
app_id: ${{ secrets.K8S_AT_HOME_APP_ID }}
|
||||||
|
private_key: ${{ secrets.K8S_AT_HOME_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
|
||||||
|
- name: Sync Labels
|
||||||
|
uses: EndBug/label-sync@v2
|
||||||
|
with:
|
||||||
|
config-file: .github/labels.yaml
|
||||||
|
token: "${{ steps.generate-token.outputs.token }}"
|
||||||
|
delete-other-labels: true
|
45
.github/workflows/stale.yaml
vendored
Normal file
45
.github/workflows/stale.yaml
vendored
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
---
|
||||||
|
name: "Mark or close stale issues and PRs"
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
schedule:
|
||||||
|
# Run the stalebot every day at 8pm UTC
|
||||||
|
- cron: "00 20 * * *"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
stale:
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
steps:
|
||||||
|
- name: Generate Token
|
||||||
|
uses: tibdex/github-app-token@v1
|
||||||
|
id: generate-token
|
||||||
|
with:
|
||||||
|
app_id: ${{ secrets.K8S_AT_HOME_APP_ID }}
|
||||||
|
private_key: ${{ secrets.K8S_AT_HOME_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
- name: Check for stale issues and PRs
|
||||||
|
uses: actions/stale@v5
|
||||||
|
with:
|
||||||
|
repo-token: ${{ steps.generate-token.outputs.token }}
|
||||||
|
days-before-issue-stale: 60
|
||||||
|
days-before-pr-stale: 60
|
||||||
|
days-before-close: 14
|
||||||
|
days-before-pr-close: 14
|
||||||
|
stale-issue-message: >
|
||||||
|
This issue has been automatically marked as stale because it has not had recent activity.
|
||||||
|
It will be closed in two weeks if no further activity occurs.
|
||||||
|
Thank you for your contributions.
|
||||||
|
stale-pr-message: >
|
||||||
|
This pull request has been automatically marked as stale because it has not had
|
||||||
|
recent activity. It will be closed in two weeks if no further activity occurs.
|
||||||
|
Thank you for your contributions.
|
||||||
|
close-issue-message: >
|
||||||
|
This issue has been automatically closed due to inactivity.
|
||||||
|
Please re-open if this still requires investigation.
|
||||||
|
close-pr-message: >
|
||||||
|
This pull request has been automatically closed due to inactivity.
|
||||||
|
Please re-open if these changes are still required.
|
||||||
|
stale-pr-label: "stale"
|
||||||
|
stale-issue-label: "stale"
|
||||||
|
exempt-issue-labels: "keepalive"
|
||||||
|
exempt-pr-labels: "keepalive"
|
27
.github/workflows/support.yaml
vendored
27
.github/workflows/support.yaml
vendored
@ -1,27 +0,0 @@
|
|||||||
---
|
|
||||||
|
|
||||||
name: 'Support requests'
|
|
||||||
|
|
||||||
on:
|
|
||||||
issues:
|
|
||||||
types: [labeled, unlabeled, reopened]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
support:
|
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
|
||||||
- uses: dessant/support-requests@v2
|
|
||||||
with:
|
|
||||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
support-label: 'kind:support'
|
|
||||||
issue-comment: >
|
|
||||||
:wave: @{issue-author}, we use the issue tracker exclusively
|
|
||||||
for bug reports and feature requests. However, this issue appears
|
|
||||||
to be a support request. Please use our support channels
|
|
||||||
to get help.
|
|
||||||
- [Docs](https://docs.k8s-at-home.com/)
|
|
||||||
- [Discord](https://discord.gg/sTMX7Vh)
|
|
||||||
- [GitHub Discussions](https://github.com/k8s-at-home/organization/discussions)
|
|
||||||
close-issue: true
|
|
||||||
lock-issue: false
|
|
||||||
issue-lock-reason: 'off-topic'
|
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -14,3 +14,4 @@ charts/**/charts
|
|||||||
.env
|
.env
|
||||||
.envrc
|
.envrc
|
||||||
Gemfile.lock
|
Gemfile.lock
|
||||||
|
angel.yaml
|
||||||
|
@ -1,21 +1,17 @@
|
|||||||
# See https://pre-commit.com for more information
|
# See https://pre-commit.com for more information
|
||||||
repos:
|
repos:
|
||||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||||
rev: v3.4.0
|
rev: v4.0.1
|
||||||
hooks:
|
hooks:
|
||||||
- id: trailing-whitespace
|
- id: trailing-whitespace
|
||||||
- id: end-of-file-fixer
|
- id: end-of-file-fixer
|
||||||
- id: fix-byte-order-marker
|
- id: fix-byte-order-marker
|
||||||
- id: mixed-line-ending
|
- id: mixed-line-ending
|
||||||
|
- id: check-merge-conflict
|
||||||
|
- id: check-case-conflict
|
||||||
|
|
||||||
- repo: local
|
- repo: https://github.com/Lucas-C/pre-commit-hooks
|
||||||
|
rev: v1.1.10
|
||||||
hooks:
|
hooks:
|
||||||
- id: ct-lint
|
- id: remove-crlf
|
||||||
name: "Chart Test: Lint"
|
- id: remove-tabs
|
||||||
language: docker_image
|
|
||||||
pass_filenames: false
|
|
||||||
types: ['file']
|
|
||||||
files: '^charts/.*(\.ya?ml|\.tpl|\.helmignore|NOTES.txt)'
|
|
||||||
entry: -u 0 quay.io/helmpack/chart-testing:v3.0.0 ct
|
|
||||||
args:
|
|
||||||
- lint
|
|
||||||
|
@ -25,6 +25,14 @@ tasks:
|
|||||||
- helm dependency update
|
- helm dependency update
|
||||||
silent: true
|
silent: true
|
||||||
|
|
||||||
|
dependency-cleanup:
|
||||||
|
desc: clean up chart dependencies
|
||||||
|
dir: "{{.GIT_ROOT}}/charts"
|
||||||
|
cmds:
|
||||||
|
- find {{.GIT_ROOT}}/charts/ -type f -name 'Chart.lock' -mindepth 1 -print0 | xargs -r -0 rm
|
||||||
|
- find {{.GIT_ROOT}}/charts/ -type d -name 'charts' -mindepth 1 -print0 | xargs -r -0 rm -rf
|
||||||
|
silent: true
|
||||||
|
|
||||||
lint:
|
lint:
|
||||||
desc: lint your chart code
|
desc: lint your chart code
|
||||||
dir: "{{.GIT_ROOT}}/charts/{{.CHART_TYPE}}/{{.CHART}}"
|
dir: "{{.GIT_ROOT}}/charts/{{.CHART_TYPE}}/{{.CHART}}"
|
||||||
@ -44,7 +52,7 @@ tasks:
|
|||||||
|
|
||||||
helm-docs:
|
helm-docs:
|
||||||
desc: generate helm-docs
|
desc: generate helm-docs
|
||||||
dir: "{{.GIT_ROOT}}/hack"
|
dir: "{{.GIT_ROOT}}/.github/scripts"
|
||||||
cmds:
|
cmds:
|
||||||
- ./gen-helm-docs.sh "{{.CHART_TYPE}}" "{{.CHART}}"
|
- ./gen-helm-docs.sh "{{.CHART_TYPE}}" "{{.CHART}}"
|
||||||
deps:
|
deps:
|
||||||
|
4
.vscode/extensions.json
vendored
4
.vscode/extensions.json
vendored
@ -1,5 +1,7 @@
|
|||||||
{
|
{
|
||||||
"recommendations": [
|
"recommendations": [
|
||||||
"ms-vscode-remote.remote-containers"
|
"ms-kubernetes-tools.vscode-kubernetes-tools",
|
||||||
|
"ms-vscode-remote.remote-containers",
|
||||||
|
"mrmlnc.vscode-json5"
|
||||||
]
|
]
|
||||||
}
|
}
|
34
.vscode/launch.json
vendored
34
.vscode/launch.json
vendored
@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
// Use IntelliSense to learn about possible attributes.
|
|
||||||
// Hover to view descriptions of existing attributes.
|
|
||||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
|
||||||
"version": "0.2.0",
|
|
||||||
"configurations": [
|
|
||||||
{
|
|
||||||
"name": "UnitTest - active spec file only",
|
|
||||||
"type": "Ruby",
|
|
||||||
"request": "launch",
|
|
||||||
"cwd": "${workspaceRoot}",
|
|
||||||
"program": "/usr/local/bin/bundle",
|
|
||||||
"args": [
|
|
||||||
"exec",
|
|
||||||
"m",
|
|
||||||
"-r",
|
|
||||||
"${relativeFile}"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "UnitTest - all spec files",
|
|
||||||
"type": "Ruby",
|
|
||||||
"request": "launch",
|
|
||||||
"cwd": "${workspaceRoot}",
|
|
||||||
"program": "/usr/local/bin/bundle",
|
|
||||||
"args": [
|
|
||||||
"exec",
|
|
||||||
"m",
|
|
||||||
"-r",
|
|
||||||
"${workspaceFolder}/test/charts"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -47,10 +47,8 @@ Chart releases must be immutable. Any change to a chart warrants a chart version
|
|||||||
|
|
||||||
The chart `version` should follow [semver](https://semver.org/).
|
The chart `version` should follow [semver](https://semver.org/).
|
||||||
|
|
||||||
Charts should start at `1.0.0`. Any breaking (backwards incompatible) changes to a chart should:
|
Charts should start at `1.0.0`. Any any breaking (backwards incompatible) changes should Bump the MAJOR version, and should describe the manual steps necessary to upgrade. All changes should be described in in the [Chart metadata](https://docs.k8s-at-home.com/our-helm-charts/development/creating-a-new-chart/#chart-metadata).
|
||||||
|
|
||||||
1. Bump the MAJOR version
|
|
||||||
2. In the README, under a section called "Upgrading", describe the manual steps necessary to upgrade to the new (specified) MAJOR version
|
|
||||||
|
|
||||||
### Pre-commit
|
### Pre-commit
|
||||||
|
|
||||||
|
6
Gemfile
6
Gemfile
@ -4,9 +4,9 @@ source 'https://rubygems.org'
|
|||||||
|
|
||||||
group :test do
|
group :test do
|
||||||
gem 'm'
|
gem 'm'
|
||||||
gem 'minitest', "5.14.4"
|
gem 'minitest', "5.16.2"
|
||||||
gem 'minitest-implicit-subject'
|
gem 'minitest-implicit-subject'
|
||||||
gem 'minitest-reporters', "1.4.3"
|
gem 'minitest-reporters', "1.5.0"
|
||||||
gem 'pry', "0.14.0"
|
gem 'pry', "0.14.1"
|
||||||
gem 'ruby-jq'
|
gem 'ruby-jq'
|
||||||
end
|
end
|
||||||
|
63
README.md
63
README.md
@ -1,12 +1,17 @@
|
|||||||
|
# ⚠️ Deprecation and Archive Notice
|
||||||
|
|
||||||
|
**This repo is being deprecated, please read [this issue](https://github.com/k8s-at-home/charts/issues/1761)**
|
||||||
|
|
||||||
# Helm charts
|
# Helm charts
|
||||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||||
[](#contributors-)
|
[](#contributors-)
|
||||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||||
|
|
||||||
[](https://docs.k8s-at-home.com/)
|
[](https://docs.k8s-at-home.com/)
|
||||||
[](https://discord.gg/sTMX7Vh)
|
[](https://discord.gg/sTMX7Vh)
|
||||||
[](https://github.com/pre-commit/pre-commit)
|
[](https://github.com/pre-commit/pre-commit)
|
||||||
[](https://github.com/renovatebot/renovate)
|
[](https://github.com/renovatebot/renovate)
|
||||||
|
[](https://taskfile.dev/#/)
|
||||||
[](https://artifacthub.io/packages/search?repo=k8s-at-home)
|
[](https://artifacthub.io/packages/search?repo=k8s-at-home)
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
@ -76,6 +81,62 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
|||||||
<tr>
|
<tr>
|
||||||
<td align="center"><a href="https://blog.waltr.tech"><img src="https://avatars.githubusercontent.com/u/11428125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ryan Walter</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=rwaltr" title="Code">💻</a></td>
|
<td align="center"><a href="https://blog.waltr.tech"><img src="https://avatars.githubusercontent.com/u/11428125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ryan Walter</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=rwaltr" title="Code">💻</a></td>
|
||||||
<td align="center"><a href="https://chipwolf.uk"><img src="https://avatars.githubusercontent.com/u/3164166?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chip Wolf </b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=ChipWolf" title="Code">💻</a></td>
|
<td align="center"><a href="https://chipwolf.uk"><img src="https://avatars.githubusercontent.com/u/3164166?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chip Wolf </b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=ChipWolf" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/jr0dd"><img src="https://avatars.githubusercontent.com/u/285797?v=4?s=100" width="100px;" alt=""/><br /><sub><b>jr0dd</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=jr0dd" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://4xxi.com"><img src="https://avatars.githubusercontent.com/u/167288?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Aleksandr Beshkenadze</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=beshkenadze" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://unasuke.com"><img src="https://avatars.githubusercontent.com/u/4487291?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Yusuke Nakamura</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=unasuke" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/brandon099"><img src="https://avatars.githubusercontent.com/u/1628223?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brandon Clifford</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=brandon099" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="http://www.voltaicforge.com"><img src="https://avatars.githubusercontent.com/u/19149206?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Nat Allan</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=Truxnell" title="Code">💻</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="https://github.com/jmmaloney4"><img src="https://avatars.githubusercontent.com/u/5781547?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jack Maloney</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=jmmaloney4" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/zamnuts"><img src="https://avatars.githubusercontent.com/u/4969305?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Andrew Zammit</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=zamnuts" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://boxingoctop.us"><img src="https://avatars.githubusercontent.com/u/3494484?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ryan Draga</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=TuxOtaku" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/jkroepke"><img src="https://avatars.githubusercontent.com/u/1560587?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jan-Otto Kröpke</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=jkroepke" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/chris-sanders"><img src="https://avatars.githubusercontent.com/u/813115?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chris Sanders</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=chris-sanders" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://waibel.us"><img src="https://avatars.githubusercontent.com/u/7026879?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alex Waibel</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=alexwaibel" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/simoncaron"><img src="https://avatars.githubusercontent.com/u/8635747?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Simon Caron</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=simoncaron" title="Code">💻</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="https://github.com/Kimi450"><img src="https://avatars.githubusercontent.com/u/24758074?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Karan Samani</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=Kimi450" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="http://reitermark.us"><img src="https://avatars.githubusercontent.com/u/1309829?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Markus Reiter</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=reitermarkus" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/brenix"><img src="https://avatars.githubusercontent.com/u/1131159?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Paul N</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=brenix" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://www.varac.net"><img src="https://avatars.githubusercontent.com/u/488213?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Varac</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=varac" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/CoolMintChocolate"><img src="https://avatars.githubusercontent.com/u/70276626?v=4?s=100" width="100px;" alt=""/><br /><sub><b>CoolMintChocolate</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=CoolMintChocolate" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/PixelJonas"><img src="https://avatars.githubusercontent.com/u/5434875?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonas Janz</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=PixelJonas" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://twitter.com/ttb_lt"><img src="https://avatars.githubusercontent.com/u/47721?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Thibault Cohen</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=titilambert" title="Code">💻</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="http://dangmai.net"><img src="https://avatars.githubusercontent.com/u/1305527?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dang Mai</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=dangmai" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/larivierec"><img src="https://avatars.githubusercontent.com/u/3633214?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Christopher Larivière</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=larivierec" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://Winston.Milli.ng"><img src="https://avatars.githubusercontent.com/u/6162814?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Winston R. Milling</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=wrmilling" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/pysen"><img src="https://avatars.githubusercontent.com/u/3030145?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Arthur</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=pysen" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://samip.dev"><img src="https://avatars.githubusercontent.com/u/1703002?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Skyler Mäntysaari</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=samip5" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/disconn3ct"><img src="https://avatars.githubusercontent.com/u/397465?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dis</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=disconn3ct" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/rogerrum"><img src="https://avatars.githubusercontent.com/u/10350796?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Roger Rumao</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=rogerrum" title="Code">💻</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="https://github.com/marcelloceschia"><img src="https://avatars.githubusercontent.com/u/203448?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Marcello Ceschia</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=marcelloceschia" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://www.carrierlost.net"><img src="https://avatars.githubusercontent.com/u/969721?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Roberto Santalla</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=roobre" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="http://www.greghaskins.com"><img src="https://avatars.githubusercontent.com/u/285310?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Greg Haskins</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=greghaskins" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/jlrgraham"><img src="https://avatars.githubusercontent.com/u/2184689?v=4?s=100" width="100px;" alt=""/><br /><sub><b>jlrgraham</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=jlrgraham" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://cronix.cc"><img src="https://avatars.githubusercontent.com/u/181302?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lukas Wingerberg</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=psych0d0g" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="http://www.djvg.net"><img src="https://avatars.githubusercontent.com/u/17107225?v=4?s=100" width="100px;" alt=""/><br /><sub><b>TheDJVG</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=TheDJVG" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/rschoultz"><img src="https://avatars.githubusercontent.com/u/727834?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Rickard Schoultz</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=rschoultz" title="Code">💻</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="http://taylorvories.com"><img src="https://avatars.githubusercontent.com/u/13934524?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Taylor Vories</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=tvories" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="http://www.jonathangazeley.com"><img src="https://avatars.githubusercontent.com/u/604595?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=djjudas21" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://www.b1-systems.de"><img src="https://avatars.githubusercontent.com/u/26167225?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Johannes Kastl</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=johanneskastl" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://www.funkypenguin.co.nz"><img src="https://avatars.githubusercontent.com/u/1524686?v=4?s=100" width="100px;" alt=""/><br /><sub><b>David Young</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=funkypenguin" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/bikram990"><img src="https://avatars.githubusercontent.com/u/6782131?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Bikramjeet Singh</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=bikram990" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="http://geraldwu.com"><img src="https://avatars.githubusercontent.com/u/22160945?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gerald Wu</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=geraldwuhoo" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="http://ntrpigo.blogspot.com"><img src="https://avatars.githubusercontent.com/u/720492?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ivan Gregurić Ortolan</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=ntrp" title="Code">💻</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="https://github.com/lucacalcaterra"><img src="https://avatars.githubusercontent.com/u/879825?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Luca Calcaterra</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=lucacalcaterra" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/Omar007"><img src="https://avatars.githubusercontent.com/u/5380079?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Omar Pakker</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=Omar007" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://resume.frezbo.dev"><img src="https://avatars.githubusercontent.com/u/18496730?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Noel Georgi</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=frezbo" title="Code">💻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/lanquarden"><img src="https://avatars.githubusercontent.com/u/446743?v=4?s=100" width="100px;" alt=""/><br /><sub><b>lanquarden</b></sub></a><br /><a href="https://github.com/k8s-at-home/charts/commits?author=lanquarden" title="Code">💻</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
207
charts/README.md
Normal file
207
charts/README.md
Normal file
@ -0,0 +1,207 @@
|
|||||||
|
# Helm charts overview
|
||||||
|
### Stable charts:
|
||||||
|
| Chart | Description |
|
||||||
|
| ----- | ----------- |
|
||||||
|
| [adguard-home](stable/adguard-home) | DNS proxy as ad-blocker for local network |
|
||||||
|
| [airsonic](stable/airsonic) | Airsonic is a Free and Open Source community driven media server |
|
||||||
|
| [alertmanager-bot](stable/alertmanager-bot) | Bot for Prometheus Alertmanager |
|
||||||
|
| [alertmanager-discord](stable/alertmanager-discord) | Webhook for Prometheus Alertmanager to listen for notifications and pushes them to Discord channel |
|
||||||
|
| [amcrest2mqtt](stable/amcrest2mqtt) | Expose all events from an Amcrest device to an MQTT broker |
|
||||||
|
| [anonaddy](stable/anonaddy) | Anonaddy: Anonymous email forwarding |
|
||||||
|
| [apache-musicindex](stable/apache-musicindex) | Index and stream music using apache-musicindex and m3u playlists |
|
||||||
|
| [appdaemon](stable/appdaemon) | AppDaemon is a loosely coupled, multi-threaded, sandboxed python execution environment for writing automation apps for various types of Home Automation Software including Home Assistant and MQTT. |
|
||||||
|
| [aria2](stable/aria2) | aria server for downloading web content |
|
||||||
|
| [audiobookshelf](stable/audiobookshelf) | Self-hosted audiobook server for managing and playing your audiobooks |
|
||||||
|
| [autobrr](stable/autobrr) | Autobrr monitors IRC announce channels to get releases as soon as they are available with good filtering |
|
||||||
|
| [baikal](stable/baikal) | Baïkal is a lightweight CalDAV+CardDAV server. It offers a web interface with management of users, address books and calendars. |
|
||||||
|
| [bazarr](stable/bazarr) | Bazarr is a companion application to Sonarr and Radarr. It manages and downloads subtitles based on your requirements |
|
||||||
|
| [beets](stable/beets) | beets helm package |
|
||||||
|
| [blocky](stable/blocky) | DNS proxy as ad-blocker for local network |
|
||||||
|
| [booksonic-air](stable/booksonic-air) | Booksonic is a platform for accessing the audibooks you own wherever you are |
|
||||||
|
| [bookstack](stable/bookstack) | A simple, self-hosted, easy-to-use platform for organising and storing information. |
|
||||||
|
| [calibre-web](stable/calibre-web) | Calibre-Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database. |
|
||||||
|
| [calibre](stable/calibre) | Calibre is a powerful and easy to use e-book manager. |
|
||||||
|
| [comcast](stable/comcast) | periodic comcast data usage checks and save the results to InfluxDB |
|
||||||
|
| [cryptofolio](stable/cryptofolio) | Track your cryptocurrency holdings/portfolio |
|
||||||
|
| [deconz](stable/deconz) | deCONZ is an easy to use control software, with which you can set up and control Zigbee networks of any size without further programming effort. |
|
||||||
|
| [deemix](stable/deemix) | Deemix is a Deezer Download Manager |
|
||||||
|
| [deepstack](stable/deepstack) | An AI API engine that serves pre-built models and custom models on multiple edge devices locally or on your private cloud |
|
||||||
|
| [deluge](stable/deluge) | Deluge is a torrent download client |
|
||||||
|
| [dizquetv](stable/dizquetv) | Create live TV channel streams from media on your Plex servers. |
|
||||||
|
| [dnsmadeeasy-webhook](stable/dnsmadeeasy-webhook) | Cert-Manager Webhook for DNSMadeEasy |
|
||||||
|
| [dokuwiki](stable/dokuwiki) | DokuWiki is a simple to use and highly versatile Open Source wiki software that doesn't require a database. |
|
||||||
|
| [double-take](stable/double-take) | Unified UI and API for processing and training images for facial recognition. |
|
||||||
|
| [dsmr-reader](stable/dsmr-reader) | DSMR-protocol reader, telegram data storage and energy consumption visualizer. |
|
||||||
|
| [duplicati](stable/duplicati) | Store securely encrypted backups on cloud storage services! |
|
||||||
|
| [emby](stable/emby) | Emby Server is a home media server |
|
||||||
|
| [error-pages](stable/error-pages) | Server error pages in the docker image |
|
||||||
|
| [esphome](stable/esphome) | ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems. |
|
||||||
|
| [facebox](stable/facebox) | Facebox detects and identifies faces in photos. You can teach facebox with as little as one sample image. |
|
||||||
|
| [factorio](stable/factorio) | Factorio dedicated steam game server |
|
||||||
|
| [filebrowser](stable/filebrowser) | filebrowser provides a file managing interface within a specified directory |
|
||||||
|
| [firefly-iii](stable/firefly-iii) | Firefly III: a personal finances manager |
|
||||||
|
| [flaresolverr](stable/flaresolverr) | FlareSolverr is a proxy server to bypass Cloudflare protection |
|
||||||
|
| [flood](stable/flood) | Flood is a monitoring service for various torrent clients |
|
||||||
|
| [focalboard](stable/focalboard) | Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana. |
|
||||||
|
| [foundryvtt](stable/foundryvtt) | An easy-to-deploy Dockerized Foundry Virtual Tabletop server |
|
||||||
|
| [freshrss](stable/freshrss) | FreshRSS is a self-hosted RSS feed aggregator |
|
||||||
|
| [frigate](stable/frigate) | NVR With Realtime Object Detection for IP Cameras |
|
||||||
|
| [games-on-whales](stable/games-on-whales) | Streams graphic applications/games (retroarch, firefox, steam) runing on Kubernetes |
|
||||||
|
| [gaps](stable/gaps) | Gaps searches through your Plex Server or local folders for all movies, then queries for known movies in the same collection. |
|
||||||
|
| [gatus](stable/gatus) | A developer-oriented health dashboard that gives you the ability to monitor your services using HTTP, ICMP, TCP, and even DNS queries. |
|
||||||
|
| [ghost](stable/ghost) | Ghost is a blogging and publishing software |
|
||||||
|
| [gollum](stable/gollum) | Gollum is a simple wiki system built on top of Git |
|
||||||
|
| [gonic](stable/gonic) | Music streaming server / subsonic server API implementation |
|
||||||
|
| [gotify](stable/gotify) | A simple server for sending and receiving messages |
|
||||||
|
| [grocy](stable/grocy) | ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home |
|
||||||
|
| [haste-server](stable/haste-server) | Simple text sharing |
|
||||||
|
| [healthchecks](stable/healthchecks) | Healthchecks is a cron job monitoring service. It listens for HTTP requests and email messages ("pings") from your cron jobs and scheduled tasks ("checks"). When a ping does not arrive on time, Healthchecks sends out alerts. |
|
||||||
|
| [heimdall](stable/heimdall) | An Application dashboard and launcher |
|
||||||
|
| [home-assistant](stable/home-assistant) | Home Assistant |
|
||||||
|
| [homebridge](stable/homebridge) | A lightweight NodeJS server that emulates the iOS HomeKit API |
|
||||||
|
| [homer](stable/homer) | A dead simple static HOMepage for your servER to keep your services on hand, from a simple yaml configuration file. |
|
||||||
|
| [hyperion-ng](stable/hyperion-ng) | Hyperion is an opensource Bias or Ambient Lighting implementation |
|
||||||
|
| [icantbelieveitsnotvaletudo](stable/icantbelieveitsnotvaletudo) | Create live map data from Valetudo powered robots |
|
||||||
|
| [icinga2](stable/icinga2) | A monitoring system which checks the availability of your network resources, notifies users of outages, and generates performance data for reporting. |
|
||||||
|
| [ihatemoney](stable/ihatemoney) | A web application made to ease shared budget management |
|
||||||
|
| [influxdb-exporter](stable/influxdb-exporter) | An exporter for metrics in the InfluxDB format, transforms them and exposes them for consumption by Prometheus. |
|
||||||
|
| [intel-gpu-plugin](stable/intel-gpu-plugin) | The Intel GPU plugin facilitates offloading the processing of computation intensive workloads to GPU hardware |
|
||||||
|
| [jackett](stable/jackett) | API Support for your favorite torrent trackers |
|
||||||
|
| [jellyfin](stable/jellyfin) | Jellyfin is a Free Software Media System |
|
||||||
|
| [joplin-server](stable/joplin-server) | This server allows you to sync any Joplin client |
|
||||||
|
| [kanboard](stable/kanboard) | Kanboard is a free and open source Kanban project management software. |
|
||||||
|
| [komga](stable/komga) | A comics/mangas server to serve/stream pages via API |
|
||||||
|
| [kube-ops-view](stable/kube-ops-view) | A read-only system dashboard for multiple K8s clusters |
|
||||||
|
| [lazylibrarian](stable/lazylibrarian) | A Helm chart for deploying LazyLibrarian |
|
||||||
|
| [leaf2mqtt](stable/leaf2mqtt) | Nissan Leaf connected services to MQTT adapter |
|
||||||
|
| [librespeed](stable/librespeed) | Librespeed is a HTML5 webpage to test upload and download speeds |
|
||||||
|
| [lidarr](stable/lidarr) | Looks and smells like Sonarr but made for music |
|
||||||
|
| [littlelink-server](stable/littlelink-server) | A lightweight open source alternative to linktree |
|
||||||
|
| [lychee](stable/lychee) | Lychee is a free photo-management tool, which runs on your server or web-space |
|
||||||
|
| [maddy](stable/maddy) | Maddy Mail Server |
|
||||||
|
| [magic-mirror](stable/magic-mirror) | magic-mirror helm package |
|
||||||
|
| [mealie](stable/mealie) | Mealie is a self hosted recipe manager and meal planner with a RestAPI backend and a reactive frontend application built in Vue for a pleasant user experience for the whole family. |
|
||||||
|
| [miniflux](stable/miniflux) | Miniflux is a minimalist and opinionated feed reader. |
|
||||||
|
| [minio-console](stable/minio-console) | A management console for minio server and operator |
|
||||||
|
| [modem-stats](stable/modem-stats) | periodic cable modem data collection and save the results to InfluxDB |
|
||||||
|
| [monica](stable/monica) | A Personal Relationship Management tool to help you organize your social life |
|
||||||
|
| [mosquitto](stable/mosquitto) | Eclipse Mosquitto - An open source MQTT broker |
|
||||||
|
| [mqtt-exporter](stable/mqtt-exporter) | Simple and generic Prometheus exporter for MQTT. Tested with Mosquitto MQTT and Xiaomi sensors. |
|
||||||
|
| [multus](stable/multus) | multus CNI allows multiple NICs per pod |
|
||||||
|
| [mylar](stable/mylar) | Mylar is the automated Comic Book downloader (cbr/cbz) for use with various download clients. |
|
||||||
|
| [navidrome](stable/navidrome) | Navidrome is an open source web-based music collection server and streamer |
|
||||||
|
| [neolink](stable/neolink) | Neolink - RTSP bridge to Reolink IP cameras |
|
||||||
|
| [network-ups-tools](stable/network-ups-tools) | Network UPS Tools is a collection of programs which provide a common interface for monitoring and administering UPS, PDU and SCD hardware. |
|
||||||
|
| [nginx-php](stable/nginx-php) | Nginx and PHP FPM for running PHP applications |
|
||||||
|
| [nightscout](stable/nightscout) | nightscout helm package |
|
||||||
|
| [node-red](stable/node-red) | Node-RED is low-code programming for event-driven applications |
|
||||||
|
| [ntfy](stable/ntfy) | Send push notifications to your phone or desktop using PUT/POST |
|
||||||
|
| [nullserv](stable/nullserv) | A simple null file http and https server |
|
||||||
|
| [nzbget](stable/nzbget) | NZBGet is a Usenet downloader client |
|
||||||
|
| [nzbhydra2](stable/nzbhydra2) | Usenet meta search |
|
||||||
|
| [octoprint](stable/octoprint) | OctoPrint is the snappy web interface for your 3D printer |
|
||||||
|
| [omada-controller](stable/omada-controller) | Omada enables the network administrators to monitor and manage all the Omada products in the network with a centralized management platform. |
|
||||||
|
| [ombi](stable/ombi) | Want a Movie or TV Show on Plex or Emby? Use Ombi! |
|
||||||
|
| [onedrive](stable/onedrive) | A free Microsoft OneDrive Client which supports OneDrive Personal, OneDrive for Business, OneDrive for Office365, and SharePoint |
|
||||||
|
| [openemr](stable/openemr) | OpenEMR is the most popular open source electronic health records and medical practice management solution. |
|
||||||
|
| [openkm](stable/openkm) | OpenKM integrates all essential documents management, collaboration and an advanced search functionality into one easy to use solution. |
|
||||||
|
| [organizr](stable/organizr) | HTPC/Homelab Services Organizer |
|
||||||
|
| [otel-collector](stable/otel-collector) | OpenTelemetry collector helm package |
|
||||||
|
| [overleaf](stable/overleaf) | A web-based collaborative LaTeX editor |
|
||||||
|
| [overseerr](stable/overseerr) | Overseerr is a free and open source software application for managing requests for your media library. It integrates with your existing services such as Sonarr, Radarr and Plex! |
|
||||||
|
| [owncast](stable/owncast) | Take control over your live stream video by running it yourself. Streaming + chat out of the box. |
|
||||||
|
| [owncloud-ocis](stable/owncloud-ocis) | ownCloud Infinite Scale is a self-hosted file sync and share server. |
|
||||||
|
| [paperless](stable/paperless) | Paperless - Index and archive all of your scanned paper documents |
|
||||||
|
| [photoprism](stable/photoprism) | PhotoPrism® is a server-based application for browsing, organizing and sharing your personal photo collection |
|
||||||
|
| [plex](stable/plex) | Plex Media Server |
|
||||||
|
| [pod-gateway](stable/pod-gateway) | Admision controller to change the default gateway and DNS server of PODs |
|
||||||
|
| [powerdns-admin](stable/powerdns-admin) | A PowerDNS web interface with advanced features |
|
||||||
|
| [pretend-youre-xyzzy](stable/pretend-youre-xyzzy) | pretend-youre-xyzzy, a cards against humanity clone |
|
||||||
|
| [privatebin](stable/privatebin) | A minimalist, open source online pastebin running on an Nginx, php-fpm & Alpine Linux stack |
|
||||||
|
| [promcord](stable/promcord) | Discord bot that provides metrics from a Discord server |
|
||||||
|
| [prometheus-nut-exporter](stable/prometheus-nut-exporter) | Prometheus NUT Exporter a service monitor to send NUT server metrics to a Prometheus instance. |
|
||||||
|
| [protonmail-bridge](stable/protonmail-bridge) | Container for protonmail bridge to work on the network. |
|
||||||
|
| [prowlarr](stable/prowlarr) | Indexer manager/proxy built on the popular arr net base stack to integrate with your various PVR apps. |
|
||||||
|
| [puppeteer](stable/puppeteer) | Headless Chrome Node.js API |
|
||||||
|
| [pyload](stable/pyload) | pyLoad is a Free and Open Source download manager written in Python and designed to be extremely lightweight, easily extensible and fully manageable via web. |
|
||||||
|
| [qbittorrent](stable/qbittorrent) | qBittorrent is a cross-platform free and open-source BitTorrent client |
|
||||||
|
| [radarr](stable/radarr) | A fork of Sonarr to work with movies à la Couchpotato |
|
||||||
|
| [radicale](stable/radicale) | A simple CalDAV (calendar) and CardDAV (contact) server. |
|
||||||
|
| [readarr](stable/readarr) | A fork of Radarr to work with Books & AudioBooks |
|
||||||
|
| [recipes](stable/recipes) | Recipes is a Django application to manage, tag and search recipes using either built in models or external storage providers hosting PDF's, Images or other files. |
|
||||||
|
| [resilio-sync](stable/resilio-sync) | Resilio Sync is a fast, reliable, and simple file sync and share solution, powered by P2P technology |
|
||||||
|
| [reverse-proxy](stable/reverse-proxy) | Creates ingress reverse-proxies for external hosts with minimum boilerplate |
|
||||||
|
| [rhasspy](stable/rhasspy) | rhasspy helm package |
|
||||||
|
| [rtorrent-flood](stable/rtorrent-flood) | rTorrent is a stable, high-performance and low resource consumption BitTorrent client. |
|
||||||
|
| [rtorrent-rutorrent](stable/rtorrent-rutorrent) | ruTorrent is a popular rtorrent client with a webui for ease of use. |
|
||||||
|
| [rtsp-to-web](stable/rtsp-to-web) | RTSPtoWeb converts RTSP streams to WebRTC, LL-HLS, HLS, MSE |
|
||||||
|
| [sabnzbd](stable/sabnzbd) | Free and easy binary newsreader |
|
||||||
|
| [samba](stable/samba) | A simple in-cluster Samba server |
|
||||||
|
| [satisfactory](stable/satisfactory) | Satisfactory dedicated server |
|
||||||
|
| [seafile](stable/seafile) | seafile helm package |
|
||||||
|
| [searx](stable/searx) | Searx is a privacy-respecting, hackable metasearch engine |
|
||||||
|
| [send](stable/send) | Simple, private file sharing. |
|
||||||
|
| [ser2sock](stable/ser2sock) | Serial to Socket Redirector |
|
||||||
|
| [sharry](stable/sharry) | Sharry allows to share files with others in a simple way. It is a self-hosted web application. The basic concept is to upload files and get a url back that can then be shared. |
|
||||||
|
| [shinobi](stable/shinobi) | shinobi helm package |
|
||||||
|
| [shlink](stable/shlink) | A self-hosted and PHP-based URL shortener application with CLI and REST interfaces |
|
||||||
|
| [smarter-device-manager](stable/smarter-device-manager) | Manage hardware resource allocation without a need for privileged containers |
|
||||||
|
| [sonarr](stable/sonarr) | Smart PVR for newsgroup and bittorrent users |
|
||||||
|
| [speedtest-exporter](stable/speedtest-exporter) | Speedtest Exporter made in python using the official speedtest bin |
|
||||||
|
| [stash](stable/stash) | An organizer for your porn, written in Go |
|
||||||
|
| [statping](stable/statping) | Status page for monitoring your websites and applications |
|
||||||
|
| [syncthing](stable/syncthing) | Open Source Continuous File Synchronization |
|
||||||
|
| [syslog-ng](stable/syslog-ng) | syslog-ng allows you to flexibly collect, parse, classify, rewrite and correlate logs. |
|
||||||
|
| [tautulli](stable/tautulli) | A Python based monitoring and tracking tool for Plex Media Server |
|
||||||
|
| [tdarr](stable/tdarr) | Tdarr is a self hosted web-app for automating media library transcode/remux management and making sure your files are exactly how you need them to be in terms of codecs/streams/containers etc. |
|
||||||
|
| [teedy](stable/teedy) | Teedy is an open source, lightweight document management system for individuals and businesses. |
|
||||||
|
| [teslamate](stable/teslamate) | A self-hosted data logger for your Tesla 🚘 |
|
||||||
|
| [thelounge](stable/thelounge) | The Lounge, modern web IRC client designed for self-hosting |
|
||||||
|
| [theme-park](stable/theme-park) | theme-park helm package |
|
||||||
|
| [traefik-forward-auth](stable/traefik-forward-auth) | A minimal forward authentication service that provides OAuth/SSO login and authentication for the traefik reverse proxy/load balancer |
|
||||||
|
| [transmission](stable/transmission) | Transmission is a cross-platform BitTorrent client |
|
||||||
|
| [tt-rss](stable/tt-rss) | Tiny Tiny RSS is a free and open source web-based news feed (RSS/Atom) reader and aggregator |
|
||||||
|
| [tvheadend](stable/tvheadend) | TVheadend - a TV streaming server and digital video recorder |
|
||||||
|
| [unifi-poller](stable/unifi-poller) | Collect ALL UniFi Controller, Site, Device & Client Data - Export to InfluxDB or Prometheus |
|
||||||
|
| [unifi](stable/unifi) | Ubiquiti Network's Unifi Controller |
|
||||||
|
| [unpackerr](stable/unpackerr) | This application runs as a daemon on your download host. It checks for completed downloads and extracts them so Radarr, Lidarr, Sonarr, and Readarr may import them. |
|
||||||
|
| [uptime-kuma](stable/uptime-kuma) | A fancy self-hosted monitoring tool for your websites and applications |
|
||||||
|
| [uptimerobot-prometheus](stable/uptimerobot-prometheus) | Prometheus Exporter for the official uptimerobot CLI |
|
||||||
|
| [uptimerobot](stable/uptimerobot) | A tool to get statistics from Uptime Robot and log it into InfluxDB |
|
||||||
|
| [valheim](stable/valheim) | Valheim dedicated gameserver with automatic update and world backup support |
|
||||||
|
| [vaultwarden](stable/vaultwarden) | Vaultwarden is a Bitwarden compatable server in Rust |
|
||||||
|
| [vikunja](stable/vikunja) | The to-do app to organize your life |
|
||||||
|
| [wallabag](stable/wallabag) | A self hostable application for saving web pages, freely. |
|
||||||
|
| [webtrees](stable/webtrees) | Open-source online collaborative genealogy application |
|
||||||
|
| [whoogle](stable/whoogle) | A self-hosted, ad-free, privacy-respecting metasearch engine |
|
||||||
|
| [wikijs](stable/wikijs) | Make documentation a joy to write using Wiki.js's beautiful and intuitive interface! |
|
||||||
|
| [wireguard](stable/wireguard) | Fast, modern, secure VPN tunnel |
|
||||||
|
| [wmbusmeters](stable/wmbusmeters) | Wmbusmeters receives and decodes C1,T1 or S1 telegrams (using the wireless mbus protocol) to acquire utility meter readings. |
|
||||||
|
| [xbackbone](stable/xbackbone) | XBackBone is a simple, self-hosted, lightweight PHP file manager that support the instant sharing tool ShareX and *NIX systems. It supports uploading and displaying images, GIF, video, code, formatted text, and file downloading and uploading. Also have a web UI with multi user management, past uploads history and search support. |
|
||||||
|
| [xbvr](stable/xbvr) | xbvr helm package |
|
||||||
|
| [xteve](stable/xteve) | M3U Proxy for Plex DVR and Emby Live TV. |
|
||||||
|
| [youtubedl-material](stable/youtubedl-material) | Self-hosted YouTube downloader built on Material Design |
|
||||||
|
| [zalando-postgres-cluster](stable/zalando-postgres-cluster) | Creates a postgres cluster using the Zalando Postgres operator and local storage |
|
||||||
|
| [zigbee2mqtt](stable/zigbee2mqtt) | Bridges events and allows you to control your Zigbee devices via MQTT |
|
||||||
|
| [zwavejs2mqtt](stable/zwavejs2mqtt) | Fully configurable Zwave to MQTT Gateway and Control Panel |
|
||||||
|
### Incubator charts:
|
||||||
|
| Chart | Description |
|
||||||
|
| ----- | ----------- |
|
||||||
|
| [babybuddy](incubator/babybuddy) | A buddy for babies! Helps caregivers track sleep, feedings, diaper changes, tummy time and more to learn about and predict baby's needs without (as much) guess work. |
|
||||||
|
| [changedetection-io](incubator/changedetection-io) | changedetection-io helm package |
|
||||||
|
| [cryptpad](incubator/cryptpad) | cryptpad helm package |
|
||||||
|
| [dendrite](incubator/dendrite) | Dendrite Matrix Homeserver |
|
||||||
|
| [handbrake](incubator/handbrake) | handbrake helm package |
|
||||||
|
| [kah-common-chart](incubator/kah-common-chart) | A KaH-common powered chart template. This can be useful for small projects that don't have their own chart. |
|
||||||
|
| [lancache](incubator/lancache) | LanCache Monolithic - a caching proxy server for game download content |
|
||||||
|
| [mopidy](incubator/mopidy) | mopidy helm package |
|
||||||
|
| [openhab](incubator/openhab) | openhab helm package |
|
||||||
|
| [scrypted](incubator/scrypted) | scrypted helm package |
|
||||||
|
| [sdtd](incubator/sdtd) | Dedicated server for 7 Days to Die |
|
||||||
|
| [signal-cli-rest-api](incubator/signal-cli-rest-api) | Dockerized Signal Messenger REST API |
|
||||||
|
| [sinusbot](incubator/sinusbot) | TeamSpeak & Discord Bot |
|
||||||
|
| [snapcast](incubator/snapcast) | snapcast helm package |
|
||||||
|
| [strongswan](incubator/strongswan) | strongSwan – the OpenSource IPsec-based VPN Solution |
|
||||||
|
| [teamspeak](incubator/teamspeak) | TeamSpeak Server |
|
||||||
|
| [torrserver](incubator/torrserver) | TorrServer streams torrent to http |
|
||||||
|
| [warrior](incubator/warrior) | The Archive Team Warrior is a virtual archiving appliance. You can run it to help with the Archive Team archiving efforts. It will download sites and upload them to our archive—and it’s really easy to do! |
|
26
charts/incubator/babybuddy/Chart.yaml
Normal file
26
charts/incubator/babybuddy/Chart.yaml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.10.2
|
||||||
|
description: A buddy for babies! Helps caregivers track sleep, feedings, diaper changes, tummy time and more to learn about and predict baby's needs without (as much) guess work.
|
||||||
|
name: babybuddy
|
||||||
|
version: 1.2.2
|
||||||
|
kubeVersion: ">=1.16.0-0"
|
||||||
|
keywords:
|
||||||
|
- babybuddy
|
||||||
|
- baby
|
||||||
|
home: https://github.com/k8s-at-home/charts/tree/master/charts/incubator/babybuddy
|
||||||
|
icon: https://github.com/babybuddy/babybyddy/blob/master/babybuddy/static_src/logo/icon.png?raw=true
|
||||||
|
sources:
|
||||||
|
- https://github.com/babybuddy/babybuddy
|
||||||
|
- https://hub.docker.com/r/linuxserver/babybuddy
|
||||||
|
maintainers:
|
||||||
|
- name: brianporeilly
|
||||||
|
email: brianporeilly@gmail.com
|
||||||
|
dependencies:
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
annotations:
|
||||||
|
artifacthub.io/changes: |-
|
||||||
|
- kind: changed
|
||||||
|
description: Upgraded `common` chart dependency to version 4.5.2
|
116
charts/incubator/babybuddy/README.md
Normal file
116
charts/incubator/babybuddy/README.md
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
# babybuddy
|
||||||
|
|
||||||
|
 
|
||||||
|
|
||||||
|
A buddy for babies! Helps caregivers track sleep, feedings, diaper changes, tummy time and more to learn about and predict baby's needs without (as much) guess work.
|
||||||
|
|
||||||
|
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/k8s-at-home/charts/issues/new/choose)**
|
||||||
|
|
||||||
|
## Source Code
|
||||||
|
|
||||||
|
* <https://github.com/babybuddy/babybuddy>
|
||||||
|
* <https://hub.docker.com/r/linuxserver/babybuddy>
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
Kubernetes: `>=1.16.0-0`
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
| Repository | Name | Version |
|
||||||
|
|------------|------|---------|
|
||||||
|
| https://library-charts.k8s-at-home.com | common | 4.5.2 |
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm repo add k8s-at-home https://k8s-at-home.com/charts/
|
||||||
|
helm repo update
|
||||||
|
helm install babybuddy k8s-at-home/babybuddy
|
||||||
|
```
|
||||||
|
|
||||||
|
## Installing the Chart
|
||||||
|
|
||||||
|
To install the chart with the release name `babybuddy`
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install babybuddy k8s-at-home/babybuddy
|
||||||
|
```
|
||||||
|
|
||||||
|
## Uninstalling the Chart
|
||||||
|
|
||||||
|
To uninstall the `babybuddy` deployment
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm uninstall babybuddy
|
||||||
|
```
|
||||||
|
|
||||||
|
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
|
||||||
|
Other values may be used from the [values.yaml](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).
|
||||||
|
|
||||||
|
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install babybuddy \
|
||||||
|
--set env.TZ="America/New York" \
|
||||||
|
k8s-at-home/babybuddy
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install babybuddy k8s-at-home/babybuddy -f values.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Custom configuration
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| env | object | See below | environment variables. See [babybuddy docs](https://docs.baby-buddy.net/setup/configuration/) for more details. |
|
||||||
|
| env.TZ | string | `"UTC"` | Set the container timezone |
|
||||||
|
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| image.repository | string | `"linuxserver/babybuddy"` | image repository |
|
||||||
|
| image.tag | string | `nil` | |
|
||||||
|
| ingress.main | object | See values.yaml | Enable and configure ingress settings for the chart under this key. |
|
||||||
|
| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. |
|
||||||
|
| service | object | See values.yaml | Configures service settings for the chart. |
|
||||||
|
|
||||||
|
## Changelog
|
||||||
|
|
||||||
|
### Version 1.2.2
|
||||||
|
|
||||||
|
#### Added
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
#### Changed
|
||||||
|
|
||||||
|
* Upgraded `common` chart dependency to version 4.5.2
|
||||||
|
|
||||||
|
#### Fixed
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
### Older versions
|
||||||
|
|
||||||
|
A historical overview of changes can be found on [ArtifactHUB](https://artifacthub.io/packages/helm/k8s-at-home/babybuddy?modal=changelog)
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
|
||||||
|
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
|
||||||
|
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
|
||||||
|
- Join our [Discord](https://discord.gg/sTMX7Vh) community
|
||||||
|
|
||||||
|
----------------------------------------------
|
||||||
|
Autogenerated from chart metadata using [helm-docs v0.1.1](https://github.com/k8s-at-home/helm-docs/releases/v0.1.1)
|
41
charts/incubator/babybuddy/values.yaml
Normal file
41
charts/incubator/babybuddy/values.yaml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
#
|
||||||
|
# IMPORTANT NOTE
|
||||||
|
#
|
||||||
|
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||||
|
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||||
|
#
|
||||||
|
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: linuxserver/babybuddy
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
# -- environment variables. See [babybuddy docs](https://docs.baby-buddy.net/setup/configuration/) for more details.
|
||||||
|
# @default -- See below
|
||||||
|
env:
|
||||||
|
# -- Set the container timezone
|
||||||
|
TZ: UTC
|
||||||
|
|
||||||
|
# -- Configures service settings for the chart.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
port: 8000
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
# -- Enable and configure ingress settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
main:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# -- Configure persistence settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
persistence:
|
||||||
|
config:
|
||||||
|
enabled: false
|
||||||
|
mountPath: /config
|
27
charts/incubator/changedetection-io/Chart.yaml
Normal file
27
charts/incubator/changedetection-io/Chart.yaml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: "0.39.4"
|
||||||
|
description: changedetection-io helm package
|
||||||
|
name: changedetection-io
|
||||||
|
version: 1.5.2
|
||||||
|
kubeVersion: ">=1.16.0-0"
|
||||||
|
keywords:
|
||||||
|
- changedetection.io
|
||||||
|
- urlmonitor
|
||||||
|
- website-monitoring
|
||||||
|
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/changedetection-io
|
||||||
|
icon:
|
||||||
|
sources:
|
||||||
|
- https://github.com/dgtlmoon/changedetection.io
|
||||||
|
- https://github.com/k8s-at-home/charts/tree/master/charts/changedetection-io
|
||||||
|
maintainers:
|
||||||
|
- name: tuxpeople
|
||||||
|
url: https://github.com/tuxpeople
|
||||||
|
dependencies:
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
annotations:
|
||||||
|
artifacthub.io/changes: |-
|
||||||
|
- kind: changed
|
||||||
|
description: Upgraded `common` chart dependency to version 4.5.2
|
116
charts/incubator/changedetection-io/README.md
Normal file
116
charts/incubator/changedetection-io/README.md
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
# changedetection-io
|
||||||
|
|
||||||
|
 
|
||||||
|
|
||||||
|
changedetection-io helm package
|
||||||
|
|
||||||
|
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/k8s-at-home/charts/issues/new/choose)**
|
||||||
|
|
||||||
|
## Source Code
|
||||||
|
|
||||||
|
* <https://github.com/dgtlmoon/changedetection.io>
|
||||||
|
* <https://github.com/k8s-at-home/charts/tree/master/charts/changedetection-io>
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
Kubernetes: `>=1.16.0-0`
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
| Repository | Name | Version |
|
||||||
|
|------------|------|---------|
|
||||||
|
| https://library-charts.k8s-at-home.com | common | 4.5.2 |
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm repo add k8s-at-home https://k8s-at-home.com/charts/
|
||||||
|
helm repo update
|
||||||
|
helm install changedetection-io k8s-at-home/changedetection-io
|
||||||
|
```
|
||||||
|
|
||||||
|
## Installing the Chart
|
||||||
|
|
||||||
|
To install the chart with the release name `changedetection-io`
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install changedetection-io k8s-at-home/changedetection-io
|
||||||
|
```
|
||||||
|
|
||||||
|
## Uninstalling the Chart
|
||||||
|
|
||||||
|
To uninstall the `changedetection-io` deployment
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm uninstall changedetection-io
|
||||||
|
```
|
||||||
|
|
||||||
|
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
|
||||||
|
Other values may be used from the [values.yaml](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).
|
||||||
|
|
||||||
|
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install changedetection-io \
|
||||||
|
--set env.TZ="America/New York" \
|
||||||
|
k8s-at-home/changedetection-io
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install changedetection-io k8s-at-home/changedetection-io -f values.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Custom configuration
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| env | object | See below | environment variables. See more environment variables in the [changedetection-io documentation](https://changedetection-io.org/docs). |
|
||||||
|
| env.TZ | string | `"UTC"` | Set the container timezone |
|
||||||
|
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| image.repository | string | `"ghcr.io/dgtlmoon/changedetection.io"` | image repository |
|
||||||
|
| image.tag | string | `"0.39.4"` | image tag |
|
||||||
|
| ingress.main | object | See values.yaml | Enable and configure ingress settings for the chart under this key. |
|
||||||
|
| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. |
|
||||||
|
| service | object | See values.yaml | Configures service settings for the chart. |
|
||||||
|
|
||||||
|
## Changelog
|
||||||
|
|
||||||
|
### Version 1.5.2
|
||||||
|
|
||||||
|
#### Added
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
#### Changed
|
||||||
|
|
||||||
|
* Upgraded `common` chart dependency to version 4.5.2
|
||||||
|
|
||||||
|
#### Fixed
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
### Older versions
|
||||||
|
|
||||||
|
A historical overview of changes can be found on [ArtifactHUB](https://artifacthub.io/packages/helm/k8s-at-home/changedetection-io?modal=changelog)
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
|
||||||
|
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
|
||||||
|
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
|
||||||
|
- Join our [Discord](https://discord.gg/sTMX7Vh) community
|
||||||
|
|
||||||
|
----------------------------------------------
|
||||||
|
Autogenerated from chart metadata using [helm-docs v0.1.1](https://github.com/k8s-at-home/helm-docs/releases/v0.1.1)
|
41
charts/incubator/changedetection-io/values.yaml
Normal file
41
charts/incubator/changedetection-io/values.yaml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
#
|
||||||
|
# IMPORTANT NOTE
|
||||||
|
#
|
||||||
|
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||||
|
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||||
|
#
|
||||||
|
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: ghcr.io/dgtlmoon/changedetection.io
|
||||||
|
# -- image tag
|
||||||
|
tag: "0.39.4"
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
# -- environment variables. See more environment variables in the [changedetection-io documentation](https://changedetection-io.org/docs).
|
||||||
|
# @default -- See below
|
||||||
|
env:
|
||||||
|
# -- Set the container timezone
|
||||||
|
TZ: UTC
|
||||||
|
|
||||||
|
# -- Configures service settings for the chart.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
port: 5000
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
# -- Enable and configure ingress settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
main:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# -- Configure persistence settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
persistence:
|
||||||
|
data:
|
||||||
|
enabled: false
|
||||||
|
mountPath: /datastore
|
24
charts/incubator/cryptpad/Chart.yaml
Normal file
24
charts/incubator/cryptpad/Chart.yaml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: v4.14.1-nginx
|
||||||
|
description: cryptpad helm package
|
||||||
|
name: cryptpad
|
||||||
|
version: 0.4.2
|
||||||
|
kubeVersion: ">=1.16.0-0"
|
||||||
|
keywords:
|
||||||
|
- cryptpad
|
||||||
|
home: https://github.com/k8s-at-home/charts/tree/master/charts/incubator/cryptpad
|
||||||
|
icon: https://cryptpad.fr/customize/CryptPad_logo.svg
|
||||||
|
sources:
|
||||||
|
- https://github.com/xwiki-labs/cryptpad-docker
|
||||||
|
maintainers:
|
||||||
|
- name: roobre
|
||||||
|
email: roobre@roobre.es
|
||||||
|
dependencies:
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
annotations:
|
||||||
|
artifacthub.io/changes: |-
|
||||||
|
- kind: changed
|
||||||
|
description: Upgraded `common` chart dependency to version 4.5.2
|
124
charts/incubator/cryptpad/README.md
Normal file
124
charts/incubator/cryptpad/README.md
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
# cryptpad
|
||||||
|
|
||||||
|
 
|
||||||
|
|
||||||
|
cryptpad helm package
|
||||||
|
|
||||||
|
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/k8s-at-home/charts/issues/new/choose)**
|
||||||
|
|
||||||
|
## Source Code
|
||||||
|
|
||||||
|
* <https://github.com/xwiki-labs/cryptpad-docker>
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
Kubernetes: `>=1.16.0-0`
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
| Repository | Name | Version |
|
||||||
|
|------------|------|---------|
|
||||||
|
| https://library-charts.k8s-at-home.com | common | 4.5.2 |
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm repo add k8s-at-home https://k8s-at-home.com/charts/
|
||||||
|
helm repo update
|
||||||
|
helm install cryptpad k8s-at-home/cryptpad
|
||||||
|
```
|
||||||
|
|
||||||
|
## Installing the Chart
|
||||||
|
|
||||||
|
To install the chart with the release name `cryptpad`
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install cryptpad k8s-at-home/cryptpad
|
||||||
|
```
|
||||||
|
|
||||||
|
## Uninstalling the Chart
|
||||||
|
|
||||||
|
To uninstall the `cryptpad` deployment
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm uninstall cryptpad
|
||||||
|
```
|
||||||
|
|
||||||
|
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
|
||||||
|
Other values may be used from the [values.yaml](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).
|
||||||
|
|
||||||
|
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install cryptpad \
|
||||||
|
--set env.TZ="America/New York" \
|
||||||
|
k8s-at-home/cryptpad
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install cryptpad k8s-at-home/cryptpad -f values.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Custom configuration
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| config | object | `{"installMethod":"helm","logFeedback":false,"logLevel":"info","logToStdout":true,"verbose":false}` | See: https://github.com/xwiki-labs/cryptpad/blob/main/config/config.example.js httpUnsafeOrigin and httpSafeOrigin are automatically derived from the first and second host defined in the main ingress, respectively. |
|
||||||
|
| config.logLevel | string | `"info"` | - "[cryptpad-user1@my.awesome.website/YZgXQxKR0Rcb6r6CmxHPdAGLVludrAF2lEnkbx1vVOo=]" |
|
||||||
|
| env | object | See below | environment variables. See more environment variables in the [cryptpad documentation](https://cryptpad.org/docs). |
|
||||||
|
| env.CPAD_MAIN_DOMAIN | string | `"{{ (index .Values.ingress.main.hosts 0).host }}"` | respectively. These env vars are used in the internal nginx. |
|
||||||
|
| env.TZ | string | `"UTC"` | Set the container timezone |
|
||||||
|
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| image.repository | string | `"promasu/cryptpad"` | image repository |
|
||||||
|
| image.tag | string | `""` | image tag (overrides appVersion) |
|
||||||
|
| ingress.main.enabled | bool | `false` | |
|
||||||
|
| ingress.main.hosts[0].host | string | `"cryptpad.local"` | |
|
||||||
|
| ingress.main.hosts[0].paths[0].path | string | `"/"` | |
|
||||||
|
| ingress.main.hosts[1].host | string | `"sec.cryptpad.local"` | |
|
||||||
|
| ingress.main.hosts[1].paths[0].path | string | `"/"` | |
|
||||||
|
| ingress.main.ingressClassName | string | `""` | |
|
||||||
|
| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. |
|
||||||
|
| podSecurityContext.fsGroup | int | `4001` | |
|
||||||
|
| service | object | See values.yaml | Configures service settings for the chart. |
|
||||||
|
|
||||||
|
## Changelog
|
||||||
|
|
||||||
|
### Version 0.4.2
|
||||||
|
|
||||||
|
#### Added
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
#### Changed
|
||||||
|
|
||||||
|
* Upgraded `common` chart dependency to version 4.5.2
|
||||||
|
|
||||||
|
#### Fixed
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
### Older versions
|
||||||
|
|
||||||
|
A historical overview of changes can be found on [ArtifactHUB](https://artifacthub.io/packages/helm/k8s-at-home/cryptpad?modal=changelog)
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
|
||||||
|
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
|
||||||
|
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
|
||||||
|
- Join our [Discord](https://discord.gg/sTMX7Vh) community
|
||||||
|
|
||||||
|
----------------------------------------------
|
||||||
|
Autogenerated from chart metadata using [helm-docs v0.1.1](https://github.com/k8s-at-home/helm-docs/releases/v0.1.1)
|
16
charts/incubator/cryptpad/templates/common.yaml
Normal file
16
charts/incubator/cryptpad/templates/common.yaml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
{{/* Make sure all variables are set properly */}}
|
||||||
|
{{- include "common.values.setup" . }}
|
||||||
|
|
||||||
|
{{/* Append the configMap volume to the volumes */}}
|
||||||
|
{{- define "cryptpad.configVolume" -}}
|
||||||
|
enabled: "true"
|
||||||
|
mountPath: "/cryptpad/config/config.js"
|
||||||
|
subPath: "config.js"
|
||||||
|
type: "custom"
|
||||||
|
volumeSpec:
|
||||||
|
configMap:
|
||||||
|
name: {{ template "common.names.fullname" . }}-config
|
||||||
|
{{- end -}}
|
||||||
|
{{- $_ := set .Values.persistence "cryptpad-config" (include "cryptpad.configVolume" . | fromYaml) -}}
|
||||||
|
|
||||||
|
{{ include "common.all" . }}
|
25
charts/incubator/cryptpad/templates/configmap.yaml
Normal file
25
charts/incubator/cryptpad/templates/configmap.yaml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{{- include "common.values.setup" . -}}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: {{ include "common.names.fullname" . }}-config
|
||||||
|
labels:
|
||||||
|
{{- include "common.labels" . | nindent 4 }}
|
||||||
|
data:
|
||||||
|
config.js: |
|
||||||
|
module.exports = {
|
||||||
|
{{- if and .Values.ingress.main.enabled .Values.ingress.main.tls }}
|
||||||
|
httpUnsafeOrigin: 'https://{{ (index (.Values.ingress.main.tls | first).hosts 0) }}',
|
||||||
|
httpSafeOrigin: 'https://{{ (index (.Values.ingress.main.tls | first).hosts 1) }}',
|
||||||
|
{{- else if .Values.ingress.main.enabled }}
|
||||||
|
httpUnsafeOrigin: '{{ (index .Values.ingress.main.hosts 0).host }}',
|
||||||
|
httpSafeOrigin: '{{ (index .Values.ingress.main.hosts 1).host }}',
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
httpAddress: '::',
|
||||||
|
|
||||||
|
{{- range $key, $val := .Values.config }}
|
||||||
|
{{ $key }}: {{ $val | toJson }},
|
||||||
|
{{- end }}
|
||||||
|
};
|
81
charts/incubator/cryptpad/values.yaml
Normal file
81
charts/incubator/cryptpad/values.yaml
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
#
|
||||||
|
# IMPORTANT NOTE
|
||||||
|
#
|
||||||
|
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||||
|
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||||
|
#
|
||||||
|
|
||||||
|
# config.js is derived from this map.
|
||||||
|
# See: https://github.com/xwiki-labs/cryptpad/blob/main/config/config.example.js
|
||||||
|
# httpUnsafeOrigin and httpSafeOrigin are automatically derived from the first and second host defined in the main
|
||||||
|
# ingress, respectively.
|
||||||
|
config:
|
||||||
|
# adminKeys:
|
||||||
|
# - "[cryptpad-user1@my.awesome.website/YZgXQxKR0Rcb6r6CmxHPdAGLVludrAF2lEnkbx1vVOo=]"
|
||||||
|
logLevel: info
|
||||||
|
verbose: false
|
||||||
|
logFeedback: false
|
||||||
|
logToStdout: true
|
||||||
|
installMethod: helm
|
||||||
|
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: promasu/cryptpad
|
||||||
|
# -- image tag (overrides appVersion)
|
||||||
|
tag: ""
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
# -- environment variables. See more environment variables in the [cryptpad documentation](https://cryptpad.org/docs).
|
||||||
|
# @default -- See below
|
||||||
|
env:
|
||||||
|
# -- Set the container timezone
|
||||||
|
TZ: UTC
|
||||||
|
# Main and sandbox domains are automatically fetched from the first and second host defined in the ingress,
|
||||||
|
# respectively.
|
||||||
|
# These env vars are used in the internal nginx.
|
||||||
|
CPAD_MAIN_DOMAIN: "{{ (index .Values.ingress.main.hosts 0).host }}"
|
||||||
|
CPAD_SANDBOX_DOMAIN: "{{ (index .Values.ingress.main.hosts 1).host }}"
|
||||||
|
# Internal nginx _forces_ http2 rather than offering it, which breaks many ingress controllers.
|
||||||
|
CPAD_HTTP2_DISABLE: "true"
|
||||||
|
|
||||||
|
# -- Configures service settings for the chart.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
port: 80
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
main:
|
||||||
|
enabled: false
|
||||||
|
ingressClassName: ""
|
||||||
|
hosts:
|
||||||
|
# You must define two hosts here
|
||||||
|
- host: cryptpad.local
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
- host: sec.cryptpad.local
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
|
||||||
|
# -- Configure persistence settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
persistence:
|
||||||
|
# Cryptpad will persist everything here.
|
||||||
|
data:
|
||||||
|
enabled: false
|
||||||
|
type: emptyDir
|
||||||
|
subPath:
|
||||||
|
- path: blob
|
||||||
|
mountPath: /cryptpad/blob
|
||||||
|
- path: block
|
||||||
|
mountPath: /cryptpad/block
|
||||||
|
- path: data
|
||||||
|
mountPath: /cryptpad/data
|
||||||
|
- path: datastore
|
||||||
|
mountPath: /cryptpad/datastore
|
||||||
|
|
||||||
|
podSecurityContext:
|
||||||
|
fsGroup: 4001 # https://github.com/xwiki-labs/cryptpad-docker/blob/72dd7030c1dc1c70b5ff3f53b8451f5af19a2927/Dockerfile-nginx#L25
|
85
charts/incubator/dendrite/Chart.yaml
Normal file
85
charts/incubator/dendrite/Chart.yaml
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: v0.9.4
|
||||||
|
description: Dendrite Matrix Homeserver
|
||||||
|
name: dendrite
|
||||||
|
version: 6.3.1
|
||||||
|
kubeVersion: ">=1.16.0-0"
|
||||||
|
keywords:
|
||||||
|
- dendrite
|
||||||
|
- matrix
|
||||||
|
- homeserver
|
||||||
|
- monolith
|
||||||
|
- federation
|
||||||
|
- polylith
|
||||||
|
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/dendrite
|
||||||
|
sources:
|
||||||
|
- https://github.com/matrix-org/dendrite
|
||||||
|
- https://github.com/matrix-org/dendrite/tree/master/build/docker
|
||||||
|
maintainers:
|
||||||
|
- name: jonnobrow
|
||||||
|
email: jonathan@jonnobrow.co.uk
|
||||||
|
dependencies:
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
- name: postgresql
|
||||||
|
version: 11.6.21
|
||||||
|
repository: https://charts.bitnami.com/bitnami
|
||||||
|
condition: postgresql.enabled
|
||||||
|
- name: nats
|
||||||
|
version: 0.17.1
|
||||||
|
repository: https://nats-io.github.io/k8s/helm/charts/
|
||||||
|
condition: nats.enabled
|
||||||
|
# Client API
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: clientapi
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
# Media API
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: mediaapi
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
# Sync API
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: syncapi
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
# Room Server
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: roomserver
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
# Federation API
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: federationapi
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
# Key Server
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: keyserver
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
# User API
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: userapi
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
# App Service API
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
alias: appserviceapi
|
||||||
|
condition: dendrite.polylithEnabled
|
||||||
|
annotations:
|
||||||
|
artifacthub.io/changes: |-
|
||||||
|
- kind: changed
|
||||||
|
description: Upgraded dendrite to 0.9.4
|
268
charts/incubator/dendrite/README.md
Normal file
268
charts/incubator/dendrite/README.md
Normal file
@ -0,0 +1,268 @@
|
|||||||
|
# dendrite
|
||||||
|
|
||||||
|
 
|
||||||
|
|
||||||
|
Dendrite Matrix Homeserver
|
||||||
|
|
||||||
|
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/k8s-at-home/charts/issues/new/choose)**
|
||||||
|
|
||||||
|
## Source Code
|
||||||
|
|
||||||
|
* <https://github.com/matrix-org/dendrite>
|
||||||
|
* <https://github.com/matrix-org/dendrite/tree/master/build/docker>
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
Kubernetes: `>=1.16.0-0`
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
| Repository | Name | Version |
|
||||||
|
|------------|------|---------|
|
||||||
|
| https://charts.bitnami.com/bitnami | postgresql | 11.6.21 |
|
||||||
|
| https://library-charts.k8s-at-home.com | common | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | keyserver(common) | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | clientapi(common) | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | mediaapi(common) | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | syncapi(common) | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | roomserver(common) | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | federationapi(common) | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | userapi(common) | 4.5.2 |
|
||||||
|
| https://library-charts.k8s-at-home.com | appserviceapi(common) | 4.5.2 |
|
||||||
|
| https://nats-io.github.io/k8s/helm/charts/ | nats | 0.17.1 |
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm repo add k8s-at-home https://k8s-at-home.com/charts/
|
||||||
|
helm repo update
|
||||||
|
helm install dendrite k8s-at-home/dendrite
|
||||||
|
```
|
||||||
|
|
||||||
|
## Installing the Chart
|
||||||
|
|
||||||
|
To install the chart with the release name `dendrite`
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install dendrite k8s-at-home/dendrite
|
||||||
|
```
|
||||||
|
|
||||||
|
## Uninstalling the Chart
|
||||||
|
|
||||||
|
To uninstall the `dendrite` deployment
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm uninstall dendrite
|
||||||
|
```
|
||||||
|
|
||||||
|
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
|
||||||
|
Other values may be used from the [values.yaml](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).
|
||||||
|
|
||||||
|
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install dendrite \
|
||||||
|
--set env.TZ="America/New York" \
|
||||||
|
k8s-at-home/dendrite
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install dendrite k8s-at-home/dendrite -f values.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Custom configuration
|
||||||
|
|
||||||
|
### Polylith Ingress
|
||||||
|
|
||||||
|
Due to the complexity of setting up ingress for each individual component it
|
||||||
|
is left up to the individual to add the necessary ingress fields to polylith deployments.
|
||||||
|
|
||||||
|
For more information see:
|
||||||
|
- https://github.com/matrix-org/dendrite/blob/master/docs/INSTALL.md#nginx-or-other-reverse-proxy
|
||||||
|
- and https://github.com/matrix-org/dendrite/blob/master/docs/nginx/polylith-sample.conf
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| appserviceapi | object | See values.yaml | Configure the app service api. For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| appserviceapi.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| appserviceapi.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| appserviceapi.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| appserviceapi.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| appserviceapi.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| appserviceapi.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| appserviceapi.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| appserviceapi.image.tag | string | chart.appVersion | image tag |
|
||||||
|
| clientapi | object | See values.yaml | Configuration for the client api component. For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| clientapi.config.captcha | object | See values.yaml | Configure captcha for registration |
|
||||||
|
| clientapi.config.rate_limiting | object | values.yaml | Configure rate limiting. |
|
||||||
|
| clientapi.config.registration_disabled | bool | `false` | Enable or disable registration for this homeserver. |
|
||||||
|
| clientapi.config.registration_shared_secret | string | `""` | Shared secret that allows registration, despite registration_disabled. |
|
||||||
|
| clientapi.config.turn | object | See values.yaml | Configure TURN |
|
||||||
|
| clientapi.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| clientapi.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| clientapi.image.tag | string | chart.appVersion | image tag |
|
||||||
|
| database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| dendrite | object | See values.yaml | Configuration for Dendrite. For more information see [the sample denrite-config.yaml](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| dendrite.database | object | See values.yaml | Configure database connection parameters. |
|
||||||
|
| dendrite.global | object | See values.yaml | Configure the global settings for dendrite. |
|
||||||
|
| dendrite.global.cache | object | `{"max_age":"1h","max_size_estimated":"1gb"}` | Congigure the in-memory caches |
|
||||||
|
| dendrite.global.cache.max_age | string | `"1h"` | The maximum amount of time that a cache entry can live for in memory |
|
||||||
|
| dendrite.global.cache.max_size_estimated | string | `"1gb"` | Configure the maximum estimated cache size (not a hard limit) |
|
||||||
|
| dendrite.global.disable_federation | bool | `false` | Disables federation |
|
||||||
|
| dendrite.global.dns_cache | object | See values.yaml | Configure DNS cache. |
|
||||||
|
| dendrite.global.dns_cache.enabled | bool | See values.yaml | If enabled, dns cache will be enabled. |
|
||||||
|
| dendrite.global.key_validity_period | string | `"168h0m0s"` | Configure the key_validity period |
|
||||||
|
| dendrite.global.metrics | object | See values.yaml | Configure prometheus metrics collection for dendrite. |
|
||||||
|
| dendrite.global.metrics.enabled | bool | See values.yaml | If enabled, metrics collection will be enabled |
|
||||||
|
| dendrite.global.mscs | list | `[]` | Configure experimental MSC's |
|
||||||
|
| dendrite.global.presence | object | `{"enable_inbound":false,"enable_outbound":false}` | Configure handling of presence events |
|
||||||
|
| dendrite.global.presence.enable_inbound | bool | `false` | Whether inbound presence events are allowed, e.g. receiving presence events from other servers |
|
||||||
|
| dendrite.global.presence.enable_outbound | bool | `false` | Whether outbound presence events are allowed, e.g. sending presence events to other servers |
|
||||||
|
| dendrite.global.server_name | string | `"localhost"` | (required) Configure the server name for the dendrite instance. |
|
||||||
|
| dendrite.global.server_notices | object | `{"avatar_url":"","display_name":"Server alerts","enabled":false,"local_part":"_server","room_name":"Server Alerts"}` | Server notices allows server admins to send messages to all users. |
|
||||||
|
| dendrite.global.server_notices.avatar_url | string | `""` | The mxid of the avatar to use |
|
||||||
|
| dendrite.global.server_notices.display_name | string | `"Server alerts"` | The displayname to be used when sending notices |
|
||||||
|
| dendrite.global.server_notices.local_part | string | `"_server"` | The server localpart to be used when sending notices, ensure this is not yet taken |
|
||||||
|
| dendrite.global.server_notices.room_name | string | `"Server Alerts"` | The roomname to be used when creating messages |
|
||||||
|
| dendrite.global.trusted_third_party_id_servers | list | `["matrix.org","vector.im"]` | Configure the list of domains the server will trust as identity servers |
|
||||||
|
| dendrite.global.well_known_client_name | string | `""` | Configure the well-known client name and optional port |
|
||||||
|
| dendrite.global.well_known_server_name | string | `""` | Configure the well-known server name and optional port |
|
||||||
|
| dendrite.logging | list | See values.yaml | Configure logging. |
|
||||||
|
| dendrite.matrix_key_secret.create | bool | `false` | Create matrix_key secret using the keyBody below. |
|
||||||
|
| dendrite.matrix_key_secret.existingSecret | string | `""` | Use an existing secret |
|
||||||
|
| dendrite.matrix_key_secret.keyBody | string | `""` | New Key Body |
|
||||||
|
| dendrite.matrix_key_secret.secretPath | string | `"matrix_key.pem"` | Field in the secret to get the key from |
|
||||||
|
| dendrite.polylithEnabled | bool | `false` | Enable polylith deployment |
|
||||||
|
| dendrite.polylith_ingress | object | See values.yaml | Enable and configure polylith ingress as per https://github.com/matrix-org/dendrite/blob/main/docs/nginx/polylith-sample.conf |
|
||||||
|
| dendrite.polylith_ingress.syncapi_paths | list | See values.yaml | Sync API Paths are a little tricky since they require regular expressions. Therefore the paths will depend on the ingress controller used. See values.yaml for nginx and traefik. |
|
||||||
|
| dendrite.report_stats | object | `{"enabled":false,"endpoint":""}` | Usage statistics reporting configuration |
|
||||||
|
| dendrite.report_stats.enabled | bool | false | Enable or disable usage reporting |
|
||||||
|
| dendrite.report_stats.endpoint | string | `""` | Push endpoint for usage statistics |
|
||||||
|
| dendrite.tls_secret | object | See values.yaml | If enabled, use an existing secrets for the TLS certificate and key. Otherwise, to enable TLS a `server.crt` and `server.key` must be mounted at `/etc/dendrite`. |
|
||||||
|
| dendrite.tracing | object | See values.yaml | Configure opentracing. |
|
||||||
|
| federationapi | object | values.yaml | Configure the Federation API For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| federationapi.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| federationapi.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| federationapi.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| federationapi.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| federationapi.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| federationapi.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| federationapi.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| federationapi.image.tag | string | chart.appVersion | image tag |
|
||||||
|
| image | object | `{"pullPolicy":"IfNotPresent","repository":"ghcr.io/matrix-org/dendrite-monolith","tag":null}` | IMPORTANT NOTE This chart inherits from our common library chart. You can check the default values/options here: https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml |
|
||||||
|
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| image.repository | string | `"ghcr.io/matrix-org/dendrite-monolith"` | image repository |
|
||||||
|
| image.tag | string | chart.appVersion | image tag |
|
||||||
|
| ingress.main | object | See values.yaml | (Monolith Only) Enable and configure ingress settings for the chart under this key. |
|
||||||
|
| keyserver | object | See values.yaml | Configure the key server. For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| keyserver.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| keyserver.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| keyserver.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| keyserver.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| keyserver.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| keyserver.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| keyserver.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| keyserver.image.tag | string | chart.appVersion | image tag |
|
||||||
|
| mediaapi | object | values.yaml | Configure the Media API For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| mediaapi.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| mediaapi.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| mediaapi.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| mediaapi.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| mediaapi.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| mediaapi.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| mediaapi.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| mediaapi.image.tag | string | chart.appVersion | image tag |
|
||||||
|
| mscs | object | values.yaml | Configuration for experimental MSCs For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| mscs.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| mscs.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| mscs.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| mscs.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| mscs.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| nats.enabled | bool | See value.yaml | Enable and configure NATS for dendrite. Can be disabled for monolith deployments - an internal NATS server will be used in its place. |
|
||||||
|
| nats.nats.image | string | `"nats:2.7.1-alpine"` | |
|
||||||
|
| nats.nats.jetstream.enabled | bool | `true` | |
|
||||||
|
| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. |
|
||||||
|
| persistence.jetstream | object | See values.yaml | Configure Jetsream persistence. This is highly recommended in production. |
|
||||||
|
| postgresql.auth.database | string | `"dendrite"` | |
|
||||||
|
| postgresql.auth.password | string | `"changeme"` | |
|
||||||
|
| postgresql.auth.username | string | `"dendrite"` | |
|
||||||
|
| postgresql.enabled | bool | See value.yaml | Enable and configure postgres as the database for dendrite. |
|
||||||
|
| postgresql.image.repository | string | `"bitnami/postgresql"` | |
|
||||||
|
| postgresql.image.tag | string | `"14.4.0"` | |
|
||||||
|
| postgresql.primary.initdb.scriptsConfigMap | string | `"dendrite-postgresql-init-scripts"` | |
|
||||||
|
| postgresql.primary.persistence.enabled | bool | `false` | |
|
||||||
|
| roomserver | object | values.yaml | Configure the Room Server For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| roomserver.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| roomserver.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| roomserver.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| roomserver.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| roomserver.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| roomserver.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| roomserver.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| roomserver.image.tag | string | chart.appVersion | image tag |
|
||||||
|
| service | object | See values.yaml | If added dendrite will start a HTTP and HTTPS listener args: - "--tls-cert=server.crt" - "--tls-key=server.key" -- Configures service settings for the chart. |
|
||||||
|
| service.main.ports.http | object | See values.yaml | Configures the default HTTP listener for dendrite |
|
||||||
|
| service.main.ports.https | object | See values.yaml | Configures the HTTPS listener for dendrite |
|
||||||
|
| syncapi | object | values.yaml | Configure the Sync API For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| syncapi.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| syncapi.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| syncapi.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| syncapi.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| syncapi.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| syncapi.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| syncapi.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| syncapi.image.tag | string | chart.appVersion | image tag |
|
||||||
|
| userapi | object | values.yaml | Configure the User API For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml) |
|
||||||
|
| userapi.config.bcrypt_cost | int | 10 | bcrypt cost (2^[cost] = rounds) |
|
||||||
|
| userapi.database | object | See values.yaml | Override general dendrite.database parameters. |
|
||||||
|
| userapi.database.conn_max_lifetime | string | dendrite.database.conn_max_lifetime | Maximum connection lifetime |
|
||||||
|
| userapi.database.connection_string | string | file or derived from included postgresql deployment | Custom connection string |
|
||||||
|
| userapi.database.max_idle_conns | string | dendrite.database.max_idle_conns | Maximum dile connections |
|
||||||
|
| userapi.database.max_open_conns | string | dendrite.database.max_open_conns | Maximum open connections |
|
||||||
|
| userapi.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| userapi.image.repository | string | `"matrixdotorg/dendrite-polylith"` | image repository |
|
||||||
|
| userapi.image.tag | string | chart.appVersion | image tag |
|
||||||
|
|
||||||
|
## Changelog
|
||||||
|
|
||||||
|
### Version 6.3.1
|
||||||
|
|
||||||
|
#### Added
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
#### Changed
|
||||||
|
|
||||||
|
* Upgraded dendrite to 0.9.4
|
||||||
|
|
||||||
|
#### Fixed
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
### Older versions
|
||||||
|
|
||||||
|
A historical overview of changes can be found on [ArtifactHUB](https://artifacthub.io/packages/helm/k8s-at-home/dendrite?modal=changelog)
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
|
||||||
|
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
|
||||||
|
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
|
||||||
|
- Join our [Discord](https://discord.gg/sTMX7Vh) community
|
||||||
|
|
||||||
|
----------------------------------------------
|
||||||
|
Autogenerated from chart metadata using [helm-docs v0.1.1](https://github.com/k8s-at-home/helm-docs/releases/v0.1.1)
|
17
charts/incubator/dendrite/README_CONFIG.md.gotmpl
Normal file
17
charts/incubator/dendrite/README_CONFIG.md.gotmpl
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{{- define "custom.custom.configuration.header" -}}
|
||||||
|
## Custom configuration
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- define "custom.custom.configuration" -}}
|
||||||
|
{{ template "custom.custom.configuration.header" . }}
|
||||||
|
|
||||||
|
### Polylith Ingress
|
||||||
|
|
||||||
|
Due to the complexity of setting up ingress for each individual component it
|
||||||
|
is left up to the individual to add the necessary ingress fields to polylith deployments.
|
||||||
|
|
||||||
|
For more information see:
|
||||||
|
- https://github.com/matrix-org/dendrite/blob/master/docs/INSTALL.md#nginx-or-other-reverse-proxy
|
||||||
|
- and https://github.com/matrix-org/dendrite/blob/master/docs/nginx/polylith-sample.conf
|
||||||
|
|
||||||
|
{{- end -}}
|
10
charts/incubator/dendrite/ci/ct-values.yaml
Normal file
10
charts/incubator/dendrite/ci/ct-values.yaml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
dendrite:
|
||||||
|
matrix_key_secret:
|
||||||
|
create: true
|
||||||
|
keyBody: |
|
||||||
|
-----BEGIN MATRIX PRIVATE KEY-----
|
||||||
|
Key-ID: ed25519:P8gZqV
|
||||||
|
|
||||||
|
qVzy2Cwokt15RjGy8OzFSq6z0JFmI6QX/1Zw1VP73uU=
|
||||||
|
-----END MATRIX PRIVATE KEY-----
|
12
charts/incubator/dendrite/ci/nats-values.yaml
Normal file
12
charts/incubator/dendrite/ci/nats-values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
dendrite:
|
||||||
|
matrix_key_secret:
|
||||||
|
create: true
|
||||||
|
keyBody: |
|
||||||
|
-----BEGIN MATRIX PRIVATE KEY-----
|
||||||
|
Key-ID: ed25519:P8gZqV
|
||||||
|
|
||||||
|
qVzy2Cwokt15RjGy8OzFSq6z0JFmI6QX/1Zw1VP73uU=
|
||||||
|
-----END MATRIX PRIVATE KEY-----
|
||||||
|
nats:
|
||||||
|
enabled: true
|
13
charts/incubator/dendrite/ci/polylith-basic-values.yaml
Normal file
13
charts/incubator/dendrite/ci/polylith-basic-values.yaml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
---
|
||||||
|
dendrite:
|
||||||
|
polylithEnabled: true
|
||||||
|
matrix_key_secret:
|
||||||
|
create: true
|
||||||
|
keyBody: |
|
||||||
|
-----BEGIN MATRIX PRIVATE KEY-----
|
||||||
|
Key-ID: ed25519:P8gZqV
|
||||||
|
|
||||||
|
qVzy2Cwokt15RjGy8OzFSq6z0JFmI6QX/1Zw1VP73uU=
|
||||||
|
-----END MATRIX PRIVATE KEY-----
|
||||||
|
nats:
|
||||||
|
enabled: true
|
21
charts/incubator/dendrite/ci/polylith-full-values.yaml
Normal file
21
charts/incubator/dendrite/ci/polylith-full-values.yaml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
dendrite:
|
||||||
|
polylithEnabled: true
|
||||||
|
matrix_key_secret:
|
||||||
|
create: true
|
||||||
|
keyBody: |
|
||||||
|
-----BEGIN MATRIX PRIVATE KEY-----
|
||||||
|
Key-ID: ed25519:P8gZqV
|
||||||
|
|
||||||
|
qVzy2Cwokt15RjGy8OzFSq6z0JFmI6QX/1Zw1VP73uU=
|
||||||
|
-----END MATRIX PRIVATE KEY-----
|
||||||
|
polylith_ingress:
|
||||||
|
enabled: true
|
||||||
|
host: matrix.k8s-at-home.org
|
||||||
|
nats:
|
||||||
|
enabled: true
|
||||||
|
persistence:
|
||||||
|
jetstream:
|
||||||
|
enabled: true
|
||||||
|
postgresql:
|
||||||
|
enabled: true
|
12
charts/incubator/dendrite/ci/postresql-values.yaml
Normal file
12
charts/incubator/dendrite/ci/postresql-values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
dendrite:
|
||||||
|
matrix_key_secret:
|
||||||
|
create: true
|
||||||
|
keyBody: |
|
||||||
|
-----BEGIN MATRIX PRIVATE KEY-----
|
||||||
|
Key-ID: ed25519:P8gZqV
|
||||||
|
|
||||||
|
qVzy2Cwokt15RjGy8OzFSq6z0JFmI6QX/1Zw1VP73uU=
|
||||||
|
-----END MATRIX PRIVATE KEY-----
|
||||||
|
postgresql:
|
||||||
|
enabled: true
|
3
charts/incubator/dendrite/templates/_helper.tpl
Normal file
3
charts/incubator/dendrite/templates/_helper.tpl
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{{- define "dendrite.names.key" -}}
|
||||||
|
{{- default (printf "%s-key" (include "common.names.fullname" .)) .Values.dendrite.matrix_key_secret.existingSecret -}}
|
||||||
|
{{- end -}}
|
77
charts/incubator/dendrite/templates/common.yaml
Normal file
77
charts/incubator/dendrite/templates/common.yaml
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
{{ $components := list "clientapi" "appserviceapi" "federationapi" "userapi" "keyserver" "mediaapi" "syncapi" "roomserver" }}
|
||||||
|
{{- range $components }}
|
||||||
|
{{- include "common.values.setup" (index $.Subcharts .) }}
|
||||||
|
{{- with (index $.Values .) }}
|
||||||
|
{{- with .image }}
|
||||||
|
{{- $_ := set . "tag" (default $.Chart.AppVersion .tag) -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- if not .persistence }}
|
||||||
|
{{- $_ := set . "persistence" (dict)}}
|
||||||
|
{{- end }}
|
||||||
|
{{- $_ := set .persistence "dendrite-key" (include "dendrite.keyVolume" $ | fromYaml) -}}
|
||||||
|
{{- $_ := set .persistence "dendrite-config" (include "dendrite.configVolume" $ | fromYaml) -}}
|
||||||
|
{{- $_ := set .persistence "dendrite-tls" (include "dendrite.tlsVolume" $ | fromYaml) -}}
|
||||||
|
{{- $_ := set .persistence "jetstream" $.Values.persistence.jetstream -}}
|
||||||
|
{{- end }}
|
||||||
|
{{- include "common.all" (index $.Subcharts .) }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with (index $.Values "mediaapi") }}
|
||||||
|
{{- $_ := set .persistence "media" $.Values.persistence.media -}}
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
|
{{ include "common.values.setup" . }}
|
||||||
|
{{- $_ := set .Values.persistence "dendrite-key" (include "dendrite.keyVolume" . | fromYaml) -}}
|
||||||
|
{{- $_ := set .Values.persistence "dendrite-config" (include "dendrite.configVolume" . | fromYaml) -}}
|
||||||
|
{{- $_ := set .Values.persistence "dendrite-tls" (include "dendrite.tlsVolume" . | fromYaml) -}}
|
||||||
|
{{ include "common.all" . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- define "dendrite.hardcodedValues" -}}
|
||||||
|
probes:
|
||||||
|
liveness:
|
||||||
|
enabled: true
|
||||||
|
custom: true
|
||||||
|
spec:
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
periodSeconds: 10
|
||||||
|
timeoutSeconds: 5
|
||||||
|
failureThreshold: 10
|
||||||
|
httpGet:
|
||||||
|
path: /_dendrite/monitor/health
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
port: internal
|
||||||
|
{{ else }}
|
||||||
|
port: http
|
||||||
|
{{ end }}
|
||||||
|
readiness:
|
||||||
|
enabled: true
|
||||||
|
custom: true
|
||||||
|
spec:
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
periodSeconds: 10
|
||||||
|
timeoutSeconds: 5
|
||||||
|
failureThreshold: 10
|
||||||
|
httpGet:
|
||||||
|
path: /_dendrite/monitor/health
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
port: internal
|
||||||
|
{{ else }}
|
||||||
|
port: http
|
||||||
|
{{ end }}
|
||||||
|
startup:
|
||||||
|
enabled: true
|
||||||
|
custom: true
|
||||||
|
spec:
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 10
|
||||||
|
timeoutSeconds: 5
|
||||||
|
failureThreshold: 10
|
||||||
|
httpGet:
|
||||||
|
path: /_dendrite/monitor/up
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
port: internal
|
||||||
|
{{ else }}
|
||||||
|
port: http
|
||||||
|
{{ end }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $_ := mergeOverwrite .Values (include "dendrite.hardcodedValues" . | fromYaml) -}}
|
212
charts/incubator/dendrite/templates/dendrite-config.yaml
Normal file
212
charts/incubator/dendrite/templates/dendrite-config.yaml
Normal file
@ -0,0 +1,212 @@
|
|||||||
|
{{- $connectionString := "file:" -}}
|
||||||
|
{{- if .Values.postgresql.enabled}}
|
||||||
|
{{- $connectionString = print "postgresql://" .Values.postgresql.auth.username ":" .Values.postgresql.auth.password "@" (include "common.names.fullname" $.Subcharts.postgresql) "/" -}}
|
||||||
|
{{- end}}
|
||||||
|
{{- $componentSpecificDatabaseConfig := or .Values.dendrite.polylithEnabled (not .Values.postgresql.enabled) -}}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: {{ template "common.names.fullname" . }}-config
|
||||||
|
type: Opaque
|
||||||
|
stringData:
|
||||||
|
dendrite.yaml: |
|
||||||
|
version: 2
|
||||||
|
global:
|
||||||
|
server_name: {{ required "A server_name must be provided." .Values.dendrite.global.server_name | quote }}
|
||||||
|
private_key: matrix_key.pem
|
||||||
|
key_validity_period: {{ default "168h0m0s" .Values.dendrite.global.key_validity_period | quote }}
|
||||||
|
cache:
|
||||||
|
max_size_estimated: {{ default "1gb" .Values.dendrite.global.cache.max_size_estimated | quote }}
|
||||||
|
max_age: {{ default "1h" .Values.dendrite.global.cache.max_age | quote }}
|
||||||
|
well_known_server_name: {{ default "" .Values.dendrite.global.well_known_server_name | quote }}
|
||||||
|
well_known_client_name: {{ default "" .Values.dendrite.global.well_known_client_name | quote }}
|
||||||
|
trusted_third_party_id_servers:
|
||||||
|
{{- toYaml .Values.dendrite.global.trusted_third_party_id_servers | nindent 8 }}
|
||||||
|
disable_federation: {{ default false .Values.dendrite.global.disable_federation }}
|
||||||
|
presence:
|
||||||
|
enable_inbound: {{ default false .Values.dendrite.global.presence.enable_inbound}}
|
||||||
|
enable_outbound: {{ default false .Values.dendrite.global.presence.enable_outbound }}
|
||||||
|
report_stats:
|
||||||
|
enabled: {{ default false .Values.dendrite.report_stats.enabled }}
|
||||||
|
endpoint: {{ default "https://matrix.org/report-usage-stats/push" .Values.dendrite.report_stats.endpoint }}
|
||||||
|
server_notices:
|
||||||
|
enabled: {{ default false .Values.dendrite.global.server_notices.enabled }}
|
||||||
|
local_part: {{ default "_server" .Values.dendrite.global.server_notices.local_part | quote }}
|
||||||
|
display_name: {{ default "Server alerts" .Values.dendrite.global.server_notices.display_name | quote }}
|
||||||
|
avatar_url: {{ default "" .Values.dendrite.global.server_notices.avatar_url | quote }}
|
||||||
|
room_name: {{ default "Server Alerts" .Values.dendrite.global.server_notices.room_name | quote }}
|
||||||
|
jetstream:
|
||||||
|
addresses:
|
||||||
|
{{- if .Values.nats.enabled }}
|
||||||
|
- {{ template "common.names.fullname" $.Subcharts.nats }}:4222
|
||||||
|
{{- else }}
|
||||||
|
[]
|
||||||
|
{{- end }}
|
||||||
|
in_memory: {{ not .Values.persistence.jetstream.enabled }}
|
||||||
|
storage_path: {{ .Values.persistence.jetstream.mountPath }}
|
||||||
|
topic_prefix: "Dendrite"
|
||||||
|
metrics:
|
||||||
|
enabled: {{ default false .Values.dendrite.global.metrics.enabled }}
|
||||||
|
basic_auth:
|
||||||
|
username: {{ default "metrics" .Values.dendrite.global.metrics.basic_auth.username | quote }}
|
||||||
|
password: {{ default "metrics" .Values.dendrite.global.metrics.basic_auth.password | quote }}
|
||||||
|
dns_cache:
|
||||||
|
enabled: {{ default false .Values.dendrite.global.dns_cache.enabled }}
|
||||||
|
cache_size: {{ default 256 .Values.dendrite.global.dns_cache.cache_size }}
|
||||||
|
cache_lifetime: {{ default "5m" .Values.dendrite.global.dns_cache.cache_lifetime }}
|
||||||
|
{{- if not $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite?sslmode=disable") .Values.database.connection_string }}
|
||||||
|
max_open_conns: {{ default 100 .Values.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default 5 .Values.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{default -1 .Values.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
app_service_api:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:{{ .Values.appserviceapi.service.main.ports.internal.port }}
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "appserviceapi") }}:{{ .Values.appserviceapi.service.main.ports.internal.port }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_appservice?sslmode=disable") .Values.appserviceapi.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.appserviceapi.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.appserviceapi.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.appserviceapi.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
config_files: {{- toYaml .Values.appserviceapi.config.config_files | nindent 8 }}
|
||||||
|
client_api:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:{{ .Values.clientapi.service.main.ports.internal.port }}
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "clientapi") }}:{{ .Values.clientapi.service.main.ports.internal.port }}
|
||||||
|
external_api:
|
||||||
|
listen: http://0.0.0.0:{{ .Values.clientapi.service.main.ports.external.port }}
|
||||||
|
{{- end }}
|
||||||
|
registration_disabled: {{ default true .Values.clientapi.config.registration_disabled }}
|
||||||
|
registration_shared_secret: {{ default "" .Values.clientapi.config.registration_shared_secret | quote }}
|
||||||
|
enable_registration_captcha: {{ default false .Values.clientapi.config.captcha.enabled }}
|
||||||
|
recaptcha_public_key: {{ default "" .Values.clientapi.config.captcha.recaptcha_public_key | quote }}
|
||||||
|
recaptcha_private_key: {{ default "" .Values.clientapi.config.captcha.recaptcha_private_key | quote }}
|
||||||
|
recaptcha_bypass_secret: {{ default "" .Values.clientapi.config.captcha.recaptcha_bypass_secret | quote }}
|
||||||
|
recaptcha_siteverify_api: {{ default "" .Values.clientapi.config.captcha.recaptcha_siteverify_api | quote }}
|
||||||
|
turn: {{- toYaml .Values.clientapi.config.turn | nindent 8 }}
|
||||||
|
rate_limiting:
|
||||||
|
enabled: {{ default true .Values.clientapi.config.rate_limiting.enabled }}
|
||||||
|
threshold: {{ default 5 .Values.clientapi.config.rate_limiting.threshold }}
|
||||||
|
cooloff_ms: {{ default 500 .Values.clientapi.config.rate_limiting.cooloff_ms }}
|
||||||
|
exempt_user_ids: {{ .Values.clientapi.config.exempt_user_ids }}
|
||||||
|
federation_api:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:7772
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "federationapi") }}:7772
|
||||||
|
external_api:
|
||||||
|
listen: http://0.0.0.0:8072
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.federationapi.database.conn_max_lifetime }}
|
||||||
|
federation_certificates: {{- toYaml .Values.federationapi.config.federation_certificates | nindent 8 }}
|
||||||
|
proxy_outbound:
|
||||||
|
enabled: {{ default false .Values.federationapi.config.proxy_outbound.enabled }}
|
||||||
|
protocol: {{ default "http" .Values.federationapi.config.proxy_outbound.protocol | quote }}
|
||||||
|
host: {{ default "localhost" .Values.federationapi.config.proxy_outbound.host | quote }}
|
||||||
|
port: {{ default 8080 .Values.federationapi.config.proxy_outbound.port }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_federationapi?sslmode=disable") .Values.federationapi.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.federationapi.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.federationapi.database.max_idle_conns }}
|
||||||
|
{{- end }}
|
||||||
|
send_max_retries: {{ default 16 .Values.federationapi.config.send_max_retries }}
|
||||||
|
disable_tls_validation: {{ default false .Values.federationapi.config.disable_tls_validation }}
|
||||||
|
key_perspectives: {{- toYaml .Values.federationapi.config.key_perspectives | nindent 8 }}
|
||||||
|
prefer_direct_fetch: {{ default false .Values.federationapi.config.prefer_direct_fetch }}
|
||||||
|
key_server:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:7779
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "keyserver") }}:7779
|
||||||
|
{{- end }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_keyserver?sslmode=disable") .Values.keyserver.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.keyserver.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.keyserver.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.keyserver.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
media_api:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:7774
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "mediaapi") }}:7774
|
||||||
|
external_api:
|
||||||
|
listen: http://0.0.0.0:8074
|
||||||
|
{{- end }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_mediaapi?sslmode=disable") .Values.mediaapi.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.mediaapi.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.mediaapi.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.mediaapi.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
base_path: {{ default "/var/dendrite/media" .Values.mediaapi.config.base_path | quote }}
|
||||||
|
max_file_size_bytes: {{ int ( default 10485760 .Values.mediaapi.config.max_file_size_bytes ) }}
|
||||||
|
dynamic_thumbnails: {{ default false .Values.mediaapi.config.dynamic_thumbnails }}
|
||||||
|
max_thumbnail_generators: {{ default 10 .Values.mediaapi.config.max_thumbnail_generators }}
|
||||||
|
thumbnail_sizes: {{- toYaml .Values.mediaapi.config.thumbnail_sizes | nindent 8 }}
|
||||||
|
mscs:
|
||||||
|
mscs: {{ .Values.dendrite.global.mscs | toYaml | nindent 8 }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_mscs?sslmode=disable") .Values.mscs.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.mscs.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.mscs.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.mscs.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
room_server:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:7770
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "roomserver") }}:7770
|
||||||
|
{{- end }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_roomserver?sslmode=disable") .Values.roomserver.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.roomserver.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.roomserver.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.roomserver.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
sync_api:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:7773
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "syncapi") }}:7773
|
||||||
|
external_api:
|
||||||
|
listen: http://0.0.0.0:8073
|
||||||
|
{{- end }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_syncapi?sslmode=disable") .Values.syncapi.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.syncapi.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.syncapi.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.syncapi.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
user_api:
|
||||||
|
{{- if .Values.dendrite.polylithEnabled }}
|
||||||
|
internal_api:
|
||||||
|
listen: http://0.0.0.0:7781
|
||||||
|
connect: http://{{ include "common.names.fullname" (index $.Subcharts "userapi") }}:7781
|
||||||
|
{{- end }}
|
||||||
|
{{- if $componentSpecificDatabaseConfig }}
|
||||||
|
account_database:
|
||||||
|
connection_string: {{ default (print $connectionString "dendrite_userapi_accounts?sslmode=disable") .Values.userapi.database.connection_string }}
|
||||||
|
max_open_conns: {{ default .Values.dendrite.database.max_open_conns .Values.userapi.database.max_open_conns }}
|
||||||
|
max_idle_conns: {{ default .Values.dendrite.database.max_idle_conns .Values.userapi.database.max_idle_conns }}
|
||||||
|
conn_max_lifetime: {{ default .Values.dendrite.database.conn_max_lifetime .Values.userapi.database.conn_max_lifetime }}
|
||||||
|
{{- end }}
|
||||||
|
bcrypt_cost: {{ default 10 .Values.userapi.config.bcrypt_cost }}
|
||||||
|
tracing:
|
||||||
|
enabled: {{ .Values.dendrite.tracing.enabled }}
|
||||||
|
jaeger: {{- toYaml .Values.dendrite.tracing.jaeger | nindent 8 }}
|
||||||
|
logging: {{- toYaml .Values.dendrite.logging | nindent 6 }}
|
57
charts/incubator/dendrite/templates/ingress.yaml
Normal file
57
charts/incubator/dendrite/templates/ingress.yaml
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
{{- if .Values.dendrite.polylith_ingress.enabled -}}
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: {{ include "common.names.fullname" . }}
|
||||||
|
{{- if .Values.dendrite.polylith_ingress.annotations }}
|
||||||
|
annotations: {{ toYaml .Values.dendrite.polylith_ingress.annotations | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
{{- if .Values.dendrite.tls_secret.enabled }}
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- {{ .Values.dendrite.polylith_ingress.host | quote }}
|
||||||
|
secretName: {{ .Values.dendrite.tls_secret.existingSecret }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
- host: {{ .Values.dendrite.polylith_ingress.host | quote }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
{{- range .Values.dendrite.polylith_ingress.syncapi_paths }}
|
||||||
|
- path: {{ . | quote }}
|
||||||
|
pathType: Exact
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: {{ include "common.names.fullname" (index $.Subcharts "syncapi") }}
|
||||||
|
port:
|
||||||
|
number: {{ $.Values.syncapi.service.main.ports.external.port }}
|
||||||
|
{{- end }}
|
||||||
|
- path: /_matrix/client
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: {{ include "common.names.fullname" (index $.Subcharts "clientapi") }}
|
||||||
|
port:
|
||||||
|
number: {{ .Values.clientapi.service.main.ports.external.port }}
|
||||||
|
- path: /_matrix/federation
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: {{ include "common.names.fullname" (index $.Subcharts "federationapi") }}
|
||||||
|
port:
|
||||||
|
number: {{ .Values.federationapi.service.main.ports.external.port }}
|
||||||
|
- path: /_matrix/key
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: {{ include "common.names.fullname" (index $.Subcharts "federationapi") }}
|
||||||
|
port:
|
||||||
|
number: {{ .Values.federationapi.service.main.ports.external.port }}
|
||||||
|
- path: /_matrix/media
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: {{ include "common.names.fullname" (index $.Subcharts "mediaapi") }}
|
||||||
|
port:
|
||||||
|
number: {{ .Values.mediaapi.service.main.ports.external.port }}
|
||||||
|
{{- end -}}
|
@ -0,0 +1,9 @@
|
|||||||
|
{{- if .Values.dendrite.matrix_key_secret.create }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: {{ include "dendrite.names.key" . }}
|
||||||
|
stringData:
|
||||||
|
{{ .Values.dendrite.matrix_key_secret.secretPath }}: | {{ .Values.dendrite.matrix_key_secret.keyBody | nindent 4 }}
|
||||||
|
{{- end }}
|
14
charts/incubator/dendrite/templates/postgresql-initdb.yaml
Normal file
14
charts/incubator/dendrite/templates/postgresql-initdb.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{{- if .Values.postgresql.enabled }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
name: {{ .Values.postgresql.primary.initdb.scriptsConfigMap | quote }}
|
||||||
|
data:
|
||||||
|
create-db.sh: |
|
||||||
|
#!/bin/sh
|
||||||
|
for db in userapi_accounts mediaapi syncapi roomserver keyserver federationapi appservice; do
|
||||||
|
createdb -U {{ .Values.postgresql.auth.username }} -O {{ .Values.postgresql.auth.username }} dendrite_$db
|
||||||
|
done
|
||||||
|
{{- end }}
|
35
charts/incubator/dendrite/templates/volumes.yaml
Normal file
35
charts/incubator/dendrite/templates/volumes.yaml
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
{{- define "dendrite.keyVolume" -}}
|
||||||
|
enabled: {{ .Values.dendrite.matrix_key_secret.enabled }}
|
||||||
|
type: "custom"
|
||||||
|
volumeSpec:
|
||||||
|
secret:
|
||||||
|
defaultMode: 0600
|
||||||
|
secretName: {{ include "dendrite.names.key" . }}
|
||||||
|
subPath:
|
||||||
|
- path: {{ .Values.dendrite.matrix_key_secret.secretPath }}
|
||||||
|
mountPath: "/etc/dendrite/matrix_key.pem"
|
||||||
|
{{- end -}}
|
||||||
|
{{- define "dendrite.tlsVolume" -}}
|
||||||
|
enabled: {{ .Values.dendrite.tls_secret.enabled }}
|
||||||
|
type: "custom"
|
||||||
|
volumeSpec:
|
||||||
|
secret:
|
||||||
|
defaultMode: 0600
|
||||||
|
secretName: {{ .Values.dendrite.tls_secret.existingSecret }}
|
||||||
|
subPath:
|
||||||
|
- path: {{ .Values.dendrite.tls_secret.crtPath }}
|
||||||
|
mountPath: "/etc/dendrite/server.crt"
|
||||||
|
- path: {{ .Values.dendrite.tls_secret.keyPath }}
|
||||||
|
mountPath: "/etc/dendrite/server.key"
|
||||||
|
{{- end -}}
|
||||||
|
{{- define "dendrite.configVolume" -}}
|
||||||
|
enabled: true
|
||||||
|
type: "custom"
|
||||||
|
volumeSpec:
|
||||||
|
secret:
|
||||||
|
defaultMode: 0600
|
||||||
|
secretName: {{ include "common.names.fullname" . }}-config
|
||||||
|
subPath:
|
||||||
|
- path: dendrite.yaml
|
||||||
|
mountPath: "/etc/dendrite/dendrite.yaml"
|
||||||
|
{{- end -}}
|
630
charts/incubator/dendrite/values.yaml
Normal file
630
charts/incubator/dendrite/values.yaml
Normal file
@ -0,0 +1,630 @@
|
|||||||
|
#
|
||||||
|
# IMPORTANT NOTE
|
||||||
|
#
|
||||||
|
# This chart inherits from our common library chart. You can check the default
|
||||||
|
# values/options here:
|
||||||
|
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||||
|
#
|
||||||
|
---
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: ghcr.io/matrix-org/dendrite-monolith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
# -- If added dendrite will start a HTTP and HTTPS listener
|
||||||
|
# args:
|
||||||
|
# - "--tls-cert=server.crt"
|
||||||
|
# - "--tls-key=server.key"
|
||||||
|
|
||||||
|
# -- Configures service settings for the chart.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
# -- Configures the default HTTP listener for dendrite
|
||||||
|
# @default -- See values.yaml
|
||||||
|
http:
|
||||||
|
port: 8008
|
||||||
|
# -- Configures the HTTPS listener for dendrite
|
||||||
|
# @default -- See values.yaml
|
||||||
|
https:
|
||||||
|
enabled: true
|
||||||
|
port: 8448
|
||||||
|
protocol: HTTPS
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
# -- (Monolith Only) Enable and configure ingress settings for the chart under
|
||||||
|
# this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
main:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# -- Configure persistence settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
persistence:
|
||||||
|
media:
|
||||||
|
enabled: false
|
||||||
|
mountPath: &mediaPath /var/dendrite/media
|
||||||
|
accessMode: ReadWriteOnce
|
||||||
|
size: 5Gi
|
||||||
|
# -- Configure Jetsream persistence. This is highly recommended in production.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
jetstream:
|
||||||
|
enabled: false
|
||||||
|
mountPath: /var/dendrite/jetstream
|
||||||
|
accessMode: ReadWriteOnce
|
||||||
|
size: 1Gi
|
||||||
|
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
|
||||||
|
# -- Configure the key server.
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- See values.yaml
|
||||||
|
keyserver:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7779
|
||||||
|
args: "keyserver"
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
|
||||||
|
# -- Configure the app service api.
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- See values.yaml
|
||||||
|
appserviceapi:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7777
|
||||||
|
ingress:
|
||||||
|
|
||||||
|
args: "appservice"
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
config:
|
||||||
|
config_files: []
|
||||||
|
|
||||||
|
# -- Configuration for the client api component.
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- See values.yaml
|
||||||
|
clientapi:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7771
|
||||||
|
external:
|
||||||
|
enabled: true
|
||||||
|
port: 8071
|
||||||
|
args: "clientapi"
|
||||||
|
config:
|
||||||
|
# -- Enable or disable registration for this homeserver.
|
||||||
|
registration_disabled: false
|
||||||
|
# -- Shared secret that allows registration, despite registration_disabled.
|
||||||
|
registration_shared_secret: ""
|
||||||
|
# -- Configure captcha for registration
|
||||||
|
# @default -- See values.yaml
|
||||||
|
captcha:
|
||||||
|
enabled: false
|
||||||
|
recaptcha_public_key: ""
|
||||||
|
recaptcha_private_key: ""
|
||||||
|
recaptcha_bypass_secret: ""
|
||||||
|
recaptcha_siteverify_api: ""
|
||||||
|
# -- Configure TURN
|
||||||
|
# @default -- See values.yaml
|
||||||
|
turn:
|
||||||
|
turn_user_lifetime: ""
|
||||||
|
turn_uris: []
|
||||||
|
turn_shared_secret: ""
|
||||||
|
turn_username: ""
|
||||||
|
turn_password: ""
|
||||||
|
# -- Configure rate limiting.
|
||||||
|
# @default -- values.yaml
|
||||||
|
rate_limiting:
|
||||||
|
enabled: true
|
||||||
|
threshold: 5
|
||||||
|
cooloff_ms: 500
|
||||||
|
exempt_user_ids: []
|
||||||
|
|
||||||
|
# -- Configure the Federation API
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- values.yaml
|
||||||
|
federationapi:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7772
|
||||||
|
external:
|
||||||
|
enabled: true
|
||||||
|
port: 8072
|
||||||
|
args: "federationapi"
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
config:
|
||||||
|
federation-certificates: []
|
||||||
|
send-max_retires: 16
|
||||||
|
disable_tls_validation: false
|
||||||
|
proxy_outbound:
|
||||||
|
enabled: false
|
||||||
|
protocol: http
|
||||||
|
host: localhost
|
||||||
|
port: 8080
|
||||||
|
key_perspectives:
|
||||||
|
- server_name: matrix.org
|
||||||
|
keys:
|
||||||
|
- key_id: ed25519:auto
|
||||||
|
public_key: Noi6WqcDj0QmPxCNQqgezwTlBKrfqehY1u2FyWP9uYw
|
||||||
|
- key_id: ed25519:a_RXGa
|
||||||
|
public_key: l8Hft5qXKn1vfHrg3p4+W8gELQVo8N13JkluMfmn2sQ
|
||||||
|
prefer_direct_fetch: false
|
||||||
|
|
||||||
|
# -- Configure the User API
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- values.yaml
|
||||||
|
userapi:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7781
|
||||||
|
args: "userapi"
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
config:
|
||||||
|
# -- bcrypt cost (2^[cost] = rounds)
|
||||||
|
# @default -- 10
|
||||||
|
bcrypt_cost: 10
|
||||||
|
|
||||||
|
# -- Configure the Sync API
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- values.yaml
|
||||||
|
syncapi:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7773
|
||||||
|
external:
|
||||||
|
enabled: true
|
||||||
|
port: 8073
|
||||||
|
args: "syncapi"
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
|
||||||
|
# -- Configure the Room Server
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- values.yaml
|
||||||
|
roomserver:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7770
|
||||||
|
args: "roomserver"
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
|
||||||
|
# -- Configure the Media API
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- values.yaml
|
||||||
|
mediaapi:
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: matrixdotorg/dendrite-polylith
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
enabled: false
|
||||||
|
internal:
|
||||||
|
enabled: true
|
||||||
|
port: 7774
|
||||||
|
external:
|
||||||
|
enabled: true
|
||||||
|
port: 8074
|
||||||
|
args: "mediaapi"
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
config:
|
||||||
|
base_path: *mediaPath
|
||||||
|
max_file_size_bytes: 10485760
|
||||||
|
dynamic_thumbnails: false
|
||||||
|
max_thumbnail_generators: 10
|
||||||
|
thumbnail_sizes:
|
||||||
|
- width: 32
|
||||||
|
height: 32
|
||||||
|
method: crop
|
||||||
|
- width: 96
|
||||||
|
height: 96
|
||||||
|
method: crop
|
||||||
|
- width: 640
|
||||||
|
height: 480
|
||||||
|
method: scale
|
||||||
|
|
||||||
|
# -- Configuration for experimental MSCs
|
||||||
|
# For more information see [the sample dendrite configuration](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- values.yaml
|
||||||
|
mscs:
|
||||||
|
# -- Override general dendrite.database parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
# -- Custom connection string
|
||||||
|
# @default -- file or derived from included postgresql deployment
|
||||||
|
connection_string: null
|
||||||
|
# -- Maximum open connections
|
||||||
|
# @default -- dendrite.database.max_open_conns
|
||||||
|
max_open_conns: null
|
||||||
|
# -- Maximum dile connections
|
||||||
|
# @default -- dendrite.database.max_idle_conns
|
||||||
|
max_idle_conns: null
|
||||||
|
# -- Maximum connection lifetime
|
||||||
|
# @default -- dendrite.database.conn_max_lifetime
|
||||||
|
conn_max_lifetime: null
|
||||||
|
|
||||||
|
# -- Configuration for Dendrite.
|
||||||
|
# For more information see [the sample
|
||||||
|
# denrite-config.yaml](https://github.com/matrix-org/dendrite/blob/main/dendrite-sample.polylith.yaml)
|
||||||
|
# @default -- See values.yaml
|
||||||
|
dendrite:
|
||||||
|
# -- Enable polylith deployment
|
||||||
|
polylithEnabled: false
|
||||||
|
# -- Usage statistics reporting configuration
|
||||||
|
report_stats:
|
||||||
|
# -- Enable or disable usage reporting
|
||||||
|
# @default -- false
|
||||||
|
enabled: false
|
||||||
|
# -- Push endpoint for usage statistics
|
||||||
|
endpoint: ""
|
||||||
|
# -- If enabled, use an existing secrets for the TLS certificate and key.
|
||||||
|
# Otherwise, to enable TLS a `server.crt` and `server.key` must be mounted at
|
||||||
|
# `/etc/dendrite`.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
tls_secret:
|
||||||
|
enabled: false
|
||||||
|
existingSecret: ""
|
||||||
|
crtPath: tls.crt
|
||||||
|
keyPath: tls.key
|
||||||
|
|
||||||
|
matrix_key_secret:
|
||||||
|
# -- Create matrix_key secret using the keyBody below.
|
||||||
|
create: false
|
||||||
|
# -- New Key Body
|
||||||
|
keyBody: ""
|
||||||
|
# -- Use an existing secret
|
||||||
|
existingSecret: ""
|
||||||
|
# -- Field in the secret to get the key from
|
||||||
|
secretPath: matrix_key.pem
|
||||||
|
|
||||||
|
# -- Enable and configure polylith ingress as per
|
||||||
|
# https://github.com/matrix-org/dendrite/blob/main/docs/nginx/polylith-sample.conf
|
||||||
|
# @default -- See values.yaml
|
||||||
|
polylith_ingress:
|
||||||
|
enabled: false
|
||||||
|
host: ""
|
||||||
|
annotations: {}
|
||||||
|
# -- Sync API Paths are a little tricky since they require regular expressions. Therefore
|
||||||
|
# the paths will depend on the ingress controller used. See values.yaml for nginx and traefik.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
syncapi_paths: []
|
||||||
|
# For Traefik uncomment these lines
|
||||||
|
# - /_matrix/client/{version:.*?}/rooms/{roomid:.*?}/messages
|
||||||
|
# - /_matrix/client/{version:.*?}/keys/changes
|
||||||
|
# - /_matrix/client/{version:.*?}/user/{userid:.*?}/filter/{filterid:.*?}
|
||||||
|
# - /_matrix/client/{version:.*?}/user/{userid:.*?}/filter
|
||||||
|
# - /_matrix/client/{version:.*?}/sync
|
||||||
|
#
|
||||||
|
# For nginx uncomment these lines and add the annotations here:
|
||||||
|
# https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#use-regex
|
||||||
|
# - /_matrix/client/.*?/(sync|user/.*?/filter/?.*|keys/changes|rooms/.*?/messages)$
|
||||||
|
|
||||||
|
# -- Configure database connection parameters.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
database:
|
||||||
|
max_open_conns: 100
|
||||||
|
max_idle_conns: 2
|
||||||
|
conn_max_lifetime: -1
|
||||||
|
# -- Configure the global settings for dendrite.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
global:
|
||||||
|
# -- (required) Configure the server name for the dendrite instance.
|
||||||
|
server_name: localhost
|
||||||
|
# -- Configure the key_validity period
|
||||||
|
key_validity_period: 168h0m0s
|
||||||
|
# -- Congigure the in-memory caches
|
||||||
|
cache:
|
||||||
|
# -- Configure the maximum estimated cache size (not a hard limit)
|
||||||
|
max_size_estimated: "1gb"
|
||||||
|
# -- The maximum amount of time that a cache entry can live for in memory
|
||||||
|
max_age: "1h"
|
||||||
|
# -- Configure the well-known server name and optional port
|
||||||
|
well_known_server_name: ""
|
||||||
|
# -- Configure the well-known client name and optional port
|
||||||
|
well_known_client_name: ""
|
||||||
|
# -- Configure the list of domains the server will trust as identity servers
|
||||||
|
trusted_third_party_id_servers:
|
||||||
|
- matrix.org
|
||||||
|
- vector.im
|
||||||
|
# -- Disables federation
|
||||||
|
disable_federation: false
|
||||||
|
# -- Configure handling of presence events
|
||||||
|
presence:
|
||||||
|
# -- Whether inbound presence events are allowed, e.g. receiving presence events from other servers
|
||||||
|
enable_inbound: false
|
||||||
|
# -- Whether outbound presence events are allowed, e.g. sending presence events to other servers
|
||||||
|
enable_outbound: false
|
||||||
|
|
||||||
|
# -- Server notices allows server admins to send messages to all users.
|
||||||
|
server_notices:
|
||||||
|
enabled: false
|
||||||
|
# -- The server localpart to be used when sending notices, ensure this is not yet taken
|
||||||
|
local_part: "_server"
|
||||||
|
# -- The displayname to be used when sending notices
|
||||||
|
display_name: "Server alerts"
|
||||||
|
# -- The mxid of the avatar to use
|
||||||
|
avatar_url: ""
|
||||||
|
# -- The roomname to be used when creating messages
|
||||||
|
room_name: "Server Alerts"
|
||||||
|
# -- Configure prometheus metrics collection for dendrite.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
metrics:
|
||||||
|
# -- If enabled, metrics collection will be enabled
|
||||||
|
# @default -- See values.yaml
|
||||||
|
enabled: false
|
||||||
|
basic_auth:
|
||||||
|
username: metrics
|
||||||
|
password: metrics
|
||||||
|
# -- Configure DNS cache.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
dns_cache:
|
||||||
|
# -- If enabled, dns cache will be enabled.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
enabled: false
|
||||||
|
cache_size: 256
|
||||||
|
cache_lifetime: "5m"
|
||||||
|
# -- Configure experimental MSC's
|
||||||
|
mscs: []
|
||||||
|
|
||||||
|
# -- Configure opentracing.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
tracing:
|
||||||
|
enabled: false
|
||||||
|
jaeger:
|
||||||
|
serviceName: ""
|
||||||
|
disabled: false
|
||||||
|
rpc_metrics: false
|
||||||
|
tags: []
|
||||||
|
sampler: null
|
||||||
|
reporter: null
|
||||||
|
headers: null
|
||||||
|
baggage_restrictions: null
|
||||||
|
throttler: null
|
||||||
|
|
||||||
|
# -- Configure logging.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
logging:
|
||||||
|
- type: file
|
||||||
|
level: info
|
||||||
|
params:
|
||||||
|
path: /var/log/dendrite
|
||||||
|
|
||||||
|
postgresql:
|
||||||
|
# -- Enable and configure postgres as the database for dendrite.
|
||||||
|
# @default -- See value.yaml
|
||||||
|
enabled: false
|
||||||
|
image:
|
||||||
|
repository: bitnami/postgresql
|
||||||
|
tag: "14.4.0"
|
||||||
|
auth:
|
||||||
|
username: dendrite
|
||||||
|
password: changeme
|
||||||
|
database: dendrite
|
||||||
|
primary:
|
||||||
|
persistence:
|
||||||
|
enabled: false
|
||||||
|
initdb:
|
||||||
|
scriptsConfigMap: "dendrite-postgresql-init-scripts"
|
||||||
|
|
||||||
|
nats:
|
||||||
|
# -- Enable and configure NATS for dendrite. Can be disabled for monolith
|
||||||
|
# deployments - an internal NATS server will be used in its place.
|
||||||
|
# @default -- See value.yaml
|
||||||
|
enabled: false
|
||||||
|
nats:
|
||||||
|
image: nats:2.7.1-alpine
|
||||||
|
jetstream:
|
||||||
|
enabled: true
|
@ -19,5 +19,8 @@
|
|||||||
.project
|
.project
|
||||||
.idea/
|
.idea/
|
||||||
*.tmproj
|
*.tmproj
|
||||||
|
.vscode/
|
||||||
# OWNERS file for Kubernetes
|
# OWNERS file for Kubernetes
|
||||||
OWNERS
|
OWNERS
|
||||||
|
# helm-docs templates
|
||||||
|
*.gotmpl
|
24
charts/incubator/handbrake/Chart.yaml
Normal file
24
charts/incubator/handbrake/Chart.yaml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: v1.24.2
|
||||||
|
description: handbrake helm package
|
||||||
|
name: handbrake
|
||||||
|
version: 0.1.2
|
||||||
|
kubeVersion: ">=1.16.0-0"
|
||||||
|
keywords:
|
||||||
|
- handbrake
|
||||||
|
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/handbrake
|
||||||
|
icon: https://handbrake.org/icon
|
||||||
|
sources:
|
||||||
|
- https://hub.docker.com/r/jlesage/handbrake
|
||||||
|
maintainers:
|
||||||
|
- name: lucacalcaterra
|
||||||
|
email: calcaterra.luca@gmail.com
|
||||||
|
dependencies:
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
annotations:
|
||||||
|
artifacthub.io/changes: |-
|
||||||
|
- kind: changed
|
||||||
|
description: Upgraded `common` chart dependency to version 4.5.2
|
115
charts/incubator/handbrake/README.md
Normal file
115
charts/incubator/handbrake/README.md
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
# handbrake
|
||||||
|
|
||||||
|
 
|
||||||
|
|
||||||
|
handbrake helm package
|
||||||
|
|
||||||
|
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/k8s-at-home/charts/issues/new/choose)**
|
||||||
|
|
||||||
|
## Source Code
|
||||||
|
|
||||||
|
* <https://hub.docker.com/r/jlesage/handbrake>
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
Kubernetes: `>=1.16.0-0`
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
| Repository | Name | Version |
|
||||||
|
|------------|------|---------|
|
||||||
|
| https://library-charts.k8s-at-home.com | common | 4.5.2 |
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm repo add k8s-at-home https://k8s-at-home.com/charts/
|
||||||
|
helm repo update
|
||||||
|
helm install handbrake k8s-at-home/handbrake
|
||||||
|
```
|
||||||
|
|
||||||
|
## Installing the Chart
|
||||||
|
|
||||||
|
To install the chart with the release name `handbrake`
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install handbrake k8s-at-home/handbrake
|
||||||
|
```
|
||||||
|
|
||||||
|
## Uninstalling the Chart
|
||||||
|
|
||||||
|
To uninstall the `handbrake` deployment
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm uninstall handbrake
|
||||||
|
```
|
||||||
|
|
||||||
|
The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
|
||||||
|
Other values may be used from the [values.yaml](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).
|
||||||
|
|
||||||
|
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install handbrake \
|
||||||
|
--set env.TZ="America/New York" \
|
||||||
|
k8s-at-home/handbrake
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.
|
||||||
|
|
||||||
|
```console
|
||||||
|
helm install handbrake k8s-at-home/handbrake -f values.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Custom configuration
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| env | object | See below | environment variables. See more environment variables in the [handbrake documentation](https://handbrake.org/docs). |
|
||||||
|
| env.TZ | string | `"UTC"` | Set the container timezone |
|
||||||
|
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||||
|
| image.repository | string | `"jlesage/handbrake"` | image repository |
|
||||||
|
| image.tag | string | chart.appVersion | image tag |
|
||||||
|
| ingress.main | object | See values.yaml | Enable and configure ingress settings for the chart under this key. |
|
||||||
|
| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. |
|
||||||
|
| service | object | See values.yaml | Configures service settings for the chart. |
|
||||||
|
|
||||||
|
## Changelog
|
||||||
|
|
||||||
|
### Version 0.1.2
|
||||||
|
|
||||||
|
#### Added
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
#### Changed
|
||||||
|
|
||||||
|
* Upgraded `common` chart dependency to version 4.5.2
|
||||||
|
|
||||||
|
#### Fixed
|
||||||
|
|
||||||
|
N/A
|
||||||
|
|
||||||
|
### Older versions
|
||||||
|
|
||||||
|
A historical overview of changes can be found on [ArtifactHUB](https://artifacthub.io/packages/helm/k8s-at-home/handbrake?modal=changelog)
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
|
||||||
|
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
|
||||||
|
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
|
||||||
|
- Join our [Discord](https://discord.gg/sTMX7Vh) community
|
||||||
|
|
||||||
|
----------------------------------------------
|
||||||
|
Autogenerated from chart metadata using [helm-docs v0.1.1](https://github.com/k8s-at-home/helm-docs/releases/v0.1.1)
|
51
charts/incubator/handbrake/values.yaml
Normal file
51
charts/incubator/handbrake/values.yaml
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
#
|
||||||
|
# IMPORTANT NOTE
|
||||||
|
#
|
||||||
|
# This chart inherits from our common library chart. You can check the default values/options here:
|
||||||
|
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
|
||||||
|
#
|
||||||
|
|
||||||
|
image:
|
||||||
|
# -- image repository
|
||||||
|
repository: jlesage/handbrake
|
||||||
|
# -- image tag
|
||||||
|
# @default -- chart.appVersion
|
||||||
|
tag:
|
||||||
|
# -- image pull policy
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
# -- environment variables. See more environment variables in the [handbrake documentation](https://handbrake.org/docs).
|
||||||
|
# @default -- See below
|
||||||
|
env:
|
||||||
|
# -- Set the container timezone
|
||||||
|
TZ: UTC
|
||||||
|
|
||||||
|
# -- Configures service settings for the chart.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
port: 5800
|
||||||
|
vnc:
|
||||||
|
enabled: false
|
||||||
|
port: 5900
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
# -- Enable and configure ingress settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
main:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# -- Configure persistence settings for the chart under this key.
|
||||||
|
# @default -- See values.yaml
|
||||||
|
persistence:
|
||||||
|
config:
|
||||||
|
enabled: false
|
||||||
|
mountPath: "/config"
|
||||||
|
storage:
|
||||||
|
enabled: false
|
||||||
|
mountPath: "/storage"
|
||||||
|
output:
|
||||||
|
enabled: false
|
||||||
|
mountPath: "/output"
|
@ -19,5 +19,8 @@
|
|||||||
.project
|
.project
|
||||||
.idea/
|
.idea/
|
||||||
*.tmproj
|
*.tmproj
|
||||||
|
.vscode/
|
||||||
# OWNERS file for Kubernetes
|
# OWNERS file for Kubernetes
|
||||||
OWNERS
|
OWNERS
|
||||||
|
# helm-docs templates
|
||||||
|
*.gotmpl
|
16
charts/incubator/kah-common-chart/Chart.yaml
Normal file
16
charts/incubator/kah-common-chart/Chart.yaml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v2
|
||||||
|
description: A KaH-common powered chart template. This can be useful for small projects that don't have their own chart.
|
||||||
|
name: kah-common-chart
|
||||||
|
version: 1.2.2
|
||||||
|
maintainers:
|
||||||
|
- name: bjw-s
|
||||||
|
email: me@bjw-s.dev
|
||||||
|
dependencies:
|
||||||
|
- name: common
|
||||||
|
repository: https://library-charts.k8s-at-home.com
|
||||||
|
version: 4.5.2
|
||||||
|
annotations:
|
||||||
|
artifacthub.io/changes: |-
|
||||||
|
- kind: changed
|
||||||
|
description: Upgraded `common` chart dependency to version 4.5.2
|
@ -5,8 +5,5 @@
|
|||||||
{{- define "custom.custom.configuration" -}}
|
{{- define "custom.custom.configuration" -}}
|
||||||
{{ template "custom.custom.configuration.header" . }}
|
{{ template "custom.custom.configuration.header" . }}
|
||||||
|
|
||||||
### Grafana Dashboard
|
N/A
|
||||||
|
|
||||||
You can find an [example grafana dashboard](https://github.com/billimek/prometheus-speedtest-exporter/blob/master/speedtest-exporter.json) as shown in the screenshot above.
|
|
||||||
|
|
||||||
{{- end -}}
|
{{- end -}}
|
2
charts/incubator/kah-common-chart/templates/common.yaml
Normal file
2
charts/incubator/kah-common-chart/templates/common.yaml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
{{ include "common.all" . }}
|
1
charts/incubator/kah-common-chart/values.yaml
Normal file
1
charts/incubator/kah-common-chart/values.yaml
Normal file
@ -0,0 +1 @@
|
|||||||
|
---
|
4
charts/stable/powerdns/.helmignore → charts/incubator/lancache/.helmignore
Executable file → Normal file
4
charts/stable/powerdns/.helmignore → charts/incubator/lancache/.helmignore
Executable file → Normal file
@ -20,3 +20,7 @@
|
|||||||
.idea/
|
.idea/
|
||||||
*.tmproj
|
*.tmproj
|
||||||
.vscode/
|
.vscode/
|
||||||
|
# OWNERS file for Kubernetes
|
||||||
|
OWNERS
|
||||||
|
# helm-docs templates
|
||||||
|
*.gotmpl
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user