blob: 5b40c0e7cf58372cfbacd1d11b7e60bcb93edfc3 [file] [log] [blame]
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +04001input: {
gio9bd87ca2025-04-20 08:05:34 +04002 network: #Network @name(Network)
3 subdomain: string @name(Subdomain)
4 auth: #Auth @name(Authentication)
gio7fbd4ad2024-08-27 10:06:39 +04005 storageSize: string
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +04006}
7
8_domain: "\(input.subdomain).\(input.network.domain)"
gio9bd87ca2025-04-20 08:05:34 +04009url: "https://\(_domain)"
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040010
gio9bd87ca2025-04-20 08:05:34 +040011name: "Pi-hole"
12namespace: "app-pihole"
13readme: "Installs pihole at https://\(_domain)"
Giorgi Lekveishvilief21c132024-01-17 18:57:58 +040014description: "Pi-hole is a Linux network-level advertisement and Internet tracker blocking application which acts as a DNS sinkhole and optionally a DHCP server, intended for use on a private network."
gio8c942d22024-07-17 13:43:02 +040015icon: """
giod2d2df02025-05-03 19:15:17 +040016 <svg width='50px' height='50px' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27.39405994 39.68503937'>
17 <defs>
18 <style>
19 .cls-1 {
20 fill: currentColor;
21 }
22
23 .cls-2 {
24 fill: none;
25 stroke: #3a3a3a;
26 stroke-miterlimit: 10;
27 stroke-width: .98133445px;
28 }
29 </style>
30 </defs>
31 <rect class='cls-2' x='-16.11987996' y='-9.97439025' width='59.63381987' height='59.63381987'/>
32 <path class='cls-1' d='m13.6958581,39.68503937c-.01621089,0-.03242178-.00078125-.04863267-.0015625l-.11503872-.00937497c-.16074171-.00390624-.32304592-.01249996-.48378764-.02968741-.01210934-.00078125-.02441399-.00234374-.03652333-.00468749-1.49179248-.15312455-2.89628053-.81952884-3.9587774-1.87890072l-7.1394321-7.14294771C.69648232,29.39991341-.00039062,27.71476212.00019531,25.9928922v-.01484371c-.00019531-.01562495-.00019531-.03046866-.00019531-.04531237.00019531-.75312278.14335895-1.49608934.42597531-2.20233726.31581938-.87890366.84413814-1.71171371,1.51952677-2.38671172l7.14704926-7.14294771c.48613138-.48515482,1.03534851-.88515364,1.62929208-1.19140274C3.81366064,11.92027739,1.05409846,5.75779554.80214608.68437298c-.00058594-.01093747-.00078125-.02187494-.00078125-.0328124.00019531-.16718701.06425762-.32734279.17968697-.44921743.12324182-.12890587.29394445-.20234315.47265486-.20234315,6.407403,0,10.65289831,3.19686558,12.00894901,8.89059882,2.40448511-5.62810842,7.81462542-4.90154806,7.87712524-4.89373559.30351473.04531237.53456874.29609288.55488118.60234198.01269528.19140569.01894526.38124888.01894526.56952957.00019531,1.88436945-.63163876,3.58748943-1.84374457,4.95545416-1.04277037,1.17655903-2.48260988,2.05780644-4.13436282,2.56092996.90038797.32656154,1.72226055.84687251,2.39901637,1.52108927l7.14294771,7.14685395c1.22050422,1.2218714,1.8982366,2.84061663,1.9130803,4.56483031.00234374.02265618.00351561.04453112.00351561.0671873,0,.02343743-.00136718.04765611-.00410155.07109354l-.00800779.15312455c-.00937497.30859284-.04335925.63202939-.10058564.94843471l-.02070306.10781218c-.25214769,1.27812124-.87011462,2.43749282-1.78769005,3.35702136l-7.14724458,7.14138522c-1.19374648,1.19218399-2.83612446,1.88593195-4.52186168,1.91171312-.03535146.00624998-.07148416.00937497-.10800749.00937497Zm-.00468749-1.31327738c.00507811-.00546873.00937497-.00078125.01386715,0,1.37714438,0,2.72440604-.55781086,3.69842661-1.53124549l7.14665864-7.14060397c.73398221-.73515408,1.22851201-1.66327635,1.4298786-2.68358585l.01874994-.09687471c.04433581-.24687427.07167948-.50624851.07949195-.763279l.00546873-.11015593v-.00234374c0-.00859372.00097656-.02656242.00253906-.04687486-.00019531-.00468749-.00019531-.00937497-.00019531-.01406246v-.00859372c-.00039062-1.39687089-.54413902-2.71014827-1.53163611-3.69920786l-7.14158053-7.14529146c-.61738099-.61484194-1.38671467-1.07030935-2.2242122-1.31718362l-.10703093-.03046866c-.43261591-.12421838-.88085678-.18749945-1.33339451-.18749945-.00996091,0-.02968741-.00078125-.04960923-.0015625-1.39081622.00390624-2.6992108.54687339-3.68377821,1.53124549l-7.14685395,7.14216646c-.5404281.54062341-.9630831,1.2070277-1.22245734,1.92733807-.22871026.57187332-.340624,1.15234036-.34081931,1.74530736,0,.01249996.00019531.02421868.00019531.03593739v.01171872c-.00058594,1.38515217.55722492,2.73436695,1.53163611,3.70936408l7.13845554,7.14216646c.85761466.85468498,1.99472069,1.3906209,3.20116245,1.50702681.01425777.0015625.02832023.00312499.04238269.00546873.04140613.00390624.08281226.00703123.12421838.01015622.03066397-.00312499.0623045-.00468749.09355441-.00234374l.10820281.00624998c.03749989.00312499.07480447.00546873.11269498.00624998l.03398427.00078125Zm-1.58065941-26.05773576c0,.05859358-.00234374.11640591-.00703123.17265574.1162106-.02890616.23359306-.05546859.35175678-.07812477-.10859343-.17656198-.24003836-.36718642-.39081916-.57031082.03027335.16484326.04628893.32343655.04609361.47577985Zm8.4613032-7.05935421c-1.50272995,0-5.46775733.58046704-6.61619145,6.52419953,2.09218134-.26718671,3.93651184-1.16484032,5.13787549-2.52030508.97675494-1.1023405,1.49491747-2.47733645,1.51464398-4.00389446h-.03632802ZM2.15331397,1.31874612c.58261547,6.57576188,4.61092392,9.62184666,8.53884204,10.35856324-.68027143-2.00936908-4.21483134-5.63513965-6.5759572-7.69372734-.03574208-.03046866-.06796855-.06562481-.09609347-.10390594-.08496069-.11484341-.1261715-.2539055-.1261715-.39218634,0-.19609317.08222632-.3914051.23808524-.52109222.26621015-.22187435.6845683-.19609317.92070041.05859358.20351503.17109325,4.80408741,4.15155027,7.33845495,7.14216646C11.47340371,4.6531113,7.90075798,1.54921419,2.15331397,1.31874612Zm6.50251991,33.47880765c-.33847557,0-.62382629-.26093673-.64980277-.60234198l-.01269528-.16640576c-.01074216-.14687457-.01562495-.29218664-.01562495-.43437372.00019531-1.51874553.57206863-2.82030419,1.12675449-4.08358172.51972503-1.18280902,1.0105439-2.29999323,1.0105439-3.5312396-.10839812-1.42968329-.6550762-2.62342977-1.57929222-3.40311498-.85624748-.72265412-2.03534557-1.06562186-3.2396389-.95624718-.35839738.04921861-.6748027-.22656183-.71093541-.58359203-.00234374-.02187494-.0033203-.04453112-.0033203-.06640605-.00019531-.32890528.24824146-.61171695.58261547-.64765434.17089793-.01874994.34687398-.03593739.52988125-.04609361,1.69374501-.12031215,3.12186581.50546726,4.50291643,1.11249672,1.18280902.51952972,2.29999323,1.01015327,3.53182554,1.01015327,3.07577219-.23046807,4.28651081-2.28280578,4.37791679-4.1257691.01738276-.35234271.3144522-.62968565.66347461-.62031067.3521474.00624998.63574032.29140539.6404278.6437481.00039062.02734367.00058594.05468734.00039062.08203101-.00039062,1.51718303-.57011551,2.82030419-1.12128576,4.08045673-.51738129,1.18359026-1.00605172,2.30077447-1.00605172,3.53202085.24804614,3.3429589,2.60526576,4.45936187,4.54471318,4.37889335.34843647-.04218738.65273245.25468675.67675582.60702946.00117187.01484371.0015625.02968741.0015625.04531237.00019531.33281152-.25273363.61562319-.58906077.64843559l-.19433537.01718745c-1.69433095.11484341-3.12264705-.50390477-4.50447892-1.11015298-1.18222308-.51874847-2.29901667-1.00937203-3.53006773-1.00937203-3.03631918.22421809-4.38436209,2.31952442-4.38475271,4.35936216,0,.06328106.00136718.12656213.00390624.19062444.00039062.00859372.00058594.0179687.00058594.02656242.00019531.34374899-.26796796.63124814-.61406069.65156058-.0130859.00078125-.02597649.00078125-.03886707.00078125Zm2.76210124-8.85700516c-.00039062,1.18359026-.33222558,2.21796222-.73398221,3.19842808.79550547-.47031111,1.77733852-.78671643,2.95741316-.87343493h.00703123c1.18925431,0,2.22811844.33515526,3.21268585.73906032-.47382673-.79687265-.79296641-1.78124475-.88007553-2.96561627v-.00859372c.00039062-1.17187155.32441311-2.19764978.71933382-3.16952192-.77753677.44687368-1.74296362.75312278-2.92284295.84140377h-.00742185c-1.19804335,0-2.24315746-.33984275-3.23397485-.74765405.49765478.84140377.79745859,1.84608831.88183334,2.97655373v.00937497Z'/>
33 </svg>"""
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040034
Giorgi Lekveishvili67383962024-03-22 19:27:34 +040035_serviceWebPort: 80
36
gio7fbd4ad2024-08-27 10:06:39 +040037out: {
38 ingress: {
39 pihole: {
gio9bd87ca2025-04-20 08:05:34 +040040 auth: input.auth
41 network: input.network
gio7fbd4ad2024-08-27 10:06:39 +040042 subdomain: input.subdomain
43 service: {
44 name: "pihole-web"
gio24312cc2025-04-20 15:53:15 +040045 port: _serviceWebPort
gio7fbd4ad2024-08-27 10:06:39 +040046 }
gio1de49582024-04-21 08:33:57 +040047 }
Giorgi Lekveishvili67383962024-03-22 19:27:34 +040048 }
Giorgi Lekveishvili67383962024-03-22 19:27:34 +040049
gio7fbd4ad2024-08-27 10:06:39 +040050 images: {
51 pihole: {
52 repository: "pihole"
gio9bd87ca2025-04-20 08:05:34 +040053 name: "pihole"
54 tag: "v5.8.1"
gio7fbd4ad2024-08-27 10:06:39 +040055 pullPolicy: "IfNotPresent"
56 }
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040057 }
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040058
gio7fbd4ad2024-08-27 10:06:39 +040059 charts: {
60 pihole: {
gio9bd87ca2025-04-20 08:05:34 +040061 kind: "GitRepository"
gio7fbd4ad2024-08-27 10:06:39 +040062 address: "https://code.v1.dodo.cloud/helm-charts"
gio9bd87ca2025-04-20 08:05:34 +040063 branch: "main"
64 path: "charts/pihole"
gio7fbd4ad2024-08-27 10:06:39 +040065 }
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040066 }
Giorgi Lekveishvili0ba5e402024-03-20 15:56:30 +040067
giofc441e32024-11-11 16:26:14 +040068 volume: data: size: input.storageSize
gio7fbd4ad2024-08-27 10:06:39 +040069
70 helm: {
71 pihole: {
72 chart: charts.pihole
gio9bd87ca2025-04-20 08:05:34 +040073 info: "Installing Pi-hole server"
gio7fbd4ad2024-08-27 10:06:39 +040074 values: {
75 fullnameOverride: "pihole"
76 persistentVolumeClaim: {
gio9bd87ca2025-04-20 08:05:34 +040077 enabled: true
giofc441e32024-11-11 16:26:14 +040078 existingClaim: volume.data.name
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040079 }
gio7fbd4ad2024-08-27 10:06:39 +040080 admin: {
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040081 enabled: false
82 }
gio7fbd4ad2024-08-27 10:06:39 +040083 ingress: {
84 enabled: false
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040085 }
gio7fbd4ad2024-08-27 10:06:39 +040086 serviceDhcp: {
87 enabled: false
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040088 }
gio7fbd4ad2024-08-27 10:06:39 +040089 serviceDns: {
90 type: "ClusterIP"
91 }
92 serviceWeb: {
93 type: "ClusterIP"
94 http: {
95 enabled: true
gio9bd87ca2025-04-20 08:05:34 +040096 port: _serviceWebPort
gio7fbd4ad2024-08-27 10:06:39 +040097 }
98 https: {
99 enabled: false
100 }
101 }
102 virtualHost: _domain
103 resources: {
104 requests: {
gio9bd87ca2025-04-20 08:05:34 +0400105 cpu: "250m"
gio7fbd4ad2024-08-27 10:06:39 +0400106 memory: "100M"
107 }
108 limits: {
gio9bd87ca2025-04-20 08:05:34 +0400109 cpu: "500m"
gio7fbd4ad2024-08-27 10:06:39 +0400110 memory: "250M"
111 }
112 }
113 image: {
114 repository: images.pihole.fullName
gio9bd87ca2025-04-20 08:05:34 +0400115 tag: images.pihole.tag
gio7fbd4ad2024-08-27 10:06:39 +0400116 pullPolicy: images.pihole.pullPolicy
117 }
Giorgi Lekveishvili0ba5e402024-03-20 15:56:30 +0400118 }
119 }
120 }
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +0400121}