From ded7a44259bcf06e8d4ac17c1118f04745518227 Mon Sep 17 00:00:00 2001 From: TrueCharts-Bot Date: Fri, 11 Nov 2022 18:56:27 +0000 Subject: [PATCH] Commit new Chart releases for TrueCharts Signed-off-by: TrueCharts-Bot --- stable/jackett/12.0.6/CHANGELOG.md | 99 + stable/jackett/12.0.6/Chart.lock | 6 + stable/jackett/12.0.6/Chart.yaml | 31 + stable/jackett/12.0.6/README.md | 106 + stable/jackett/12.0.6/app-changelog.md | 9 + stable/jackett/12.0.6/app-readme.md | 8 + .../jackett/12.0.6/charts/common-10.9.4.tgz | Bin 0 -> 49391 bytes stable/jackett/12.0.6/ix_values.yaml | 33 + stable/jackett/12.0.6/questions.yaml | 1829 +++++++++++++++++ stable/jackett/12.0.6/templates/common.yaml | 1 + stable/jackett/12.0.6/values.yaml | 0 stable/prometheus/6.0.0/Chart.lock | 2 +- stable/prometheus/6.0.0/app-changelog.md | 3 +- stable/prometheus/6.0.0/questions.yaml | 136 ++ 14 files changed, 2261 insertions(+), 2 deletions(-) create mode 100644 stable/jackett/12.0.6/CHANGELOG.md create mode 100644 stable/jackett/12.0.6/Chart.lock create mode 100644 stable/jackett/12.0.6/Chart.yaml create mode 100644 stable/jackett/12.0.6/README.md create mode 100644 stable/jackett/12.0.6/app-changelog.md create mode 100644 stable/jackett/12.0.6/app-readme.md create mode 100644 stable/jackett/12.0.6/charts/common-10.9.4.tgz create mode 100644 stable/jackett/12.0.6/ix_values.yaml create mode 100644 stable/jackett/12.0.6/questions.yaml create mode 100644 stable/jackett/12.0.6/templates/common.yaml create mode 100644 stable/jackett/12.0.6/values.yaml diff --git a/stable/jackett/12.0.6/CHANGELOG.md b/stable/jackett/12.0.6/CHANGELOG.md new file mode 100644 index 00000000000..6ff49b22c08 --- /dev/null +++ b/stable/jackett/12.0.6/CHANGELOG.md @@ -0,0 +1,99 @@ +**Important:** +*for the complete changelog, please refer to the website* + + + + +## [jackett-12.0.0](https://github.com/truecharts/charts/compare/jackett-11.1.0...jackett-12.0.0) (2022-11-10) + +### Chore + +- Major Change to GUI + + + + +## [jackett-11.1.0](https://github.com/truecharts/charts/compare/jackett-11.0.130...jackett-11.1.0) (2022-11-10) + + + + +## [jackett-11.0.130](https://github.com/truecharts/charts/compare/jackett-11.0.125...jackett-11.0.130) (2022-11-10) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - update helm general non-major ([#4342](https://github.com/truecharts/charts/issues/4342)) + - update docker general non-major ([#4343](https://github.com/truecharts/charts/issues/4343)) + - update helm general non-major ([#4349](https://github.com/truecharts/charts/issues/4349)) + - update docker general non-major ([#4355](https://github.com/truecharts/charts/issues/4355)) + - update helm general non-major ([#4329](https://github.com/truecharts/charts/issues/4329)) + - update docker general non-major ([#4366](https://github.com/truecharts/charts/issues/4366)) + + + + +## [jackett-11.0.129](https://github.com/truecharts/charts/compare/jackett-11.0.125...jackett-11.0.129) (2022-11-09) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - update docker general non-major ([#4355](https://github.com/truecharts/charts/issues/4355)) + - update helm general non-major ([#4342](https://github.com/truecharts/charts/issues/4342)) + - update docker general non-major ([#4343](https://github.com/truecharts/charts/issues/4343)) + - update helm general non-major ([#4349](https://github.com/truecharts/charts/issues/4349)) + - update helm general non-major ([#4329](https://github.com/truecharts/charts/issues/4329)) + + + + +## [jackett-11.0.128](https://github.com/truecharts/charts/compare/jackett-11.0.125...jackett-11.0.128) (2022-11-08) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - update helm general non-major ([#4342](https://github.com/truecharts/charts/issues/4342)) + - update docker general non-major ([#4343](https://github.com/truecharts/charts/issues/4343)) + - update helm general non-major ([#4349](https://github.com/truecharts/charts/issues/4349)) + - update helm general non-major ([#4329](https://github.com/truecharts/charts/issues/4329)) + + + + +## [jackett-11.0.127](https://github.com/truecharts/charts/compare/jackett-11.0.125...jackett-11.0.127) (2022-11-08) + +### Chore + +- Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - Auto-update chart README [skip ci] + - update helm general non-major ([#4342](https://github.com/truecharts/charts/issues/4342)) + - update docker general non-major ([#4343](https://github.com/truecharts/charts/issues/4343)) + - update helm general non-major ([#4329](https://github.com/truecharts/charts/issues/4329)) + + + + +## [jackett-11.0.127](https://github.com/truecharts/charts/compare/jackett-11.0.125...jackett-11.0.127) (2022-11-08) + +### Chore diff --git a/stable/jackett/12.0.6/Chart.lock b/stable/jackett/12.0.6/Chart.lock new file mode 100644 index 00000000000..77e99aaf2de --- /dev/null +++ b/stable/jackett/12.0.6/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: https://library-charts.truecharts.org + version: 10.9.4 +digest: sha256:dd59313a76f2c5f5a06d534a4546c219da44a0ca084f8f889ef4a53f7bec54f5 +generated: "2022-11-11T18:55:54.686005969Z" diff --git a/stable/jackett/12.0.6/Chart.yaml b/stable/jackett/12.0.6/Chart.yaml new file mode 100644 index 00000000000..57a0f0ce288 --- /dev/null +++ b/stable/jackett/12.0.6/Chart.yaml @@ -0,0 +1,31 @@ +apiVersion: v2 +appVersion: "0.20.2225" +dependencies: + - name: common + repository: https://library-charts.truecharts.org + version: 10.9.4 +deprecated: false +description: API Support for your favorite torrent trackers. +home: https://truecharts.org/docs/charts/stable/jackett +icon: https://truecharts.org/img/hotlink-ok/chart-icons/jackett.png +keywords: + - jackett + - torrent + - usenet +kubeVersion: ">=1.16.0-0" +maintainers: + - email: info@truecharts.org + name: TrueCharts + url: https://truecharts.org +name: jackett +sources: + - https://github.com/truecharts/charts/tree/master/charts/stable/jackett + - https://github.com/Jackett/Jackett +type: application +version: 12.0.6 +annotations: + truecharts.org/catagories: | + - media + - test + truecharts.org/SCALE-support: "true" + truecharts.org/grade: U diff --git a/stable/jackett/12.0.6/README.md b/stable/jackett/12.0.6/README.md new file mode 100644 index 00000000000..0dcb4b7fc0d --- /dev/null +++ b/stable/jackett/12.0.6/README.md @@ -0,0 +1,106 @@ +# jackett + +API Support for your favorite torrent trackers. + +TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE. + +This readme is just an automatically generated general guide on installing our Helm Charts and Apps. +For more information, please click here: [jackett](https://truecharts.org/docs/charts/stable/jackett) + +**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)** + +## Source Code + +* +* + +## Requirements + +Kubernetes: `>=1.16.0-0` + +## Dependencies + +| Repository | Name | Version | +|------------|------|---------| +| https://library-charts.truecharts.org | common | 10.9.4 | + +## Installing the Chart + +### TrueNAS SCALE + +To install this Chart on TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Installing-an-App). + +### Helm + +To install the chart with the release name `jackett` + +```console +helm repo add TrueCharts https://charts.truecharts.org +helm repo update +helm install jackett TrueCharts/jackett +``` + +## Uninstall + +### TrueNAS SCALE + +**Upgrading, Rolling Back and Uninstalling the Chart** + +To upgrade, rollback or delete this Chart from TrueNAS SCALE check our [Quick-Start Guide](https://truecharts.org/docs/manual/SCALE%20Apps/Upgrade-rollback-delete-an-App). + +### Helm + +To uninstall the `jackett` deployment + +```console +helm uninstall jackett +``` + +## Configuration + +### Helm + +#### Available Settings + +Read through the values.yaml file. It has several commented out suggested values. +Other values may be used from the [values.yaml](https://github.com/truecharts/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/truecharts/library-charts/tree/main/charts/common). + +#### Configure using the command line + +Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. + +```console +helm install jackett \ + --set env.TZ="America/New York" \ + TrueCharts/jackett +``` + +#### Configure using a yaml file + +Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. + +```console +helm install jackett TrueCharts/jackett -f values.yaml +``` + +#### Connecting to other charts + +If you need to connect this Chart to other Charts on TrueNAS SCALE, please refer to our [Linking Charts Internally](https://truecharts.org/docs/manual/SCALE%20Apps/linking-apps) quick-start guide. + +## Support + +- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/docs/manual/SCALE%20Apps/Important-MUST-READ). +- See the [Website](https://truecharts.org) +- Check our [Discord](https://discord.gg/tVsPTHWTtr) +- Open a [issue](https://github.com/truecharts/apps/issues/new/choose) + +--- + +## Sponsor TrueCharts + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can! + +--- + +All Rights Reserved - The TrueCharts Project diff --git a/stable/jackett/12.0.6/app-changelog.md b/stable/jackett/12.0.6/app-changelog.md new file mode 100644 index 00000000000..fb7649e7f9e --- /dev/null +++ b/stable/jackett/12.0.6/app-changelog.md @@ -0,0 +1,9 @@ + + +## [jackett-12.0.6](https://github.com/truecharts/charts/compare/jackett-12.0.5...jackett-12.0.6) (2022-11-11) + +### Feat + +- readd ingressList to all Apps that already have Ingress itself + + \ No newline at end of file diff --git a/stable/jackett/12.0.6/app-readme.md b/stable/jackett/12.0.6/app-readme.md new file mode 100644 index 00000000000..94165e2dadb --- /dev/null +++ b/stable/jackett/12.0.6/app-readme.md @@ -0,0 +1,8 @@ +API Support for your favorite torrent trackers. + +This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/docs/charts/stable/jackett](https://truecharts.org/docs/charts/stable/jackett) + +--- + +TrueCharts can only exist due to the incredible effort of our staff. +Please consider making a [donation](https://truecharts.org/docs/about/sponsor) or contributing back to the project any way you can! diff --git a/stable/jackett/12.0.6/charts/common-10.9.4.tgz b/stable/jackett/12.0.6/charts/common-10.9.4.tgz new file mode 100644 index 0000000000000000000000000000000000000000..aa605d254d8f773be0b3d1710714b66cd09d80d4 GIT binary patch literal 49391 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

)4Skc|ql53zCkJM#*h-Ipy z6F^4&q(B*OAoaQ_=q((?g*7U-PO@E!L35gu!5sTKe26KHvlJK;1Z=$*i=rxPu}X2W z(-*k$J%H4rXo7GUQm)KuOlX7xHAeGGAhHpdc7pN!;5L-jEV~HF_D7vy4B`|FQ}R17 zB-o&w!+%T9TCq?yJ_lh894jyo_(H}qnCe;?8YIQcFp_l0oW)LPx0MXtUKWpWT#3P* z`ZaQTCIL)&m1RvL*tQ_^T-Q3$Zv7-iCyK!eU3%i9VK7c`1xld$Iu*E==aw|WafI@p zLbpGm{aJ^{Vzg9@H$a(H`QletY#lNlDbNDCLEc)R+&WzNpSI}6ogH(ktMG&Y{|J?B ztzjn}7!s2E%*axzKHS`DAm}=iW6NMifv{atO{4*chbIA%lIwn;E+B6Tc7AVlfd#Cr;sClN_R{EAB}p%R)(6GB)v zOL8ZFcAYHY{|IF5(LJoK!}EL|xei*HPzE^_9cX=HYW<7xi*6|6m=89{gX@!fdbbnj zn5XZKMqF#zkbVGbY#^&{^SFwE?f%sp9H(sTLi1iV=qm9)LQtHBf|IrTy^{iFEnFEL zG?&Z49kR1r64)?R3T3Kmm_)m|TRj+a;r?P;20D|Jm|5xG*i#qrMh1mrjXE`F4x2nt z5o(V`>ErTHgt?7~bacb-f0M%KDDh>clN1~Q^o;k@DxHQM$CEEfA@HR};9E7G-tv0_ zVYR|HBQq|t9E>Z(JIIu?PR)l0Ufp53d{X0KB6wTE)ZY?99>Y%k- zl7~30`4lipQaphrYpYITS+eX#yya-eF`G3sZ&Kz-{W}GD-gCiY?wN{2j8p`pOMj0cMjnk9Cv3 zZR369iIob&qj+%ncj@!TVJzGX--sx8w3Qn}Q~SIpBBV+beAysB=SSF_#y;G*E!*XY zun_xf8|lwdU}107lr!6BDA{C(*TiHvL;QDpxBbr*oLMX8o(V1!hK`~SgnlijfSOS% zvX4O>qvQfOKPQxTUHi9f^LPm*xpP&fyw6CV=|JEm>V|H(rBqe-{M+UM#=Fx&(OXfx z3fg|vJf1+-K;s6z8at6o%S7$tvBNZx+V%+5XqmsVs!dI%s;fp)!{$($cfg*oqS6MV$m25I%A&x?W?n-r(Moi#r{2!W(dYqcws^WH zHjaVNC;vu)BSBOCU2?%LQ*BCc=|9cII#%Jcy11jiprSmR{H&d4(Q5@_1_ffMud6td zq$Hu^=D_o#;?~Hc7UgR}#)#G==Ex%*4cA66C(}dpVN~iCPb@$}HId;!evv`JdRN|f zTm93x_zC4Ixv9Oie)?m3`=e-Xk(qD=iZV#>~mIj`7T#THlNIY#89lFP(87{R42 zyp%QTL$3-3T~kg1XF{PLhkUNHh5^LZcQAn=`AYt%lhrwmDbTo*(aCcLWNUKCI&jDM zmFNt&D5CAR)n~DA<)XEUfgJ+dV6?mtVj%~E%FF(ZBf$@%Iz&)B3_J4V$8^8BvgC-K z<`yLXsKy5hPhv&6a^upWruU3-ru+zF(@~#KUQ2-0tO=-PO5AD2MHCta`B5t)$XsQE zTuMVRGGEx^VKpo>;qd=jm2-cnNmWe3jCZV}^VGGNImWubJ$Iu?7{DMINM}J%)F}Jm zpw*wLZD3lgYnTg$WqGJ<5i3G-grKSS(OTbu@HujpE%$`N8NuVD-893qDuT^g$VH@T z2&atu5er;eamz`e6}l>DurR|vk|=M`CzTLXE~z)G^1YN?OK()jd`URcVJ4ZB}7GRwE_hG)5hq z=!dvu^nu4Q4UcI*@?(W{FXVr_EyAiK{q5z#+Q3Fw(D;rs_>}9XATApHathCaVh{pt&OH&C0el=>dH_ zKF{WB(MZ1Wjo+bPAGVMyx~NF>I@p(G8$35QZ-vRFMAf60Z18wbeqH6gy0fk6E+)wL z?Ow>+`M5HW?1t-S(=4VV#BA1s%IoP;{^(s(s_m-0E%BGn2j#ppJfl zjHJb<@fo$fsN_}F%s-TAWMes;dqzj!-1gL1lM2fS(E}2@OjnCG{PE#fm6|DStt!SB zFUKyPG=vBN*`Y!zjzvGM+gF#p8w+x!uBxO($X{d$TF+HdF8l)~0L1`35HdTxj zgZqRKcHktRwro9{Fv)=i+zt&1EEas)29>caF{iKf5LpzpJhGrs|Lty@A}$$Qj?}S^ zKAm?x1(Xq71Wl1Pk^RVYs{#2L9*fQdpGk+w=i`lXcKSmpM7>KSPCT=5e45d7x~MUqBe-J$m&YI{64_{L8rO*a0k>^< z=*D%opbI<<3At`r{W*65EcO(GKtP8wCm7B-Dqx76a_?$fMtBa?Hi;zTN+|fZjaeS! zTfa#&U~=k-G>{WoiaMsk#H=zRrn?7BT@6FRXA4@qzjiwWe&{Y8W=4q8txw>p-v6Pd z%zE;Xe+SHXVlX(CF#Zd%D#4c82&CQmJl~Ewa+R~j1k6MIj`Gu*K53p58GXp_;gckQ zLuNR3AXC3H7>M|zXP8j&l^l32dCzh$6ZQzV5eR5W8x3v&d3l;Ru&5s6Z~k$`fhKlW zOQeB6q&ft#;w%*h_GtQO;d}`Vn+rKMfWxn7fKdZN581~l=q4F5ju=@WvISYpIL)4M zXWt>s(YeTy$k^Q7me-S{TEZgvPD>Z+?a|ee3_}vQ&S4{;X_T8RmEnM5ZpYikN+03t zLC*?UVic{56kaKJL}pzY2V*X!cfux;g|R_9xVk@EE3>+O2ebNH@h=knV%sw_alUMr zg4x7FS?Rpg3D?0W!lbNpE64YJ8muO|jTBCY%C#6}WAsHqretb%uY3xdOG+p`%T80C z%RFRyVw7+}cXa1tpR%>PbrErlqZA>e?0;MsFJ0!6wpI-QBzTD5{d+*Vj%GaKF&VM9 z6#ZDQFnx(-+|F52cvn%gT^O=;N@HZ@V*0`Yu@fpqil+L#Z4*oBU9deyDB5DPJ*pmG zuvU;cS(L-eY6NUBt5RO<%nJKCYMe#E$}E!W$gyB~ zgIvaO&fpO&o*Q6R_u8Y4lU3;f7XA@%h%i|E7cvGIc`i_?%C)`)-Kb5JI2{s z%NxIILJGTDFMWQm8J2LQmlv;jHr?`L$(9Wck2~`OM?0c1>^bt`&nN_+xw@m!%^Am; zCy(=G$cHVAJMYVt7blOiXv)9*D~9`pey79BBhFRt;|V7;bH^RMJ*cN%G#$m;5<2aZOL}n73s$X|^^RiClJ8!T3-;5IPrK-!AT(y-&8&I!8X9=?84K2QS&yJL zn28|XPX~hM)xU~6a5rw+5Km<1xt;vTb2Gt@(W2EQEt?XEkkGI#XEnNrkyMGM-hf1i zN{0>$E9*o0&srDSbWgJl-^!RG)hp&|kz|n+o&SH>1I$5;3<4%6T4E zc4H42vC1H+mr)W1qx(saF*BkGatah-4xCe!-XS~*;?FJ9{2SE_OQPGBd3j`CU{$|v z*4+cN4d(&9lNZ_xCE>`T2L~D;5OgriC6sK)qr=c;csiY4jOxIa3+LAaCHc*!i?BzR zlSel)IBrZ3qkutLhplG)hU;Vbfzhk~>W*VP$dvnO8XBf0@u%&N8f3nm_T=40ChVio zAFLhJ$>6j9mmQA;IdJEto-(C(KMbwxL}Ew;hhoHp)GpF)MZuN{53OYXHAdw>r^nkM z_wcj3vATT>Xx5o2dUg_4GboEu(=qZ36XbP$7WZR9W96R?{4?2l;#F^*fREKKkfm$j z5tJ4VH%l79sdjuaoYeWTGpKoNy9a%5TtE{XxWq?Otp)W*M+tQNk9(ak(+TNkGrx(V%*$WVkd64l?)Opa`!0|1cCb+=;)@nTIS;1N9S_{gA^))b7)t9sf&{VPhPa5!6PeKI| zM(6Tfh?D$3{eV|A4R;!BmH(Z2YL)yx3iy<1GWTUP`Hr0lY9ZhnDx?$3-jV24CrpZt z5ni=^R3h|~VZcLD;?YVUyA(ano;!r6B*r$OEgwl78>R0xNaMj-sr#7YSf`5$Oo44N z+*b;w;Ep3IPDpmbgOnvTywO7}9!O!USVWvgd-wYLYM_~D=U2J9(0)Lbtmfv<%Zy>< z4TLiS3qMA%ZRe@WDBW>8@({G+Q73#fd9DT2FdOO_H$GaLNp(`T5V%IF7B{1QR4orZ zgM?sGfWLkCEYX!uTo2Ikks1sVu|Hke8cQ8GSBeyvx?)+RH{N&58fdK zs^}EUX!XB>FKUXA?L0`l$RMD;0v<%^$TM<@gPNhyiHEqWA|_h;_G+vLs1$H_g1;Ye zrYWpyiTFXgnv-@pqe3j+@z^Qkk+0OcNjLG)mwSF?Xi0SCJ+OEAb>#HnyHAJ;0YEHS zX;sW27xMr_%|SRik}#Gg=1%Qvp0SQTr|^fWRIJK$nfOr>D^KZ33F*e}=&)HCEW0-z z|MK;R+N=VkEw+6KuU07UYx7-Qv~~z$F-{L=C?1G#lZzK_L0zc|lMcQ|x{CcMYmIs1 zsGJaWI%dfvV(*Hr*~5sBz0Q7J)+I(46eq|2tgiUs8kWzZb7@tP2W!5!I?p>uT~Khp zH?dT<&B@?DLN8Wzu(7)eMqZYOn;$fDj+xQq`9v>`rY&0Dl3D#6GJu5jpiAI%$E4|w z=%+tSOV%(HJwExT0~B^<+7q^xOBf;04n%(7^UU;!lhfv`1iD&(`n|-+!`tU_7f?0` z_y)Y{?4rKbJ0&`|trX0HPVt{m61~hCFCMzSMzi$<0q+~Vbi=wu=#Ce50?{dgL2IVX zV|HTE!Oaj&mtzvkjiE1j@GU>Q((8q~ZP5wDC~C+!5fSKJwFkDd5plJ(npfOW^!=u4 zAt-A|T(o_=BY_|oo)q$*F8O9ItfW()d55SV+cYzXvTmm5hLPwb(bvQ(U8#wC@yp!z zvcyF-NLLg_lfGR|ZUCmYs)ThAAbcKUyOah2dV386fP}{B-D`qkV3#?u@B{dM$X(c?N!^W#Svy# z%>T#atSq=D+!a(Y<@y}1*_pJd5O7B$B6t*}&?;~Dgo^j#iVF}{?;?9v!GG7u2kIUC z;Z8!&K9@mPjI9+aYh^w0QUJ{bc3b9U7pqqJt;53)rScB1bsG3gUUI86`IIN0jVHdl z&8Wmj6IEuCg>0vxx)t97qb3g2l&CjJsPN?o zhPja03Kv{2NEjFV=E#lX)$hypC?7U?=E@?nJtk?1{Vu$V__YTW1{-in-(8SXP$Q;B zV3uw?py9s7UG7rvQ#uh$gjhr+KdnrW?1cf6>7*KFGjZ$ZR5Hv?k7N5=DMQcYj80tu z@ofsc^I2eklS)Es*#d+3IN@8qcJxDwi;!2N|*R%=H8 zFVkJ92J&PEV@^%`IfHsg1Zm~&DkO@}D1RZO(Cya6N_sLu;~iMVx{|PKY91cNqRM)fv+jVgOG8=Wn(l% z`o^wD#Q-PU7o^ks6di`xo`u`xmj^Ge%iq#7Eh1Ys!RWLO-aR7=%b@4D@;_@99vqT( ze^ce!)3s^SfEN%!6sq zMeydw^OgE_e`ivj*UbsI3E{gbu+{}gJ+Lt~&GDN3ue+JRIdNoSU;+7HCG?^+LJITe zg711WZqJE7>9@ovxO3*qmc?`l;R|5X%?qJCI2+5)mrX}P2rnLYg`$mf*94<>W7QKn z=~C0jCwkcEB1zp$8?329D z514w>TAUX%vLgL%-X8hFfBj|dDUT+PK9L_}l8DUif_H^ca$Ht42}Dm>I{_|aWPbcM zyr}M6k^OM!m=YL5w(;v0S4%)aggBHeJqY9g$d}Y*5Sozoi1N7EwLq4okn5L6Bp(qu z`9)&HO=3cE7NPP^Fq?RdY!HK+US z`||vzd!dk-C7lIwFdMFPcc0pGfCdi)ZRgR!5JuHK*V2Nh;`!z7Pr~F6Xb)BMuaPbg zIsbS*-FU8MluVhqUr>acFt>{ zJ-pn*wVjkN+SAsBO;{gLE>G4;BYqV{S=m;^)W%>%&6Q}K874^^0LJi^nOv@eHIB*R zr|?}SJGn)1#VoXQ=fr%H5xJ3tQxi?g-;NTOPPPS=sG*GwV!2{gU&dCUgMsJ0GERH{ zYbh{BDuMxjyeuXVOHDq+lv@Ap|6>a7MHUYM}}N$D``x@qk`X_Ekp&)b%*m{IMV)WYNVi&1=Nuo zLG*&Ak5~P9EAbT&^>z3Dd5=$c?ctE8--8Qebk>MDf2^?kfhBbN{y9J9-6qncS-~eq zuOs*~oa`FBbu4qFp5urcb%?m`Owl_tSRc`!L^(dH}L5Z)b6F7Y4kph|(0w6Yk!d&&VgVTReL zXMB_{!6_ab`n(!qOHQIEV`HkhjUl&KEK$9}W6B@PKPSQ#ZnmeSHy5VNno6@??axPK z{A({^_`@j`lE-x1kuddiJGR>_Nfhp(daD~7!)ms(m1tkOwW)Wpo zsK|5oCl8Bf*1ZCG)fs;I{1lH4-V4gNf;PW$(OTTVT3B>n-3}$#6*oGi7$wQ+DK@Y# z-0QEjQ6Pg-l-DU(r05p|%8g#nffnWI!@|t^sDSJ(GwL&Pkda{PZTt_a?eKXp`ygu_ z4xpK964rvy7(=i3odtXP!b!>*|ACvSP^6r+ooH+4Zwk23lv29v?nw|5cPur8Qacw? z$jC^lw$uh<_8<6+lr#CkI(# z?SBv18DH`Skopbb6(ip4sCAsuqj`RC)5rpep_;oC@VbYlXmqVhd~U>Q9Rv9%8?9|C z%=BHZAx^H%frw0+6&f>c1@cU#j2*B1opsI5t2pCxZiX z#uub@?U)wec~PF(L7Z6LqC43i2YkIta7B0bLk|iPl*y=Q@{)~j#vOcGGi8&gO?Zr7 z!=4=aaN&c)k(`;t4%dtYtyslBb8XJ-i4QeuClRED5}5wpQkMB{YTGwCm>+|^LAj3W z%myrj$^gXuZsX|5g7?tU+~|Zj&uWNA{NMwh0}sIifPc0T@G`QnX7TOGh9mzu?#S{! z^$^}TcgecD#ZP@?k*$>Bf4qg0zSSl;ws7-;xXdM14hi%KOx_Rd<8te@=VOlX4_@L1 z5#f8Hj!U!L^36>FdONrr{#OUjcP2Ct9^L}l&LxC!+EZKRgIjzN;$sFtUg^<|vA7e; z%qGMV5f5;+yZbQfb-g2Cfq8lIpV+My1dBDVA=c8}(b4f1xr=PqCkJ~fZ#>Bkud>qz ztC#QU#z(+8CKOH`E7S8t805X2#@heJ$j6r;fAr+8{pkS!4g>@M2nw#?0)2x4{U2?R Bgk1mt literal 0 HcmV?d00001 diff --git a/stable/jackett/12.0.6/ix_values.yaml b/stable/jackett/12.0.6/ix_values.yaml new file mode 100644 index 00000000000..924975ade1a --- /dev/null +++ b/stable/jackett/12.0.6/ix_values.yaml @@ -0,0 +1,33 @@ +image: + repository: tccr.io/truecharts/jackett + pullPolicy: IfNotPresent + tag: 0.20.2225@sha256:4834641e0a2fc0e3c677bad6dc31188004498697ff5c9948579a9a997e9893d2 + +securityContext: + readOnlyRootFilesystem: false + +service: + main: + ports: + main: + protocol: HTTP + targetPort: 9117 + port: 9117 + +probes: + liveness: + path: "/UI/Login" + + readiness: + path: "/UI/Login" + + startup: + path: "/UI/Login" + +persistence: + config: + enabled: true + mountPath: "/config" + +portal: + enabled: true diff --git a/stable/jackett/12.0.6/questions.yaml b/stable/jackett/12.0.6/questions.yaml new file mode 100644 index 00000000000..db19f3150de --- /dev/null +++ b/stable/jackett/12.0.6/questions.yaml @@ -0,0 +1,1829 @@ +groups: + - name: Container Image + description: Image to be used for container + - name: General Settings + description: General Deployment Settings + - name: App Configuration + description: App Specific Config Options + - name: Networking and Services + description: Configure Network and Services for Container + - name: Storage and Persistence + description: Persist and Share Data that is Separate from the Container + - name: Ingress + description: Ingress Configuration + - name: Security and Permissions + description: Configure Security Context and Permissions + - name: Resources and Devices + description: "Specify Resources/Devices to be Allocated to Workload" + - name: Middlewares + description: Traefik Middlewares + - name: Metrics + description: Metrics + - name: VPN + description: VPN + - name: Addons + description: Addon Configuration + - name: Advanced + description: Advanced Configuration + - name: Documentation + description: Documentation +portals: + open: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" +questions: + - variable: global + label: Global Settings + group: "General Settings" + schema: + type: dict + hidden: true + attrs: + - variable: isSCALE + label: Flag this is SCALE + schema: + type: boolean + default: true + hidden: true + - variable: controller + group: "General Settings" + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: replicas + description: Number of desired pod replicas + label: Desired Replicas + schema: + type: int + required: true + default: 1 + - variable: customextraargs + group: "General Settings" + label: "Extra Args" + description: "Do not click this unless you know what you are doing" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: extraArgs + label: Extra Args + schema: + type: list + default: [] + items: + - variable: arg + label: Arg + schema: + type: string + - variable: TZ + label: Timezone + group: "General Settings" + schema: + type: string + default: "Etc/UTC" + $ref: + - "definitions/timezone" + - variable: envList + label: Extra Environment Variables + description: "Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..." + group: "General Settings" + schema: + type: list + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + - variable: value + label: Value + schema: + type: string + - variable: service + group: Networking and Services + label: Configure Service(s) + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service" + description: "The Primary service on which the healthcheck runs, often the webUI" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the Service + schema: + type: boolean + default: true + hidden: true + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: ports + label: "Service's Port(s) Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Service Port Configuration" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: "Port" + description: "This port exposes the container port on the service" + schema: + type: int + default: 9117 + required: true + - variable: serviceexpert + group: Networking and Services + label: Show Expert Config + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostNetwork + group: Networking and Services + label: Host-Networking (Complicated) + schema: + type: boolean + default: false + - variable: externalInterfaces + description: Add External Interfaces + label: Add external Interfaces + group: Networking + schema: + type: list + items: + - variable: interfaceConfiguration + description: Interface Configuration + label: Interface Configuration + schema: + type: dict + $ref: + - "normalize/interfaceConfiguration" + attrs: + - variable: hostInterface + description: Please Specify Host Interface + label: Host Interface + schema: + type: string + required: true + $ref: + - "definitions/interface" + - variable: ipam + description: Define how IP Address will be managed + label: IP Address Management + schema: + type: dict + required: true + attrs: + - variable: type + description: Specify type for IPAM + label: IPAM Type + schema: + type: string + required: true + enum: + - value: dhcp + description: Use DHCP + - value: static + description: Use Static IP + show_subquestions_if: static + subquestions: + - variable: staticIPConfigurations + label: Static IP Addresses + schema: + type: list + items: + - variable: staticIP + label: Static IP + schema: + type: ipaddr + cidr: true + - variable: staticRoutes + label: Static Routes + schema: + type: list + items: + - variable: staticRouteConfiguration + label: Static Route Configuration + schema: + additional_attrs: true + type: dict + attrs: + - variable: destination + label: Destination + schema: + type: ipaddr + cidr: true + required: true + - variable: gateway + label: Gateway + schema: + type: ipaddr + cidr: false + required: true + - variable: serviceList + label: Add Manual Custom Services + group: Networking and Services + schema: + type: list + default: [] + items: + - variable: serviceListEntry + label: Custom Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the service + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Name + schema: + type: string + default: "" + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: LoadBalancer + description: LoadBalancer (Expose Ports) + - value: ClusterIP + description: ClusterIP (Do Not Expose Ports) + - value: Simple + description: Deprecated CHANGE THIS + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + schema: + type: string + - variable: portsList + label: Additional Service Ports + schema: + type: list + default: [] + items: + - variable: portsListEntry + label: Custom ports + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the Port + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Port Name + schema: + type: string + default: "" + - variable: protocol + label: Port Type + schema: + type: string + default: TCP + enum: + - value: HTTP + description: HTTP + - value: HTTPS + description: HTTPS + - value: TCP + description: TCP + - value: UDP + description: UDP + - variable: targetPort + label: Target Port + description: This port exposes the container port on the service + schema: + type: int + required: true + - variable: port + label: Container Port + schema: + type: int + required: true + - variable: persistence + label: Integrated Persistent Storage + description: Integrated Persistent Storage + group: Storage and Persistence + schema: + additional_attrs: true + type: dict + attrs: + - variable: config + label: "App Config Storage" + description: "Stores the Application Configuration." + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: pvc + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - variable: server + label: NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: Path on NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissions + label: Automatic Permissions + description: Automatically set permissions on install + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: medium + label: EmptyDir Medium + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: Default + - value: Memory + description: Memory + - variable: size + label: Size quotum of Storage (Do NOT REDUCE after installation) + description: This value can ONLY be INCREASED after the installation + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: persistenceList + label: Additional App Storage + group: Storage and Persistence + schema: + type: list + default: [] + items: + - variable: persistenceListEntry + label: Custom Storage + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the storage + schema: + type: boolean + default: true + hidden: true + - variable: type + label: Type of Storage + description: Sets the persistence type, Anything other than PVC could break rollback! + schema: + type: string + default: hostPath + enum: + - value: pvc + description: PVC + - value: hostPath + description: Host Path + - value: emptyDir + description: emptyDir + - value: nfs + description: NFS Share + - variable: server + label: NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: path + label: Path on NFS Server + schema: + show_if: [["type", "=", "nfs"]] + type: string + default: "" + - variable: setPermissions + label: Automatic Permissions + description: Automatically set permissions on install + schema: + show_if: [["type", "=", "hostPath"]] + type: boolean + default: false + - variable: readOnly + label: Read Only + schema: + type: boolean + default: false + - variable: hostPath + label: Host Path + description: Path inside the container the storage is mounted + schema: + show_if: [["type", "=", "hostPath"]] + type: hostpath + - variable: mountPath + label: Mount Path + description: Path inside the container the storage is mounted + schema: + type: string + default: "" + required: true + valid_chars: '^\/([a-zA-Z0-9._-]+(\s?[a-zA-Z0-9._-]+|\/?))+$' + - variable: medium + label: EmptyDir Medium + schema: + show_if: [["type", "=", "emptyDir"]] + type: string + default: "" + enum: + - value: "" + description: Default + - value: Memory + description: Memory + - variable: size + label: Size Quotum of Storage + schema: + show_if: [["type", "=", "pvc"]] + type: string + default: 256Gi + - variable: ingress + label: "" + group: Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: main + label: "Main Ingress" + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: tls + label: TLS-Settings + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: Select TrueNAS SCALE Certificate + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: (Advanced) Traefik Entrypoint + description: Entrypoint used by Traefik when using Traefik as Ingress Provider + schema: + type: string + default: websecure + required: true + - variable: ingressClassName + label: (Advanced/Optional) IngressClass Name + schema: + type: string + default: "" + - variable: middlewares + label: Traefik Middlewares + description: Add previously created Traefik Middlewares to this Ingress + schema: + type: list + default: [] + items: + - variable: name + label: Name + schema: + type: string + default: "" + required: true + - variable: ingressList + label: Add Manual Custom Ingresses + group: Ingress + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: Custom Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Name + schema: + type: string + default: "" + - variable: ingressClassName + label: IngressClass Name + schema: + type: string + default: "" + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: service + label: Linked Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Service Name + schema: + type: string + default: "" + - variable: port + label: Service Port + schema: + type: int + - variable: tls + label: TLS-Settings + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: Select TrueNAS SCALE Certificate + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: Traefik Entrypoint + description: Entrypoint used by Traefik when using Traefik as Ingress Provider + schema: + type: string + default: websecure + required: true + - variable: middlewares + label: Traefik Middlewares + description: Add previously created Traefik Middlewares to this Ingress + schema: + type: list + default: [] + items: + - variable: name + label: Name + schema: + type: string + default: "" + required: true + - variable: security + label: Container Security Settings + group: Security and Permissions + schema: + type: dict + additional_attrs: true + attrs: + - variable: editsecurity + label: Change PUID / UMASK values + description: By enabling this you override default set values. + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: PUID + label: Process User ID - PUID + description: When supported by the container, this sets the User ID running the Application Process. Not supported by all Apps + schema: + type: int + default: 568 + - variable: UMASK + label: UMASK + description: When supported by the container, this sets the UMASK for the App. Not supported by all Apps + schema: + type: string + default: "002" + - variable: advancedSecurity + label: Show Advanced Security Settings + group: Security and Permissions + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: securityContext + label: Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: privileged + label: "Privileged mode" + schema: + type: boolean + default: false + - variable: readOnlyRootFilesystem + label: "ReadOnly Root Filesystem" + schema: + type: boolean + default: false + - variable: allowPrivilegeEscalation + label: "Allow Privilege Escalation" + schema: + type: boolean + default: false + - variable: runAsNonRoot + label: "runAsNonRoot" + schema: + type: boolean + default: true + - variable: podSecurityContext + group: Security and Permissions + label: Pod Security Context + schema: + additional_attrs: true + type: dict + attrs: + - variable: runAsUser + label: "runAsUser" + description: "The UserID of the user running the application" + schema: + type: int + default: 568 + - variable: runAsGroup + label: "runAsGroup" + description: "The groupID this App of the user running the application" + schema: + type: int + default: 568 + - variable: fsGroup + label: "fsGroup" + description: "The group that should own ALL storage." + schema: + type: int + default: 568 + - variable: fsGroupChangePolicy + label: "When should we take ownership?" + schema: + type: string + default: OnRootMismatch + enum: + - value: OnRootMismatch + description: OnRootMismatch + - value: Always + description: Always + - variable: supplementalGroups + label: Supplemental Groups + schema: + type: list + default: [] + items: + - variable: supplementalGroupsEntry + label: Supplemental Group + schema: + type: int + - variable: resources + group: Resources and Devices + label: "Resource Limits" + schema: + additional_attrs: true + type: dict + attrs: + - variable: limits + label: Advanced Limit Resource Consumption + schema: + additional_attrs: true + type: dict + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/docs/manual/SCALE%20Apps/indepth/validation" + schema: + type: string + default: 4000m + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: RAM + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/docs/manual/SCALE%20Apps/indepth/validation" + schema: + type: string + default: 8Gi + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: requests + label: "Minimum Resources Required (request)" + schema: + additional_attrs: true + type: dict + hidden: true + attrs: + - variable: cpu + label: CPU + description: "1000m means 1 hyperthread. Detailed info: https://truecharts.org/docs/manual/SCALE%20Apps/indepth/validation" + schema: + type: string + default: 10m + hidden: true + valid_chars: '^(?!^0(\.0|m|)$)([0-9]+)(\.[0-9]|m?)$' + - variable: memory + label: "RAM" + description: "1Gi means 1 Gibibyte RAM. Detailed info: https://truecharts.org/docs/manual/SCALE%20Apps/indepth/validation" + schema: + type: string + default: 50Mi + hidden: true + valid_chars: '^(?!^0(e[0-9]|[EPTGMK]i?|)$)([0-9]+)(|[EPTGMK]i?|e[0-9]+)$' + - variable: deviceList + label: Mount USB Devices + group: Resources and Devices + schema: + type: list + default: [] + items: + - variable: deviceListEntry + label: Device + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable the Storage + schema: + type: boolean + default: true + - variable: type + label: (Advanced) Type of Storage + description: Sets the persistence type + schema: + type: string + default: hostPath + hidden: true + - variable: readOnly + label: readOnly + schema: + type: boolean + default: false + - variable: hostPath + label: Host Device Path + description: Path to the device on the host system + schema: + type: path + - variable: mountPath + label: Container Device Path + description: Path inside the container the device is mounted + schema: + type: string + default: "/dev/ttyACM0" + # Specify GPU configuration + - variable: scaleGPU + label: GPU Configuration + group: Resources and Devices + schema: + type: dict + $ref: + - "definitions/gpuConfiguration" + attrs: [] + - variable: horizontalPodAutoscaler + group: Advanced + label: (Advanced) Horizontal Pod Autoscaler + schema: + type: list + default: [] + items: + - variable: hpaEntry + label: HPA Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: target + label: Target + description: Deployment name, Defaults to Main Deployment + schema: + type: string + default: "" + - variable: minReplicas + label: Minimum Replicas + schema: + type: int + default: 1 + - variable: maxReplicas + label: Maximum Replicas + schema: + type: int + default: 5 + - variable: targetCPUUtilizationPercentage + label: Target CPU Utilization Percentage + schema: + type: int + default: 80 + - variable: targetMemoryUtilizationPercentage + label: Target Memory Utilization Percentage + schema: + type: int + default: 80 + - variable: networkPolicy + group: Advanced + label: (Advanced) Network Policy + schema: + type: list + default: [] + items: + - variable: netPolicyEntry + label: Network Policy Entry + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + default: "" + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: policyType + label: Policy Type + schema: + type: string + default: "" + enum: + - value: "" + description: Default + - value: ingress + description: Ingress + - value: egress + description: Egress + - value: ingress-egress + description: Ingress and Egress + - variable: egress + label: Egress + schema: + type: list + default: [] + items: + - variable: egressEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: to + label: To + schema: + type: list + default: [] + items: + - variable: toEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: ipBlock + label: IP Block + schema: + additional_attrs: true + type: dict + attrs: + - variable: cidr + label: CIDR + schema: + type: string + default: "" + - variable: except + label: Except + schema: + type: list + default: [] + items: + - variable: exceptint + label: "" + schema: + type: string + - variable: namespaceSelector + label: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: podSelector + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: ports + label: Ports + schema: + type: list + default: [] + items: + - variable: portsEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + - variable: endPort + label: End Port + schema: + type: int + - variable: protocol + label: Protocol + schema: + type: string + default: TCP + enum: + - value: TCP + description: TCP + - value: UDP + description: UDP + - value: SCTP + description: SCTP + - variable: ingress + label: Ingress + schema: + type: list + default: [] + items: + - variable: ingressEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: from + label: From + schema: + type: list + default: [] + items: + - variable: fromEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: ipBlock + label: IP Block + schema: + additional_attrs: true + type: dict + attrs: + - variable: cidr + label: CIDR + schema: + type: string + default: "" + - variable: except + label: Except + schema: + type: list + default: [] + items: + - variable: exceptint + label: "" + schema: + type: string + - variable: namespaceSelector + label: Namespace Selector + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: podSelector + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: matchExpressions + label: Match Expressions + schema: + type: list + default: [] + items: + - variable: expressionEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: key + label: Key + schema: + type: string + - variable: operator + label: Operator + schema: + type: string + default: TCP + enum: + - value: In + description: In + - value: NotIn + description: NotIn + - value: Exists + description: Exists + - value: DoesNotExist + description: DoesNotExist + - variable: values + label: Values + schema: + type: list + default: [] + items: + - variable: value + label: "" + schema: + type: string + - variable: ports + label: Ports + schema: + type: list + default: [] + items: + - variable: portsEntry + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + - variable: endPort + label: End Port + schema: + type: int + - variable: protocol + label: Protocol + schema: + type: string + default: TCP + enum: + - value: TCP + description: TCP + - value: UDP + description: UDP + - value: SCTP + description: SCTP + - variable: addons + group: Addons + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: Codeserver + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: git + label: Git Settings + schema: + additional_attrs: true + type: dict + attrs: + - variable: deployKey + description: Raw SSH Private Key + label: Deploy Key + schema: + type: string + - variable: deployKeyBase64 + description: Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence + label: Deploy Key Base64 + schema: + type: string + - variable: service + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Service Type + description: "ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer" + schema: + type: string + default: LoadBalancer + enum: + - value: NodePort + description: Deprecated CHANGE THIS + - value: ClusterIP + description: ClusterIP + - value: LoadBalancer + description: LoadBalancer + - variable: loadBalancerIP + label: LoadBalancer IP + description: "MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB" + schema: + show_if: [["type", "=", "LoadBalancer"]] + type: string + default: "" + - variable: advancedsvcset + label: Show Advanced Service Settings + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: externalIPs + label: "External IP's" + description: "External IP's" + schema: + type: list + default: [] + items: + - variable: externalIP + label: External IP + schema: + type: string + - variable: ipFamilyPolicy + label: IP Family Policy + description: Specify the IP Policy + schema: + type: string + default: SingleStack + enum: + - value: SingleStack + description: SingleStack + - value: PreferDualStack + description: PreferDualStack + - value: RequireDualStack + description: RequireDualStack + - variable: ipFamilies + label: IP Families + description: (Advanced) The IP Families that should be used + schema: + type: list + default: [] + items: + - variable: ipFamily + label: IP Family + schema: + type: string + - variable: ports + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: codeserver + label: "" + schema: + additional_attrs: true + type: dict + attrs: + - variable: port + label: Port + schema: + type: int + default: 36107 + - variable: nodePort + description: Leave Empty to Disable + label: nodePort DEPRECATED + schema: + type: int + default: 36107 + - variable: envList + label: Codeserver Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + - variable: vpn + label: VPN + schema: + additional_attrs: true + type: dict + attrs: + - variable: type + label: Type + schema: + type: string + default: disabled + enum: + - value: disabled + description: disabled + - value: openvpn + description: OpenVPN + - value: wireguard + description: Wireguard + - value: tailscale + description: Tailscale + - variable: openvpn + label: OpenVPN Settings + schema: + type: dict + show_if: [["type", "=", "openvpn"]] + attrs: + - variable: username + label: Authentication Username (Optional) + description: Authentication Username, Optional + schema: + type: string + default: "" + - variable: password + label: Authentication Password + description: Authentication Credentials + schema: + type: string + default: "" + required: true + - variable: tailscale + label: Tailscale Settings + schema: + type: dict + show_if: [["type", "=", "tailscale"]] + attrs: + - variable: authkey + label: Authentication Key + description: Provide an auth key to automatically authenticate the node as your user account. + schema: + type: string + private: true + default: "" + - variable: auth_once + label: Auth Once + description: Only attempt to log in if not already logged in. + schema: + type: boolean + default: true + - variable: accept_dns + label: Accept DNS + description: Accept DNS configuration from the admin console. + schema: + type: boolean + default: false + - variable: userspace + label: Userspace + description: Userspace Networking mode allows running Tailscale where you do not have access to create a VPN tunnel device. + schema: + type: boolean + default: false + - variable: routes + label: Routes + description: Expose physical subnet routes to your entire Tailscale network. + schema: + type: string + default: "" + - variable: dest_ip + label: Destination IP + description: Tells the DNAT mechanism which Destination IP to set in the IP header, and where to send packets that are matched. + schema: + type: string + default: "" + - variable: sock5_server + label: Sock5 Server + description: The address on which to listen for SOCKS5 proxying into the tailscale net. + schema: + type: string + default: "" + - variable: outbound_http_proxy_listen + label: Outbound HTTP Proxy Listen + description: The address on which to listen for HTTP proxying into the tailscale net. + schema: + type: string + default: "" + - variable: extra_args + label: Extra Args + description: Extra Args + schema: + type: string + default: "" + - variable: daemon_extra_args + label: Tailscale Daemon Extra Args + description: Tailscale Daemon Extra Args + schema: + type: string + default: "" + - variable: killSwitch + label: Enable Killswitch + schema: + type: boolean + show_if: [["type", "!=", "disabled"]] + default: true + - variable: excludedNetworks_IPv4 + label: Killswitch Excluded IPv4 networks + description: List of Killswitch Excluded IPv4 Addresses + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv4 + label: IPv4 Network + schema: + type: string + required: true + - variable: excludedNetworks_IPv6 + label: Killswitch Excluded IPv6 networks + description: "List of Killswitch Excluded IPv6 Addresses" + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: networkv6 + label: IPv6 Network + schema: + type: string + required: true + - variable: configFile + label: VPN Config File Location + schema: + type: dict + show_if: [["type", "!=", "disabled"]] + attrs: + - variable: enabled + label: Enabled + schema: + type: boolean + default: true + hidden: true + - variable: type + label: Type + schema: + type: string + default: hostPath + hidden: true + - variable: hostPathType + label: hostPathType + schema: + type: string + default: File + hidden: true + - variable: noMount + label: noMount + schema: + type: boolean + default: true + hidden: true + - variable: hostPath + label: Full Path to File + description: "Path to your local VPN config file for example: /mnt/tank/vpn.conf or /mnt/tank/vpn.ovpn" + schema: + type: string + default: "" + - variable: envList + label: VPN Environment Variables + schema: + type: list + show_if: [["type", "!=", "disabled"]] + default: [] + items: + - variable: envItem + label: Environment Variable + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + - variable: docs + group: Documentation + label: Please read the documentation at https://truecharts.org + description: Please read the documentation at +
https://truecharts.org + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDocs + label: I have checked the documentation + schema: + type: boolean + default: true + - variable: donateNag + group: Documentation + label: Please consider supporting TrueCharts, see https://truecharts.org/sponsor + description: Please consider supporting TrueCharts, see +
https://truecharts.org/sponsor + schema: + additional_attrs: true + type: dict + attrs: + - variable: confirmDonate + label: I have considered donating + schema: + type: boolean + default: true + hidden: true diff --git a/stable/jackett/12.0.6/templates/common.yaml b/stable/jackett/12.0.6/templates/common.yaml new file mode 100644 index 00000000000..c1a366e1cf0 --- /dev/null +++ b/stable/jackett/12.0.6/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.common.loader.all" . }} diff --git a/stable/jackett/12.0.6/values.yaml b/stable/jackett/12.0.6/values.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/stable/prometheus/6.0.0/Chart.lock b/stable/prometheus/6.0.0/Chart.lock index 749b3d53190..8cb5a397711 100644 --- a/stable/prometheus/6.0.0/Chart.lock +++ b/stable/prometheus/6.0.0/Chart.lock @@ -9,4 +9,4 @@ dependencies: repository: https://charts.bitnami.com/bitnami version: 3.2.5 digest: sha256:10f5a668e0a09f13b1a487252eaf6b54a932761a3297648a4271b859719a4fd6 -generated: "2022-11-11T17:50:51.373089094Z" +generated: "2022-11-11T18:55:57.016117414Z" diff --git a/stable/prometheus/6.0.0/app-changelog.md b/stable/prometheus/6.0.0/app-changelog.md index 4686e7db58e..9eeb601460d 100644 --- a/stable/prometheus/6.0.0/app-changelog.md +++ b/stable/prometheus/6.0.0/app-changelog.md @@ -4,6 +4,7 @@ ### Feat -- remove operator due to move to included manifest ([#4378](https://github.com/truecharts/charts/issues/4378)) +- readd ingressList to all Apps that already have Ingress itself + - remove operator due to move to included manifest ([#4378](https://github.com/truecharts/charts/issues/4378)) \ No newline at end of file diff --git a/stable/prometheus/6.0.0/questions.yaml b/stable/prometheus/6.0.0/questions.yaml index 4d20e4ed395..99e45632642 100644 --- a/stable/prometheus/6.0.0/questions.yaml +++ b/stable/prometheus/6.0.0/questions.yaml @@ -679,6 +679,142 @@ questions: type: string default: "" required: true + - variable: ingressList + label: Add Manual Custom Ingresses + group: Ingress + schema: + type: list + default: [] + items: + - variable: ingressListEntry + label: Custom Ingress + schema: + additional_attrs: true + type: dict + attrs: + - variable: enabled + label: Enable Ingress + schema: + type: boolean + default: true + hidden: true + - variable: name + label: Name + schema: + type: string + default: "" + - variable: ingressClassName + label: IngressClass Name + schema: + type: string + default: "" + - variable: hosts + label: Hosts + schema: + type: list + default: [] + items: + - variable: hostEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: host + label: HostName + schema: + type: string + default: "" + required: true + - variable: paths + label: Paths + schema: + type: list + default: [] + items: + - variable: pathEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: path + label: Path + schema: + type: string + required: true + default: "/" + - variable: pathType + label: Path Type + schema: + type: string + required: true + default: Prefix + - variable: service + label: Linked Service + schema: + additional_attrs: true + type: dict + attrs: + - variable: name + label: Service Name + schema: + type: string + default: "" + - variable: port + label: Service Port + schema: + type: int + - variable: tls + label: TLS-Settings + schema: + type: list + default: [] + items: + - variable: tlsEntry + label: Host + schema: + additional_attrs: true + type: dict + attrs: + - variable: hosts + label: Certificate Hosts + schema: + type: list + default: [] + items: + - variable: host + label: Host + schema: + type: string + default: "" + required: true + - variable: scaleCert + label: Select TrueNAS SCALE Certificate + schema: + type: int + $ref: + - "definitions/certificate" + - variable: entrypoint + label: Traefik Entrypoint + description: Entrypoint used by Traefik when using Traefik as Ingress Provider + schema: + type: string + default: websecure + required: true + - variable: middlewares + label: Traefik Middlewares + description: Add previously created Traefik Middlewares to this Ingress + schema: + type: list + default: [] + items: + - variable: name + label: Name + schema: + type: string + default: "" + required: true - variable: horizontalPodAutoscaler group: Advanced label: (Advanced) Horizontal Pod Autoscaler