From f4668d2e6983123e90b7ac8992507fcee5942171 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Tue, 8 Aug 2023 17:50:57 +0530 Subject: [PATCH 01/38] Add release script and helm chart index --- docs/index.yaml | 14 ++++++++++++++ docs/roost-ai-1.0.0.tgz | Bin 0 -> 5354 bytes release.sh | 5 +++++ 3 files changed, 19 insertions(+) create mode 100644 docs/index.yaml create mode 100644 docs/roost-ai-1.0.0.tgz create mode 100755 release.sh diff --git a/docs/index.yaml b/docs/index.yaml new file mode 100644 index 0000000..a9272c2 --- /dev/null +++ b/docs/index.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +entries: + roost-ai: + - apiVersion: v2 + appVersion: 1.0.0 + created: "2023-08-08T17:49:22.679505+05:30" + description: Roost.ai, an End-to-End Testing platform using Generative AI. + digest: 3f46862e32dda946cc9046c62cddd05a7f23d4ce48973b8a167cc5c7c304833a + name: roost-ai + type: application + urls: + - https://roost-io.github.io/helm/roost-ai-1.0.0.tgz + version: 1.0.0 +generated: "2023-08-08T17:49:22.678504+05:30" diff --git a/docs/roost-ai-1.0.0.tgz b/docs/roost-ai-1.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..3d15582dbaa325102e6dcf6a30740d36b41b85aa GIT binary patch literal 5354 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 IzW{sy0Q_W{IsgCw literal 0 HcmV?d00001 diff --git a/release.sh b/release.sh new file mode 100755 index 0000000..53de681 --- /dev/null +++ b/release.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +helm package charts/roost-ai -d docs + +helm repo index docs --url https://roost-io.github.io/helm \ No newline at end of file From d7873a0132a24858d00995a75482181627d8a6d4 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Tue, 8 Aug 2023 18:22:31 +0530 Subject: [PATCH 02/38] add v1.0.0 chart --- docs/index.yaml | 6 +++--- docs/roost-ai-1.0.0.tgz | Bin 5354 -> 5371 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/index.yaml b/docs/index.yaml index a9272c2..9518d67 100644 --- a/docs/index.yaml +++ b/docs/index.yaml @@ -3,12 +3,12 @@ entries: roost-ai: - apiVersion: v2 appVersion: 1.0.0 - created: "2023-08-08T17:49:22.679505+05:30" + created: "2023-08-08T18:21:47.404485+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 3f46862e32dda946cc9046c62cddd05a7f23d4ce48973b8a167cc5c7c304833a + digest: c06c915bf467bfa5f8fc280a7e41d665b640e324260b4492e6cd029ca6444179 name: roost-ai type: application urls: - https://roost-io.github.io/helm/roost-ai-1.0.0.tgz version: 1.0.0 -generated: "2023-08-08T17:49:22.678504+05:30" +generated: "2023-08-08T18:21:47.40304+05:30" diff --git a/docs/roost-ai-1.0.0.tgz b/docs/roost-ai-1.0.0.tgz index 3d15582dbaa325102e6dcf6a30740d36b41b85aa..fcf7d172d960a14ed407087c4a76e90b837491b2 100644 GIT binary patch delta 5347 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 BZ}9*C delta 5330 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 From 42061b5188b2a43e044301309816541938773580 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Tue, 8 Aug 2023 18:27:48 +0530 Subject: [PATCH 03/38] Update chart url --- docs/roost-ai-1.0.0.tgz | Bin 5371 -> 0 bytes release.sh | 4 ++-- {docs => releases}/index.yaml | 6 +++--- releases/roost-ai-1.0.0.tgz | Bin 0 -> 5368 bytes 4 files changed, 5 insertions(+), 5 deletions(-) delete mode 100644 docs/roost-ai-1.0.0.tgz rename {docs => releases}/index.yaml (62%) create mode 100644 releases/roost-ai-1.0.0.tgz diff --git a/docs/roost-ai-1.0.0.tgz b/docs/roost-ai-1.0.0.tgz deleted file mode 100644 index fcf7d172d960a14ed407087c4a76e90b837491b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5371 zcmVDc zVQyr3R8em|NM&qo0PH<$m)ba%{n@|bF3gXGr;*|P+kgb4*KQ0dL)^r3|< zjHZm`mgK6CO!l|$kz^a&7>asKWu~X}p~}ctS68q5lqE(f7bYT&&Jrnb;D=B zG3I|425`&zZ=JPHOY6UN+-yCs|EEZG=;8&60|9yhz=ATcETaz7CE-9gAo$q6=$mp` zBO$N{3ld-n(8X?m7=~-a2$~0&gP<_S5FyU72P6~})-+}y@JccU%q_zpp};;v0(&zL z2{cC>+eRHY7Jx&E#gkYBi?O0a^O1nMC;)E`5%mm60c}{IfMdg`Ly8I_#Lx;0%(#)E z2QUEYKo%9)RK-im1t1P4tk(S3!1U%OzjgtI9z>K0Frn3Io*AG3?E;Vi3dBw!7^Px_ zIKQFHQ>;!H0Nh>T6-qcCp$0(AG0R>@MR=nQ!*(o|`L>`~ENufIr1DMLZ~&iDKfs-U z;866sHq>gR%n5cG7Rd|rC1z#dTwVdzCt?}T%b0VS1?Yf;SJ)$A3BH(JC_%3TN}xH9 zWp9+TyIWb?jcIq^Oe(OH-*v0=3;62EypUZDS9q1^?8aoRd+{mH}U-m&X8Tk|7)e&k{~=M+LYVDIr-)ne2EhXS*R5sn*_`S~&4 zys;sn$EOgpKwOJ2xuuo|Wqw@zj-*sSg;bD5qE{u| zE77Qzl9K>%9D3P`NqDIZh^%9|>5*p)0FL z0TFA+^KHrAjXFe(UK0;PKwKPhtX3TjgSBMUMErq+M;LZRu!aQ|?ox^#Mpsf}w9+M@ zn2aj@9WHvRwj{J1p!r>$rE|7p_KuZ@?6^Er~jN-VJw z+&~xVSxG0$c-i>&&G`D&1P?Drh@oa#5~>E~CSO?)mi8e@i4WEXZBI(b;WcJVGWx$s z4jZ~~)>4mTHHjAs@)>Go4H8^9^yH(V=;|&^+@cD7RR(;SNOeCzd z8+e4>7nadm0K);6)`mjj(oi50@YHe59`m+daWZu57Un`3I4StQOz@-LmV_BgP`Peh(YmF$K9TUv1 ziCZqOJ7|&+zo(1J?K3MY*B;Gc&*(*LRZ~ksE~I%?q&2@(s%B)FG4rHt$aQHPibU6} zZia$vYrw%S{!#?9TwQI6z5keNWFLq%G^R3FQ=M-Npd8i$PU~A2OZ^`-FNEP}Y zBBmS&%pS`be4GB)JSyw|r>AGf&-&j}q!J@Y?RqOUnI$VK#E6cJD-wD(bd>Ai0!79O z3*;ezl!H<+#B2tc+Ch=L;1R0gd@5U3lp^`yj9(8Y&aCfzaQZgXWPyafynzhgzSRr> zXE2>jobd-|tWhVB8+V$u@ngwa0NR(+ceD4-#{xWx#nQ@q>@@6nIGjvpdyp4gKB`F9 z8TE%Bo$jnRn7w~Bv7shdjB6RPc5gPA?CA#6G{M->>m!-N1rEgr8pJEy2@qLTjDVsF z5z~)EIusJ%z=4pOuEd307ju3=JOQ-cO7Oe1XEX0l+Y)F>_M@hJTGQ7s)RG zE+|7jw&CskcC5%ayc?(3JNH8A^}K= z0;ucA!~lyM%B~VOmM)zr=a_NjRMyGd*B@yjD>ZIk=7csI2#9iCa4sOtz8+qz;ICl@q7BN*kph%o6vj%(d$%XW+P5sNK zD*Z2tl1SwvDS)@=eAA?m+X zdvE&g^7Y=@3mXB-<@>$Cd#BqQ?88vr98ktFd_Qex#EZ4pwGT(=b@S9Zk1JX)v5gi?mou%@MubM-|XU zVI{XtJe_+C9)^)COcX_Tw0G*D_h=5Nhevt?LDA?@#z|EzIfdDTh*3dZ8rU%HjEs#& zZNtfNvzcTF#C$A929=VSNSXJjeY``isc`Fd=hgg9| zwY5=13RU)>d4uP7H2o?Jzx`(4ZWUvP9kykK<)+SV6U;Qt@2z+JqofM`zvOIqxDjyM z{*Tl1qq6>ge*C=u_es)yB#N1zA$NA79VS$^JzfWjl(S~D*{YB!`TTraFhaai)-;?sjpPS&~#&xl|L+KmC*XQ zajIdcq{pFgs-u6PI8{1!Phg{zrpZ0blM;rUWm1QO;!`^#A-QhYX`CQ3Q(!Z1myNR7 ziT_x!sXS}jX`ob?D7jSxcZ_2NWUj??rQK9mKiS|ge+#W?&PnK*$nzNH{Le49UMD+q zOcaYH4n^`Eff)s{Pr^Uzo(|QAowJnRJv{PNN&ek}T{#rR_}2Fpv;VNELjMaf7mvCF z=obC&{P=V${&RGC@~r_mGV}gJIX1IfD;2)FMW`SbYvtQ(I=*zeqpI%skFL%CG|I$$-b<6gt7`{c2&6bk!wQjy@FrGQajtY^{K2b zegA-2xnwq&`-|r*uZpxC7HGSBcr9OIS0|M}?adGA1H*9-3c_s{-aE6(Ulb=DFn&85 zv@e`p>ofT_b_3k*Ui1b!bhW3<=EK-cNgeJ=!+g8T=01?!6z=pdCsSuU>$filop+9A zb`ZvaR5G1*dy?#~R2H&sP{qsl&d1rPJ$;wGR4p2f4)22Q>tr`Tl~t`i(NDn=DN$*C zQznuCTlaO2;{A5L#Cfn$ufQjrcg{t7yK$8chGIDL&}imEVwjua7t@`hD=D`UQMp9Y z!?zS0>AsdFJCoVPuAe z!Nl3BGz-|~zAXOs&3IS{Hm6koU4yX2dJc8>G%Lffx$JTn_7uQ)1dmSz)zAK)N0>7Y z2~!tqeL$ePi0Iy->TQQm8F9|*PzYE{YMyYf^3!cpu2?RazvK`HR5KSNfAB`-eZ<^r zr}7p;xt6}So%~x(RsJ8JgrA=<{&(CwE}#E*+B|yp|2#>$v;RlUj{CWP5>r9`>vfz& zd9GOXcEX@a@FnNaWp4+jY%i0YYzE3fCOG5^ebCSQS0&Z;VOpN-oJKN+%VOoZH z^@{J?8h5CkQCfjJ@7&6xv*1&af1QJ8=t@|Mv!;x>G$ z)qYNl^Mb7|!D+I&;L6}*v9j}VpsBe6AG$Ha&pFI_mz(0A37{Fz=_<+jdsNt zr-Qbq2cC_#e~wha|C7_L9&Zc4ZT8>!X?g$W*;(tE|3678`#KTg58LpW&YtI!Kkj?- z$D?@Eas_&0Lw$D`P@X`eiw`cdkQ-R7-2)%FQ}=v&+)O^@$HFRzd^9eUPB>+xLZ zJ4v~h|GbFpmVJ;F@;_ORu3V3gVg%my{nyF1{BNB$(T*U^WBQ??#qw&FI_&d<+l z37RzP?CeZt?Ij}jnuNZTewug`{g(F;XY1cu;$TJmkTU$(b=h1pF$p|%sS|RqkdJwGDNJ&m00+LrK>&V0=UNdWq5nrI!u6F; z5faN>J_7#8s`YG`mq|7uv*+@&6F{4@AJ zvh_c9+T9DsT6vFO$1Ur>b#mM)-~V=e{%rq0Nvdaex*6?zTM-V5ARfXLx~`d@phRfx{<{y0Nqt6))OC-tef)Ur2Z#3rQOj*t3k6 z&|QaUMO@J8IE-=%L*<1dB-A%xB^QqTDBC>x0LtY|X!t_nY_HH48iMm?0-Z?@JVvfD zgN!6eiqcV#f|IIB17Gomz8R(wbIkmhc(@^T6{*iG#VUAl$n__(@;5XH=#4(|zR)Kd z0`yLHRqy63Ym*b7H_#0?lWI*(cViyVd1Hknenq+_OS#xh#bK51X01Hcy}A2q7F-L0 z9Dxc#A4PqQ0^(^y4sV8I)21Tu#!S+tqUa3TG{c|Clpq{AV_O;exn~CU!PA z%-j(qV4HB+1DCEM8e)Cewt8hG*M&&{eRY)n*?kQ^(nw$Q^1?77x3NKj>M5V>UQ2)K z$iHnWLRWcO)HO{c^d)G)FPq^4b-7I9E0CmhLP9MUsoHA-Oe5wXat-QuYEjNDodnJjpah>gK;>exl(pVE$!#earRX<7Bji!h~H^7C!= zeG2){`Kn4dWnU?f;7OpOVni34MyYF!+?X*rzdXV$%|Mgd^?FQt zo5K=a%Rxxjh`LXUaFH-&M*O854mrwg<;OE#!bch_N|EO!Gop0a7vNB^wVv9sz;N11 zZwXT`kB3FWLvUUn|?OVS~FdHwSPko~A z$y%g*2yfVsY<2z?C0Jl2Vx|<)I$VZH_Y~$=nwgte;pW+p49pb)=nx-l&o7DWdyC}f Z^qij4b9$2W{{a91|NrQNB@Y060020yac%$r diff --git a/release.sh b/release.sh index 53de681..0be9769 100755 --- a/release.sh +++ b/release.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -helm package charts/roost-ai -d docs +helm package charts/roost-ai -d releases -helm repo index docs --url https://roost-io.github.io/helm \ No newline at end of file +helm repo index releases --url https://roost-io.github.io/helm \ No newline at end of file diff --git a/docs/index.yaml b/releases/index.yaml similarity index 62% rename from docs/index.yaml rename to releases/index.yaml index 9518d67..6b116b6 100644 --- a/docs/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost-ai: - apiVersion: v2 appVersion: 1.0.0 - created: "2023-08-08T18:21:47.404485+05:30" + created: "2023-08-08T18:26:55.345403+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: c06c915bf467bfa5f8fc280a7e41d665b640e324260b4492e6cd029ca6444179 + digest: 2c178683c4f26fda5707aed6fcd6433bc1ff69a1e472eb56da9ccffaba4d5727 name: roost-ai type: application urls: - https://roost-io.github.io/helm/roost-ai-1.0.0.tgz version: 1.0.0 -generated: "2023-08-08T18:21:47.40304+05:30" +generated: "2023-08-08T18:26:55.344372+05:30" diff --git a/releases/roost-ai-1.0.0.tgz b/releases/roost-ai-1.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..81cedadce152305be8cb465b84dbbe29c781515d GIT binary patch literal 5368 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 Date: Tue, 8 Aug 2023 18:34:58 +0530 Subject: [PATCH 04/38] Update chart url --- release.sh | 2 +- releases/index.yaml | 8 ++++---- releases/roost-ai-1.0.0.tgz | Bin 5368 -> 5368 bytes 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/release.sh b/release.sh index 0be9769..f3eb00c 100755 --- a/release.sh +++ b/release.sh @@ -2,4 +2,4 @@ helm package charts/roost-ai -d releases -helm repo index releases --url https://roost-io.github.io/helm \ No newline at end of file +helm repo index releases --url https://roost-io.github.io/helm/releases \ No newline at end of file diff --git a/releases/index.yaml b/releases/index.yaml index 6b116b6..26643f6 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost-ai: - apiVersion: v2 appVersion: 1.0.0 - created: "2023-08-08T18:26:55.345403+05:30" + created: "2023-08-08T18:33:59.584828+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 2c178683c4f26fda5707aed6fcd6433bc1ff69a1e472eb56da9ccffaba4d5727 + digest: 27f93a75bdbd0488d79fda0ee57a8be047f5648c01d040b11ee6bb43a64f3e15 name: roost-ai type: application urls: - - https://roost-io.github.io/helm/roost-ai-1.0.0.tgz + - https://roost-io.github.io/helm/releases/roost-ai-1.0.0.tgz version: 1.0.0 -generated: "2023-08-08T18:26:55.344372+05:30" +generated: "2023-08-08T18:33:59.58386+05:30" diff --git a/releases/roost-ai-1.0.0.tgz b/releases/roost-ai-1.0.0.tgz index 81cedadce152305be8cb465b84dbbe29c781515d..d7f32f8967bdfa5a14ca1b9880a9657a32772f1c 100644 GIT binary patch delta 5242 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 AF#rGn delta 5242 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 Date: Wed, 9 Aug 2023 15:29:31 +0530 Subject: [PATCH 05/38] Release chart roost v1.0.0 --- release.sh | 2 +- releases/index.yaml | 12 ++++++------ releases/roost-1.0.0.tgz | Bin 0 -> 5470 bytes releases/roost-ai-1.0.0.tgz | Bin 5368 -> 0 bytes 4 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 releases/roost-1.0.0.tgz delete mode 100644 releases/roost-ai-1.0.0.tgz diff --git a/release.sh b/release.sh index f3eb00c..8cad85a 100755 --- a/release.sh +++ b/release.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -helm package charts/roost-ai -d releases +helm package charts/roost -d releases helm repo index releases --url https://roost-io.github.io/helm/releases \ No newline at end of file diff --git a/releases/index.yaml b/releases/index.yaml index 26643f6..ef48b18 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -1,14 +1,14 @@ apiVersion: v1 entries: - roost-ai: + roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2023-08-08T18:33:59.584828+05:30" + created: "2023-08-09T15:28:55.424104+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 27f93a75bdbd0488d79fda0ee57a8be047f5648c01d040b11ee6bb43a64f3e15 - name: roost-ai + digest: d492e9c5e0257b55d4888ee0e4a1a3d47a2a8dcd605c1f6bc7b58d0b2cdce669 + name: roost type: application urls: - - https://roost-io.github.io/helm/releases/roost-ai-1.0.0.tgz + - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2023-08-08T18:33:59.58386+05:30" +generated: "2023-08-09T15:28:55.423138+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..db3f00c06ad492f97ccecb2ee00ae3b4908aee61 GIT binary patch literal 5470 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 WIX$N*N&g=J0RR6G)lAm_d;kEPJB Date: Thu, 13 Jun 2024 18:00:44 +0530 Subject: [PATCH 06/38] update release --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 5470 -> 8414 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index ef48b18..34327cc 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2023-08-09T15:28:55.424104+05:30" + created: "2024-06-13T18:00:00.251537+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: d492e9c5e0257b55d4888ee0e4a1a3d47a2a8dcd605c1f6bc7b58d0b2cdce669 + digest: 9361463182062190e8424ee4ce0f2156f1ce916c6020379df9e84128847c60e3 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2023-08-09T15:28:55.423138+05:30" +generated: "2024-06-13T18:00:00.250462+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index db3f00c06ad492f97ccecb2ee00ae3b4908aee61..b9f45e3c4ca692c656d1366417b4577034ce45f7 100644 GIT binary patch literal 8414 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 K4J~T`d;kCtQN{59 From 8cb8b0f62d45f1d16e4a653382dcfd5f5735ed4f Mon Sep 17 00:00:00 2001 From: Garvit-Jethwani Date: Tue, 18 Jun 2024 18:09:00 +0530 Subject: [PATCH 07/38] update release --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 8414 -> 8531 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index 34327cc..6c653b2 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2024-06-13T18:00:00.251537+05:30" + created: "2024-06-18T18:08:11.310659+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 9361463182062190e8424ee4ce0f2156f1ce916c6020379df9e84128847c60e3 + digest: 619a0e41a0947e5675d55dd125b0d4d473f450c545bda85ae882bc24b6b9d1e7 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2024-06-13T18:00:00.250462+05:30" +generated: "2024-06-18T18:08:11.309923+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index b9f45e3c4ca692c656d1366417b4577034ce45f7..f40aae29880d0e1b630596c593d18b3a5f8027f5 100644 GIT binary patch literal 8531 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 N|NnO4xD5cn007g0t&RWy literal 8414 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 Date: Fri, 12 Sep 2025 16:20:02 +0530 Subject: [PATCH 08/38] Fix template --- charts/roost/templates/NOTES.txt | 4 ++-- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 8531 -> 8533 bytes 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/charts/roost/templates/NOTES.txt b/charts/roost/templates/NOTES.txt index 74c90f2..f8bed82 100644 --- a/charts/roost/templates/NOTES.txt +++ b/charts/roost/templates/NOTES.txt @@ -7,12 +7,12 @@ NOTE: It may take a few minutes for the Ingress Address IP to be available. You can watch the status by running: 'kubectl get --namespace {{ .Release.Namespace }} ingress -w roost-{{ .Values.cloudConfig.clusterType }}-ingress' Get the roostai loadbalancer external IP by running these commands: -export SERVICE_IP=$(kubectl get ingress --namespace {{ .Release.Namespace }} roost-{{ .Values.cloudConfig.clusterType }}-ingress -o jsonpath="{.status.loadBalancer.ingress[0].ip}") +export SERVICE_IP=$(kubectl get ingress --namespace {{ .Release.Namespace }} roost-{{ .Values.cloudConfig.clusterType }}-ingress -o jsonpath="{.status.loadBalancer.ingress[0].hostname}") {{- else }} NOTE: It may take a few minutes for the LoadBalancer IP to be available. You can watch the status by running: 'kubectl get --namespace {{ .Release.Namespace }} svc -w roost-nginx-svc' Get the roostai loadbalancer external IP by running these commands: -export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} roost-nginx-svc -o jsonpath="{.status.loadBalancer.ingress[0].ip}") +export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} roost-nginx-svc -o jsonpath="{.status.loadBalancer.ingress[0].hostname}") {{- end }} echo "RoostAI LoadBalancer URL: http://$SERVICE_IP" diff --git a/releases/index.yaml b/releases/index.yaml index 6c653b2..9a3665f 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2024-06-18T18:08:11.310659+05:30" + created: "2025-09-12T16:19:22.751169+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 619a0e41a0947e5675d55dd125b0d4d473f450c545bda85ae882bc24b6b9d1e7 + digest: cbb006fe0d1729df7e2fea290502068b0a8efa6915b76baa53be8159f6ea2edb name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2024-06-18T18:08:11.309923+05:30" +generated: "2025-09-12T16:19:22.750567+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index f40aae29880d0e1b630596c593d18b3a5f8027f5..7168dc06e130cfca352e11a98608b4b0089670ec 100644 GIT binary patch delta 8462 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 delta 8460 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 Date: Fri, 12 Sep 2025 17:16:34 +0530 Subject: [PATCH 09/38] Explicitly mention external load balancer --- charts/roost/templates/roost-nginx.yaml | 1 + releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 8533 -> 8557 bytes 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/charts/roost/templates/roost-nginx.yaml b/charts/roost/templates/roost-nginx.yaml index 424b0a2..32cc31f 100644 --- a/charts/roost/templates/roost-nginx.yaml +++ b/charts/roost/templates/roost-nginx.yaml @@ -21,6 +21,7 @@ metadata: {{- if .Values.acm.enabled }} annotations: service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} + service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing {{- end }} {{- if eq .Values.cloudConfig.clusterType "gke" }} annotations: diff --git a/releases/index.yaml b/releases/index.yaml index 9a3665f..bb48dc3 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2025-09-12T16:19:22.751169+05:30" + created: "2025-09-12T17:16:09.906089+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: cbb006fe0d1729df7e2fea290502068b0a8efa6915b76baa53be8159f6ea2edb + digest: 17c60c4c0cce4432487680775a08566fe168fe7c8127f80e5f27ade94709e6cb name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2025-09-12T16:19:22.750567+05:30" +generated: "2025-09-12T17:16:09.90532+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 7168dc06e130cfca352e11a98608b4b0089670ec..4b2db65d7e8367b31356838b62a2dc7b4b0ecbcd 100644 GIT binary patch literal 8557 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 Date: Wed, 17 Sep 2025 10:39:09 +0530 Subject: [PATCH 10/38] Update template to handle storage class name from values.yaml --- charts/roost/templates/_helpers.tpl | 4 +++- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 8557 -> 8580 bytes 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/charts/roost/templates/_helpers.tpl b/charts/roost/templates/_helpers.tpl index fe46e68..e00b0b7 100644 --- a/charts/roost/templates/_helpers.tpl +++ b/charts/roost/templates/_helpers.tpl @@ -65,7 +65,9 @@ Create the name of the service account to use Storage Class Name */}} {{- define "cluster.storageClassName" -}} -{{- if eq .Values.cloudConfig.clusterType "aks" }} +{{- if and .Values.storageClass (ne .Values.storageClass "") }} +storageClassName: {{ .Values.storageClass }} +{{- else if eq .Values.cloudConfig.clusterType "aks" }} storageClassName: roost-sc-azurefile-csi-nfs {{- else if eq .Values.cloudConfig.clusterType "gke" }} storageClassName: standard-rwx diff --git a/releases/index.yaml b/releases/index.yaml index bb48dc3..54430ca 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2025-09-12T17:16:09.906089+05:30" + created: "2025-09-17T10:38:19.447758+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 17c60c4c0cce4432487680775a08566fe168fe7c8127f80e5f27ade94709e6cb + digest: f459cd43044e37536b41da699d42fdd7d214495683ba47ecb8bb9e18dbd53664 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2025-09-12T17:16:09.90532+05:30" +generated: "2025-09-17T10:38:19.446312+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 4b2db65d7e8367b31356838b62a2dc7b4b0ecbcd..ac0e2e368612a911ab86bec159b3a0960cee080c 100644 GIT binary patch literal 8580 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 K@3!gy!T delta 8529 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 Date: Wed, 17 Sep 2025 10:41:26 +0530 Subject: [PATCH 11/38] Add storageClass in values.yaml --- charts/roost/values.yaml | 2 ++ releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 8580 -> 8582 bytes 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index ea52da5..9f13884 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -102,3 +102,5 @@ azureCerts: # certificate identifier # https://.vault.azure.net/certificates// identifier: '' + +storageClass: \ No newline at end of file diff --git a/releases/index.yaml b/releases/index.yaml index 54430ca..379b3d0 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2025-09-17T10:38:19.447758+05:30" + created: "2025-09-17T10:40:59.946576+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: f459cd43044e37536b41da699d42fdd7d214495683ba47ecb8bb9e18dbd53664 + digest: 5b3eabc32975cc883b53a25d139207380fa39c60f7a05940a4fbc26135c2fe9a name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2025-09-17T10:38:19.446312+05:30" +generated: "2025-09-17T10:40:59.942517+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index ac0e2e368612a911ab86bec159b3a0960cee080c..5527c851896633dfb928481e79f57d06ba8739ae 100644 GIT binary patch delta 7553 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

i0|uu^Akjzloi2s6tqN|LG+RY5F*(Uj3NCm5sP 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 V@IN&C{{R30|NkEEw(0=F007r^w(9@@ From 31d9bf91e748bd3ca594be30f14c7b85fee9e45d Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Mon, 9 Mar 2026 16:31:25 +0530 Subject: [PATCH 12/38] refactor roostgpt k8s cluster service --- .gitignore | 1 + charts/roost/templates/NOTES.txt | 41 ++++- charts/roost/templates/_helpers.tpl | 10 +- charts/roost/templates/roost-ai-server.yaml | 3 +- charts/roost/templates/roost-app.yaml | 58 ++++--- charts/roost/templates/roost-backend-svc.yaml | 12 -- charts/roost/templates/roost-eaas.yaml | 68 -------- charts/roost/templates/roost-jump.yaml | 77 --------- charts/roost/templates/roost-launcher.yaml | 68 -------- charts/roost/templates/roost-local-dns.yaml | 66 ++++++++ charts/roost/templates/roost-mysql-db.yaml | 44 +++--- charts/roost/templates/roost-nginx.yaml | 98 +++++++++++- charts/roost/templates/roost-sc.yaml | 18 ++- charts/roost/templates/roost-web.yaml | 14 +- charts/roost/values.yaml | 149 ++++++++++++++++-- 15 files changed, 420 insertions(+), 307 deletions(-) create mode 100644 .gitignore delete mode 100644 charts/roost/templates/roost-eaas.yaml delete mode 100644 charts/roost/templates/roost-jump.yaml delete mode 100644 charts/roost/templates/roost-launcher.yaml create mode 100644 charts/roost/templates/roost-local-dns.yaml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..156f105 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +values-secret.yaml \ No newline at end of file diff --git a/charts/roost/templates/NOTES.txt b/charts/roost/templates/NOTES.txt index f8bed82..53653ad 100644 --- a/charts/roost/templates/NOTES.txt +++ b/charts/roost/templates/NOTES.txt @@ -1,9 +1,42 @@ # Welcome to the RoostAI Helm Chart! +## Secret Values (values-secret.yaml) + +Sensitive credentials (DB passwords, OAuth secrets, license key, ACM ARN, etc.) +must NOT be committed to git. Store them in a separate file: + + charts/roost/values-secret.yaml ← listed in .gitignore + +Deploy with both files: + helm upgrade --install roost charts/roost \ + -f charts/roost/values.yaml \ + -f charts/roost/values-secret.yaml \ + -n roost --create-namespace + ## Accessing RoostAI -{{- if or (eq .Values.cloudConfig.clusterType "gke") (eq .Values.cloudConfig.clusterType "aks") }} -NOTE: It may take a few minutes for the Ingress Address IP to be available. +{{- if .Values.gateway.enabled }} +NOTE: Gateway API mode is enabled. NGINX Gateway Fabric must be installed in the cluster. + Install it with (use --skip-crds if Gateway API CRDs >= v1.5 are already present): + helm install ngf oci://ghcr.io/nginx/charts/nginx-gateway-fabric \ + --create-namespace -n nginx-gateway --skip-crds + + It may take a few minutes for the Gateway address to become available. + Watch the gateway status: + kubectl get --namespace {{ .Release.Namespace }} gateway roost-gateway -w + +Get the RoostAI external address: +export SERVICE_IP=$(kubectl get gateway --namespace {{ .Release.Namespace }} roost-gateway \ + -o jsonpath="{.status.addresses[0].value}") +echo "RoostAI URL: http://$SERVICE_IP" + +{{- if eq .Values.cloudConfig.clusterType "local" }} +On Docker Desktop the LoadBalancer is exposed on localhost (127.0.0.1). +Since '{{ .Values.enterprise.domainURL }}' resolves to 127.0.0.1 automatically, +you can open your browser at: http://{{ .Values.enterprise.domainURL }} +{{- end }} +{{- else if or (eq .Values.cloudConfig.clusterType "gke") (eq .Values.cloudConfig.clusterType "aks") }} +NOTE: It may take a few minutes for the Ingress address to be available. You can watch the status by running: 'kubectl get --namespace {{ .Release.Namespace }} ingress -w roost-{{ .Values.cloudConfig.clusterType }}-ingress' Get the roostai loadbalancer external IP by running these commands: @@ -14,7 +47,9 @@ NOTE: It may take a few minutes for the LoadBalancer IP to be available. Get the roostai loadbalancer external IP by running these commands: export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} roost-nginx-svc -o jsonpath="{.status.loadBalancer.ingress[0].hostname}") {{- end }} +{{- if not .Values.gateway.enabled }} echo "RoostAI LoadBalancer URL: http://$SERVICE_IP" +{{- end }} ## Mapping the RoostAI LoadBalancer IP to Your Domain @@ -30,4 +65,4 @@ To map this LoadBalancer IP to your domain, follow these steps: 4. Save the DNS record. -5. It may take some time (DNS propagation) for your domain to point to the RoostAI LoadBalancer IP. \ No newline at end of file +5. It may take some time (DNS propagation) for your domain to point to the RoostAI LoadBalancer IP. diff --git a/charts/roost/templates/_helpers.tpl b/charts/roost/templates/_helpers.tpl index e00b0b7..c6503f8 100644 --- a/charts/roost/templates/_helpers.tpl +++ b/charts/roost/templates/_helpers.tpl @@ -73,16 +73,20 @@ storageClassName: roost-sc-azurefile-csi-nfs storageClassName: standard-rwx {{- else if eq .Values.cloudConfig.clusterType "eks" }} storageClassName: roost-sc-efs -{{- else }} -# storageClassName: default +{{- else if eq .Values.cloudConfig.clusterType "local" }} +storageClassName: roost-sc-local {{- end }} {{- end }} {{/* Roost Nginx Service Type +When Gateway API is enabled the nginx service is always ClusterIP — the Gateway's +LoadBalancer is the external entry point. Legacy mode preserves cloud-specific types. */}} {{- define "nginxService.type" -}} -{{- if or (eq .Values.cloudConfig.clusterType "gke") (eq .Values.cloudConfig.clusterType "aks") }} +{{- if .Values.gateway.enabled }} +type: ClusterIP +{{- else if or (eq .Values.cloudConfig.clusterType "gke") (eq .Values.cloudConfig.clusterType "aks") }} type: ClusterIP {{- else }} type: LoadBalancer diff --git a/charts/roost/templates/roost-ai-server.yaml b/charts/roost/templates/roost-ai-server.yaml index 53f1e71..43f15dd 100644 --- a/charts/roost/templates/roost-ai-server.yaml +++ b/charts/roost/templates/roost-ai-server.yaml @@ -48,7 +48,8 @@ spec: spec: containers: - name: roost-ai-server - image: zbio/roostai-server:{{ .Values.roostConfig.roostVersion }} + # image: zbio/roostai-server:{{ .Values.roostConfig.roostVersion }} + image: zbio/roostai-server:latest envFrom: - configMapRef: name: roost-ai-server-config diff --git a/charts/roost/templates/roost-app.yaml b/charts/roost/templates/roost-app.yaml index 5c590e7..ddaf7e9 100644 --- a/charts/roost/templates/roost-app.yaml +++ b/charts/roost/templates/roost-app.yaml @@ -1,3 +1,6 @@ +{{- $hasTls := or .Values.gateway.tls.enabled (and .Values.acm.enabled (ne .Values.acm.arn "")) -}} +{{- $useHttp := and (eq .Values.cloudConfig.clusterType "local") (not $hasTls) -}} +{{- $protocol := ternary "http" "https" $useHttp -}} apiVersion: v1 kind: ConfigMap metadata: @@ -6,17 +9,19 @@ metadata: data: NODE_ENV: 'production' DEFAULT_PORT: '3000' - API_HOST_URL: 'https://{{ .Values.enterprise.domainURL }}/api' - LOGIN_REDIRECT_URL: 'https://{{ .Values.enterprise.domainURL }}/login' + API_HOST_URL: '{{ $protocol }}://{{ .Values.enterprise.domainURL }}/api' + LOGIN_REDIRECT_URL: '{{ $protocol }}://{{ .Values.enterprise.domainURL }}/login' NODE_DOMAIN_OR_IP: '{{ .Values.enterprise.domainURL }}' ROOST_VER: '{{ .Values.roostConfig.roostVersion }}' DB_VER: '{{ .Values.roostConfig.dbVersion }}' + # Auth Config GOOGLE_CLIENT_ID: '{{ .Values.auth.googleClientID }}' GOOGLE_CLIENT_SECRET: '{{ .Values.auth.googleClientSecret }}' AZURE_CLIENT_ID: '{{ .Values.auth.azureClientID }}' AZURE_CLIENT_SECRET: '{{ .Values.auth.azureClientSecret }}' + AZURE_TENANT_ID: '{{ .Values.auth.azureTenantID }}' GITHUB_CLIENT_ID: '{{ .Values.auth.githubClientID }}' GITHUB_CLIENT_SECRET: '{{ .Values.auth.githubClientSecret }}' LINKEDIN_CLIENT_ID: '{{ .Values.auth.linkedinClientID }}' @@ -34,31 +39,36 @@ data: PING_FEDERATE_CLIENT_ID: '{{ .Values.auth.pingFederateClientID }}' PING_FEDERATE_CLIENT_SECRET: '{{ .Values.auth.pingFederateClientSecret }}' + # Client Config ORG_NAME: '{{ .Values.enterprise.orgName }}' ORG_ADMIN_EMAIL: '{{ .Values.enterprise.orgAdminEmail }}' ORG_EMAIL_DOMAIN: '{{ .Values.enterprise.orgEmailDomain }}' - ORG_APP_NAME: '{{ .Values.enterprise.orgName }}' - # ORG_CLUSTER_LAUNCHER_IP: '' - JUMPHOST_SVC: 'roost-jump-svc' - EAAS_SVC: 'roost-backend-svc' - EAAS_SERVER_USERNAME: '' - EAAS_SERVER_KEY_PATH: '' + ORG_APP_NAME: '{{ .Values.enterprise.appName }}' + EAAS_SVC: '{{ .Values.eaasServerIp }}' + EAAS_SERVER_USERNAME: '{{ .Values.eaasServerUsername }}' + EAAS_SERVER_KEY_PATH: '{{ .Values.eaasServerPemKey }}' + # DB Config DB_HOST_TYPE: '{{ .Values.database.type }}' {{- if .Values.database.integrated }} - {{- if eq .Values.database.type "postgres" }} - DB_HOST: 'roost-postgres-db-svc' + {{- if eq .Values.database.type "postgres" }} + DB_HOST: 'roost-postgres-db-svc.{{ .Release.Namespace }}.svc.cluster.local' DB_PORT: '5432' DB_USERNAME: 'postgres' DB_PASSWORD: 'Roost#123' DB_SCHEMA_NAME: 'roostio' - {{- else }} - DB_HOST: 'roost-mysql-db-svc' + POSTGRES_PASSWORD: 'Roost#123' + POSTGRES_USER: 'postgres' + POSTGRES_DB: 'roostio' + {{- else }} + DB_HOST: 'roost-mysql-db-svc.{{ .Release.Namespace }}.svc.cluster.local' DB_PORT: '3306' - DB_USERNAME: 'root' - DB_PASSWORD: 'Roost#123' - DB_SCHEMA_NAME: 'roostio' - {{- end }} + DB_USERNAME: '{{ .Values.database.user }}' + DB_PASSWORD: '{{ .Values.database.password }}' + DB_SCHEMA_NAME: '{{ .Values.database.schema }}' + MYSQL_ROOT_PASSWORD: '{{ .Values.database.rootPassword }}' + MYSQL_DATABASE: '{{ .Values.database.schema }}' + {{- end }} {{- else }} DB_HOST: '{{ .Values.database.host }}' DB_PORT: '{{ .Values.database.port }}' @@ -67,20 +77,18 @@ data: DB_SCHEMA_NAME: '{{ .Values.database.schema }}' {{- end }} + # Email Config EMAIL_SENDER: '{{ .Values.email.sender }}' EMAIL_SENDER_PASS: '{{ .Values.email.senderPass }}' EMAIL_SMTP: '{{ .Values.email.smtp }}' EMAIL_SMTP_PORT: '{{ .Values.email.smtpPort }}' - JWT_SECRET: '{{ .Values.roostConfig.jwtSecret }}' + # Other Config LICENSE_KEY: '{{ .Values.roostConfig.licenseKey }}' - - ENABLE_SALESFORCE: 'false' - USE_IP_ADDRESS: 'false' - USE_ROOST_DEV: 'false' - ECS_MODE: 'true' + JWT_SECRET: '{{ .Values.auth.jwt_secret }}' USE_NO_AUTH: '{{ .Values.auth.noAuth }}' - LOCAL_AUTH_KEY: 'LocalKey/{{ .Values.auth.localKey }}' + USE_AS_ROOST_CLOUD_SERVER: '{{ .Values.roostConfig.useAsRoostCloudServer }}' + ECS_MODE: '{{ .Values.roostConfig.ecs_mode }}' --- apiVersion: v1 @@ -117,7 +125,7 @@ metadata: name: roost-app namespace: {{ .Release.Namespace }} spec: - replicas: 1 + replicas: {{ .Values.roostConfig.roostAppReplicas }} selector: matchLabels: app: roost-app @@ -125,6 +133,8 @@ spec: metadata: labels: app: roost-app + annotations: + checksum/config: {{ toYaml (pick .Values "database" "enterprise" "email" "auth" "eaasServerIp" "eaasServerPemKey" "eaasServerUsername" "roostConfig") | sha256sum }} spec: containers: - name: roost-app diff --git a/charts/roost/templates/roost-backend-svc.yaml b/charts/roost/templates/roost-backend-svc.yaml index 262644e..94480c3 100644 --- a/charts/roost/templates/roost-backend-svc.yaml +++ b/charts/roost/templates/roost-backend-svc.yaml @@ -11,18 +11,6 @@ spec: protocol: TCP port: 60007 targetPort: ai-server-port -{{- if .Values.roostConfig.enableClusterLauncher }} - - name: roost-launcher - protocol: TCP - port: 60002 - targetPort: launcher-port -{{- end }} -{{- if .Values.roostConfig.enableEaasServer }} - - name: roost-eaas - protocol: TCP - port: 60003 - targetPort: eaas-port -{{- end }} --- diff --git a/charts/roost/templates/roost-eaas.yaml b/charts/roost/templates/roost-eaas.yaml deleted file mode 100644 index 842409e..0000000 --- a/charts/roost/templates/roost-eaas.yaml +++ /dev/null @@ -1,68 +0,0 @@ -{{- if .Values.roostConfig.enableEaasServer }} - -apiVersion: v1 -kind: ConfigMap -metadata: - name: roost-eaas-config - namespace: {{ .Release.Namespace }} -data: - VERBOSE_LEVEL: '{{ .Values.roostConfig.verboseLevel }}' - ENT_SERVER: '{{ .Values.enterprise.domainURL }}' - AUTH_KEY: '{{ .Values.auth.localKey }}' - ROOST_VER: '{{ .Values.roostConfig.roostVersion }}' - DEPLOYED_IN_K8S: 'true' - ROOST_AI_NS: '{{ .Release.Namespace }}' - RELEASE_SERVER_PVC: 'roost-eaas-pvc' - ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: roost-eaas-pvc - namespace: {{ .Release.Namespace }} -spec: - accessModes: - - ReadWriteMany - resources: - requests: - storage: 10Gi -{{- include "cluster.storageClassName" . | indent 2 }} - ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: roost-eaas - namespace: {{ .Release.Namespace }} -spec: - replicas: 1 - selector: - matchLabels: - app: roost-eaas - svc_group: roost-backend-svc - template: - metadata: - labels: - app: roost-eaas - svc_group: roost-backend-svc - spec: - containers: - - name: roost-eaas - image: zbio/roost-eaas:{{ .Values.roostConfig.roostVersion }} - envFrom: - - configMapRef: - name: roost-eaas-config - volumeMounts: - - mountPath: /var/tmp/Roost - name: roost-eaas-data - ports: - - name: eaas-port - containerPort: 60003 - imagePullPolicy: Always - volumes: - - name: roost-eaas-data - persistentVolumeClaim: - claimName: roost-eaas-pvc - ---- -{{- end }} diff --git a/charts/roost/templates/roost-jump.yaml b/charts/roost/templates/roost-jump.yaml deleted file mode 100644 index 7ed9cb3..0000000 --- a/charts/roost/templates/roost-jump.yaml +++ /dev/null @@ -1,77 +0,0 @@ -{{- if .Values.roostConfig.enableJumphost }} - -apiVersion: v1 -kind: ConfigMap -metadata: - name: roost-jump-config - namespace: {{ .Release.Namespace }} -data: - JUMPHOST: 'true' - ENT_SERVER: '{{ .Values.enterprise.domainURL }}' - ROOST_LOCAL_KEY: '{{ .Values.auth.localKey }}' - RUN_AS_CONTAINER: 'true' - VERBOSE_LEVEL: '{{ .Values.roostConfig.verboseLevel }}' - ---- -apiVersion: v1 -kind: Service -metadata: - name: roost-jump-svc - namespace: {{ .Release.Namespace }} -spec: - selector: - app: roost-jump - ports: - - protocol: TCP - port: 60001 - targetPort: 60001 - ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: roost-jump-pvc - namespace: {{ .Release.Namespace }} -spec: - accessModes: - - ReadWriteMany - resources: - requests: - storage: 10Gi -{{- include "cluster.storageClassName" . | indent 2 }} - ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: roost-jump - namespace: {{ .Release.Namespace }} -spec: - replicas: 1 - selector: - matchLabels: - app: roost-jump - template: - metadata: - labels: - app: roost-jump - spec: - containers: - - name: roost-jump - image: zbio/roost-jump:{{ .Values.roostConfig.roostVersion }} - envFrom: - - configMapRef: - name: roost-jump-config - volumeMounts: - - mountPath: /var/tmp/Roost - name: roost-jump-data - ports: - - containerPort: 60001 - imagePullPolicy: Always - volumes: - - name: roost-jump-data - persistentVolumeClaim: - claimName: roost-jump-pvc - ---- -{{- end }} diff --git a/charts/roost/templates/roost-launcher.yaml b/charts/roost/templates/roost-launcher.yaml deleted file mode 100644 index 088a18f..0000000 --- a/charts/roost/templates/roost-launcher.yaml +++ /dev/null @@ -1,68 +0,0 @@ -{{- if .Values.roostConfig.enableClusterLauncher }} - -apiVersion: v1 -kind: ConfigMap -metadata: - name: roost-launcher-config - namespace: {{ .Release.Namespace }} -data: - APP_NAME: '{{ .Values.enterprise.orgName }}' - ENT_SERVER: '{{ .Values.enterprise.domainURL }}' - AUTH_KEY: '{{ .Values.auth.localKey }}' - CIDR_BLOCK: '' - ROOST_REGION: '' - ROOST_VPC: '' - VERBOSE_LEVEL: '{{ .Values.roostConfig.verboseLevel }}' - ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: roost-launcher-pvc - namespace: {{ .Release.Namespace }} -spec: - accessModes: - - ReadWriteMany - resources: - requests: - storage: 10Gi -{{- include "cluster.storageClassName" . | indent 2 }} - ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: roost-launcher - namespace: {{ .Release.Namespace }} -spec: - replicas: 1 - selector: - matchLabels: - app: roost-launcher - svc_group: roost-backend-svc - template: - metadata: - labels: - app: roost-launcher - svc_group: roost-backend-svc - spec: - containers: - - name: roost-launcher - image: zbio/roost-launcher:{{ .Values.roostConfig.roostVersion }} - envFrom: - - configMapRef: - name: roost-launcher-config - volumeMounts: - - mountPath: /var/tmp/Roost - name: roost-launcher-data - ports: - - name: launcher-port - containerPort: 60002 - imagePullPolicy: Always - volumes: - - name: roost-launcher-data - persistentVolumeClaim: - claimName: roost-launcher-pvc - ---- -{{- end }} diff --git a/charts/roost/templates/roost-local-dns.yaml b/charts/roost/templates/roost-local-dns.yaml new file mode 100644 index 0000000..f2a7c12 --- /dev/null +++ b/charts/roost/templates/roost-local-dns.yaml @@ -0,0 +1,66 @@ +{{/* +In-cluster hairpin routing fix for local/Docker Desktop deployments. + +Problem: roost-app pods call http://{{ enterprise.domainURL }}/ which resolves via +CoreDNS to 127.0.0.1 (pod loopback) for .localhost domains — the request never +reaches the NGINX Gateway Fabric LoadBalancer. + +Fix: Exploit CoreDNS search domains. For a domain like "localroost.localhost", +CoreDNS in a pod will search ".svc.cluster.local". If a Service named +"localroost" exists in namespace "localhost", the query +"localroost.localhost.svc.cluster.local" matches and returns a CNAME to the +NGINX Gateway Fabric service — hairpin routing works without patching CoreDNS. + +REQUIREMENT: enterprise.domainURL must be a two-part domain (exactly one dot), +e.g., "localroost.localhost" or "roostai.test". +Multi-dot domains like "dev.roost.ai" are skipped (not applicable for local dev +anyway — use a simple two-part domain for Docker Desktop testing). + +Flow (from inside a pod): + localroost.localhost + → CoreDNS search: localroost.localhost.svc.cluster.local + → matches ExternalName Service "localroost" in namespace "localhost" + → CNAME → nginx-gateway-fabric.nginx-gateway.svc.cluster.local + → NGINX Gateway Fabric port 80 + → Gateway roost-gateway → HTTPRoute roost-route + → roost-nginx-svc:80 → roost-nginx pod + +Only rendered when: + gateway.enabled=true AND clusterType=local AND domainURL has exactly one dot +*/}} + +{{- if and .Values.gateway.enabled (eq .Values.cloudConfig.clusterType "local") }} +{{- $parts := splitList "." .Values.enterprise.domainURL }} +{{- $svcName := first $parts }} +{{- $nsName := join "." (rest $parts) }} +{{- /* Only render when the namespace part is a single DNS label (no dots). */}} +{{- if and $svcName $nsName (not (contains "." $nsName)) }} +apiVersion: v1 +kind: Namespace +metadata: + name: {{ $nsName }} + labels: + app.kubernetes.io/managed-by: {{ .Release.Service }} + helm.sh/chart: roost-local-dns + +--- + +apiVersion: v1 +kind: Service +metadata: + name: {{ $svcName }} + namespace: {{ $nsName }} + labels: + app.kubernetes.io/managed-by: {{ .Release.Service }} + helm.sh/chart: roost-local-dns +spec: + type: ExternalName + externalName: {{ .Values.gateway.nginxGatewayService }} + ports: + - port: 80 + protocol: TCP + name: http + +--- +{{- end }} +{{- end }} diff --git a/charts/roost/templates/roost-mysql-db.yaml b/charts/roost/templates/roost-mysql-db.yaml index a0c452d..c761866 100644 --- a/charts/roost/templates/roost-mysql-db.yaml +++ b/charts/roost/templates/roost-mysql-db.yaml @@ -6,10 +6,14 @@ metadata: name: roost-mysql-db-config namespace: {{ .Release.Namespace }} data: - MYSQL_ROOT_PASSWORD: 'Roost#123' # '{{ .Values.database.password }}' - MYSQL_DATABASE: 'roostio' # '{{ .Values.database.schema }}' - MYSQL_USER: 'roost' # '{{ .Values.database.user }}' - MYSQL_PASSWORD: 'Roost#123' # '{{ .Values.database.password }}' + # MYSQL_ROOT_PASSWORD: 'Roost#123' # '{{ .Values.database.password }}' + # MYSQL_DATABASE: 'roostio' # '{{ .Values.database.schema }}' + # MYSQL_USER: 'roost' # '{{ .Values.database.user }}' + # MYSQL_PASSWORD: 'Roost#123' # '{{ .Values.database.password }}' + MYSQL_ROOT_PASSWORD: "{{ .Values.database.rootPassword }}" + MYSQL_DATABASE: "{{ .Values.database.schema }}" + MYSQL_USER: "{{ .Values.database.user }}" + MYSQL_PASSWORD: "{{ .Values.database.password }}" --- apiVersion: v1 @@ -25,28 +29,15 @@ spec: port: 3306 targetPort: 3306 ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: roost-mysql-db-pvc - namespace: {{ .Release.Namespace }} -spec: - accessModes: - - ReadWriteMany - resources: - requests: - storage: 10Gi -{{- include "cluster.storageClassName" . | indent 2 }} - --- apiVersion: apps/v1 -kind: Deployment +kind: StatefulSet metadata: name: roost-mysql-db namespace: {{ .Release.Namespace }} spec: replicas: 1 + serviceName: roost-mysql-db-svc selector: matchLabels: app: roost-mysql-db @@ -64,17 +55,22 @@ spec: volumeMounts: - mountPath: /var/lib/mysql name: roost-mysql-db-data - # subPath: roostai_mysql_data ports: - containerPort: 3306 args: - --bind-address=* - --default-authentication-plugin=mysql_native_password imagePullPolicy: Always - volumes: - - name: roost-mysql-db-data - persistentVolumeClaim: - claimName: roost-mysql-db-pvc + volumeClaimTemplates: + - metadata: + name: roost-mysql-db-data + spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi +{{- include "cluster.storageClassName" . | indent 8 }} --- {{- end }} diff --git a/charts/roost/templates/roost-nginx.yaml b/charts/roost/templates/roost-nginx.yaml index 32cc31f..2cf9283 100644 --- a/charts/roost/templates/roost-nginx.yaml +++ b/charts/roost/templates/roost-nginx.yaml @@ -18,14 +18,17 @@ kind: Service metadata: name: roost-nginx-svc namespace: {{ .Release.Namespace }} -{{- if .Values.acm.enabled }} - annotations: - service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} - service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing -{{- end }} -{{- if eq .Values.cloudConfig.clusterType "gke" }} +{{- if not .Values.gateway.enabled }} +{{- if or (and .Values.acm.enabled (ne .Values.acm.arn "")) (eq .Values.cloudConfig.clusterType "gke") }} annotations: + {{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} + service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} + service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing + {{- end }} + {{- if eq .Values.cloudConfig.clusterType "gke" }} cloud.google.com/neg: '{"ingress": true}' + {{- end }} +{{- end }} {{- end }} spec: {{- include "nginxService.type" . | indent 2 }} @@ -43,6 +46,81 @@ spec: --- +{{- if .Values.gateway.enabled }} + +{{- if .Values.gateway.createGatewayClass }} +apiVersion: gateway.networking.k8s.io/v1 +kind: GatewayClass +metadata: + name: {{ .Values.gateway.className }} +spec: + controllerName: gateway.nginx.org/nginx-gateway-fabric + +--- +{{- end }} + +apiVersion: gateway.networking.k8s.io/v1 +kind: Gateway +metadata: + name: roost-gateway + namespace: {{ .Release.Namespace }} +spec: + gatewayClassName: {{ .Values.gateway.className }} +{{- if or (and .Values.acm.enabled (ne .Values.acm.arn "")) .Values.gateway.infraAnnotations }} + infrastructure: + annotations: + {{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} + service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} + service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing + {{- end }} + {{- range $key, $val := .Values.gateway.infraAnnotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} +{{- end }} + listeners: + - name: http + port: 80 + protocol: HTTP + allowedRoutes: + namespaces: + from: Same +{{- if and .Values.gateway.tls.enabled (ne .Values.gateway.tls.secretName "") }} + - name: https + port: 443 + protocol: HTTPS + hostname: {{ .Values.enterprise.domainURL | quote }} + tls: + mode: Terminate + certificateRefs: + - kind: Secret + name: {{ .Values.gateway.tls.secretName }} + allowedRoutes: + namespaces: + from: Same +{{- end }} + +--- + +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute +metadata: + name: roost-route + namespace: {{ .Release.Namespace }} +spec: + parentRefs: + - name: roost-gateway + namespace: {{ .Release.Namespace }} + hostnames: + - {{ .Values.enterprise.domainURL | quote }} + rules: + - backendRefs: + - name: roost-nginx-svc + port: 80 + +--- + +{{- else }} + {{- if or (eq .Values.cloudConfig.clusterType "gke") (eq .Values.cloudConfig.clusterType "aks") }} {{- if .Values.certificateManager.createNew }} apiVersion: networking.gke.io/v1 @@ -68,12 +146,12 @@ metadata: kubernetes.io/ingress.class: gce {{- end }} {{- if .Values.azureCerts.enabled }} - kubernetes.azure.com/tls-cert-keyvault-uri: {{ .Values.azureCerts.identifier }} + kubernetes.azure.com/tls-cert-keyvault-uri: {{ .Values.azureCerts.identifier }} {{- end }} {{- if .Values.certificateManager.createNew }} networking.gke.io/managed-certificates: roost-gcp-cert {{- else if eq .Values.cloudConfig.clusterType "gke" }} - ingress.gcp.kubernetes.io/pre-shared-cert: {{ .Values.certificateManager.existingCert }} + ingress.gcp.kubernetes.io/pre-shared-cert: {{ .Values.certificateManager.existingCert }} {{- end }} spec: {{- if eq .Values.cloudConfig.clusterType "aks" }} @@ -88,8 +166,12 @@ spec: tls: - secretName: keyvault-roost-{{ .Values.cloudConfig.clusterType }}-ingress {{- end }} + --- {{- end }} + +{{- end }} + apiVersion: apps/v1 kind: Deployment metadata: diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index a106e5b..ef6199d 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -33,7 +33,7 @@ metadata: provisioner: file.csi.azure.com parameters: protocol: nfs - # skuName: Standard_LRS # available values: Premium_LRS, Premium_ZRS, Standard_LRS, Standard_GRS, Standard_ZRS, Standard_RAGRS, Standard_RAGZRS + skuName: Premium_LRS # NFS protocol requires Premium tier; options: Premium_LRS, Premium_ZRS, Standard_LRS, Standard_GRS, Standard_ZRS, Standard_RAGRS, Standard_RAGZRS allowVolumeExpansion: true reclaimPolicy: Delete volumeBindingMode: Immediate @@ -42,3 +42,19 @@ mountOptions: --- {{- end}} + +{{- if eq .Values.cloudConfig.clusterType "local" }} +apiVersion: v1 +kind: PersistentVolume +metadata: + name: local-pv +spec: + capacity: + storage: 30Gi + accessModes: + - ReadWriteMany + storageClassName: roost-sc-local + hostPath: + path: {{ .Values.cloudConfig.localStoragePath }} +--- +{{- end}} diff --git a/charts/roost/templates/roost-web.yaml b/charts/roost/templates/roost-web.yaml index aa1e381..147d8ea 100644 --- a/charts/roost/templates/roost-web.yaml +++ b/charts/roost/templates/roost-web.yaml @@ -1,16 +1,20 @@ +{{- $hasTls := or .Values.gateway.tls.enabled (and .Values.acm.enabled (ne .Values.acm.arn "")) -}} +{{- $useHttp := and (eq .Values.cloudConfig.clusterType "local") (not $hasTls) -}} +{{- $protocol := ternary "http" "https" $useHttp -}} apiVersion: v1 kind: ConfigMap metadata: name: roost-web-config namespace: {{ .Release.Namespace }} data: - REACT_APP_API_HOST: 'https://{{ .Values.enterprise.domainURL }}/api' - REACT_APP_REDIRECT_URI: 'https://{{ .Values.enterprise.domainURL }}/login' + REACT_APP_API_HOST: '{{ $protocol }}://{{ .Values.enterprise.domainURL }}/api' + REACT_APP_REDIRECT_URI: '{{ $protocol }}://{{ .Values.enterprise.domainURL }}/login' REACT_APP_ENTERPRISE_LOGO: '{{ .Values.enterprise.logo }}' - REACT_APP_REMOTE_CONSOLE_PROXY: 'https://{{ .Values.enterprise.domainURL }}' + REACT_APP_REMOTE_CONSOLE_PROXY: '{{ $protocol }}://{{ .Values.enterprise.domainURL }}' REACT_APP_GOOGLE_CLIENT_ID: '{{ .Values.auth.googleClientID }}' REACT_APP_AZURE_CLIENT_ID: '{{ .Values.auth.azureClientID }}' + REACT_APP_AZURE_TENANT_ID: '{{ .Values.auth.azureTenantID }}' REACT_APP_GITHUB_CLIENT_ID: '{{ .Values.auth.githubClientID }}' REACT_APP_LINKEDIN_CLIENT_ID: '{{ .Values.auth.linkedinClientID }}' REACT_APP_OKTA_CLIENT_ISSUER: '{{ .Values.auth.oktaClientIssuer }}' @@ -21,8 +25,9 @@ data: REACT_APP_AUTH0_CLIENT_ID: '{{ .Values.auth.auth0ClientID }}' REACT_APP_PING_FEDERATE_CLIENT_ISSUER: '{{ .Values.auth.pingFederateClientIssuer }}' REACT_APP_PING_FEDERATE_CLIENT_ID: '{{ .Values.auth.pingFederateClientID }}' + REACT_APP_OTP_LOGIN_ENABLED: '{{ .Values.auth.otpLogin }}' - REACT_APP_COOKIE_SECURE: 'true' + REACT_APP_COOKIE_SECURE: '{{ not $useHttp }}' REACT_APP_COOKIE_DOMAIN: '{{ .Values.enterprise.domainURL }}' REACT_APP_ROOST_VER: '{{ .Values.roostConfig.roostVersion }}' @@ -36,6 +41,7 @@ data: {{- end }} REACT_APP_ONLY_ROOSTGPT: '{{ .Values.roostConfig.onlyGPT }}' REACT_APP_NO_AUTH: '{{ .Values.auth.noAuth }}' + REACT_APP_USE_AS_ROOST_CLOUD_SERVER: '{{ .Values.roostConfig.useAsRoostCloudServer }}' --- apiVersion: v1 diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index 9f13884..0377bc5 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -1,26 +1,62 @@ # Default values for .. # This is a YAML-formatted file. # Declare variables to be passed into your templates. +# +# ─── SECRET VALUES ──────────────────────────────────────────────────────────── +# This file (values.yaml) contains only non-secret defaults and is safe to +# commit to git. +# +# Create a separate file for secrets (e.g. values-secret.yaml) that is listed +# in .gitignore and pass it at deploy time: +# +# helm upgrade --install roost charts/roost \ +# -f charts/roost/values.yaml \ +# -f charts/roost/values-secret.yaml \ +# -n roost --create-namespace +# +# Typical values-secret.yaml contents: +# database: +# password: '' +# rootPassword: '' +# auth: +# localKey: '' +# jwt_secret: '' +# googleClientSecret: '' +# githubClientSecret: '' +# # ... other OAuth secrets +# email: +# senderPass: '' +# roostConfig: +# licenseKey: '' +# acm: +# arn: '' # EKS only +# cloudConfig: +# efsFileSystemID: '' # EKS only +# ────────────────────────────────────────────────────────────────────────────── database: integrated: true # true/false type: mysql # mysql/postgres # Specify, if database.integrated = false + # For integrated MySQL in the same namespace, use: roost-mysql-db-svc..svc.cluster.local host: '' port: 3306 - schema: '' - user: '' + schema: 'roostio' + user: 'root' password: '' + rootPassword: '' auth: - noAuth: false # true/false + noAuth: true # true/false + otpLogin: true # true/false googleClientID: '' googleClientSecret: '' azureClientID: '' azureClientSecret: '' + azureTenantID: '' githubClientID: '' githubClientSecret: '' @@ -28,8 +64,8 @@ auth: linkedinClientID: '' linkedinClientSecret: '' - oktaClientIssuer: '' - oktaClientID: '' + oktaClientIssuer: 'https://integrator-9683991.okta.com/oauth2/default' + oktaClientID: '0oa10qvprv5Tg1aqF698' oktaClientSecret: '' azureADFSClientIssuer: '' @@ -40,51 +76,64 @@ auth: auth0ClientID: '' auth0ClientSecret: '' + xauth0ClientIssuer: '' + xauth0ClientID: '' + xauth0ClientSecret: '' + pingFederateClientIssuer: '' pingFederateClientID: '' pingFederateClientSecret: '' # REQUIRED: local auth key for roost, example : 06b5e496f8f53139de7d2cc03b1e71ce localKey: '' + jwt_secret: 'abcdadslkjfla1394cfvbwrjq4584163' enterprise: # logo url logo: https://roost.ai/hubfs/logos/Roost.ai-logo-gold.svg + appName: '' # domain where roostAI will be hosted, example : test.example.com - domainURL: '' + domainURL: 'localroost.localhost' # configure organisation name - don't use spaces orgName: '' # admin email, example suppor@zb.io orgAdminEmail: '' # email domain, example zb.io orgEmailDomain: '' + sslCertificatePath: '' + sslCertificateKeyPath: '' # configure email for email notification support email: sender: '' senderPass: '' + senderPassword: '' smtp: '' - smtpPort: '' + smtpPort: '465' roostConfig: licenseKey: '' # provide license key obtained from roost - jwtSecret: '' # 32-character-secure-long-secret + + roostAppReplicas: 1 # number of roost-app replicas; PVC uses ReadWriteMany to share across replicas enableRoostGPT: true # true/false - enableEaasServer: false # true/false - enableClusterLauncher: false # true/false - enableJumphost: false # true/false onlyGPT: false # true/false + useAsRoostCloudServer: true # true/false # roostVersion and dbVersion can be based on helm chart versioning - roostVersion: 'latest' + roostVersion: 'v1.2.0' dbVersion: 'v1.1.0' verboseLevel: 2 + ecs_mode: true cloudConfig: - clusterType: '' # eks/gke/aks/local + clusterType: 'local' # eks/gke/aks/local efsFileSystemID: '' # Specify only if cloud_provider.type = eks + # GKE note: clusterType=gke requires the Filestore CSI addon enabled on the cluster. + # It creates the 'standard-rwx' StorageClass automatically. Enable via: + # gcloud container clusters update --update-addons=GcpFilestoreCsiDriver=ENABLED + localStoragePath: '/tmp/roost-storage' # hostPath for local clusterType; must exist on the node # provide aws acm arn for certificates for eks acm: @@ -103,4 +152,76 @@ azureCerts: # https://.vault.azure.net/certificates// identifier: '' -storageClass: \ No newline at end of file +gateway: + # Enable NGINX Gateway API mode. + # Requires NGINX Gateway Fabric (v2.4+) installed in the cluster. + # + # ── How traffic flows (gateway.enabled: true) ──────────────────────────── + # Internet + # └─► Cloud LoadBalancer (attached to NGF's own Service in nginx-gateway ns) + # └─► NGINX Gateway Fabric pod (reads Gateway + HTTPRoute resources) + # └─► roost-nginx-svc (ClusterIP — never exposed directly) + # └─► roost-nginx pod (reverse proxy → backend / frontend) + # + # Per cloud provider: + # EKS — AWS NLB is created for NGF Service. + # TLS: set acm.enabled=true + acm.arn → chart injects ACM annotation + # onto the Gateway infrastructure block; NLB terminates TLS. + # GKE — Google L4 NLB is created for NGF Service. + # TLS: use cert-manager to provision a K8s Secret, then set + # gateway.tls.enabled=true + gateway.tls.secretName. + # (GKE managed-cert annotations are NOT supported on Gateway resources.) + # AKS — Azure Standard LB is created for NGF Service. + # TLS: same as GKE — cert-manager + gateway.tls.enabled + secretName. + # local — Docker Desktop exposes NGF on 127.0.0.1; no TLS needed. + # ───────────────────────────────────────────────────────────────────────── + # + # Install steps: + # 1. Install Gateway API CRDs (skip if already installed, e.g. Docker Desktop >= 4.27): + # Check: kubectl get crd gatewayclasses.gateway.networking.k8s.io \ + # -o jsonpath='{.metadata.annotations.gateway\.networking\.k8s\.io/bundle-version}' + # Install (only if not present or older than v1.2): + # kubectl kustomize "https://github.com/nginx/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v2.4.2" | kubectl apply -f - + # + # 2. Install NGINX Gateway Fabric via Helm: + # # Use --skip-crds if Gateway API CRDs v1.5+ are already installed (avoids downgrade conflict) + # helm install ngf oci://ghcr.io/nginx/charts/nginx-gateway-fabric \ + # --create-namespace -n nginx-gateway --skip-crds + # + # Set to false to use legacy Ingress/LoadBalancer mode (backward-compatible). + enabled: true + + # GatewayClass name — must match the NGINX Gateway Fabric's GatewayClass name. + className: nginx + + # Set true ONLY if you want this chart to create the GatewayClass resource. + # If NGINX Gateway Fabric is already installed cluster-wide it creates its own — leave false. + createGatewayClass: false + + # TLS: reference a Kubernetes Secret containing tls.crt + tls.key. + # Leave disabled for HTTP-only deployments (local dev). + # Use cert-manager to auto-provision the Secret in cloud environments. + tls: + enabled: false + secretName: 'roost-tls-secret' + + # Extra annotations forwarded to the Gateway's infrastructure (underlying LoadBalancer Service). + # EKS+ACM annotations are auto-populated from acm.enabled / acm.arn above. + # Add custom cloud LB annotations here if needed. + infraAnnotations: {} + # Example: + # service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing + + # FQDN of the NGINX Gateway Fabric's traffic service used for in-cluster hairpin routing. + # Format: -nginx-gateway-fabric..svc.cluster.local + # If installed with: helm install ngf ... -n nginx-gateway → use the default below. + nginxGatewayService: 'ngf-nginx-gateway-fabric.nginx-gateway.svc.cluster.local' + +storageClass: hostpath + +pvcs: + aiServer: 'local-pvc' + +eaasServerIp: '' +eaasServerPemKey : '' +eaasServerUsername : '' \ No newline at end of file From 7145bb5b4a0c1152fb781644eb1520335235fe51 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Mon, 9 Mar 2026 16:36:10 +0530 Subject: [PATCH 13/38] release roostgpt --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 8582 -> 14630 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index 379b3d0..573f367 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2025-09-17T10:40:59.946576+05:30" + created: "2026-03-09T16:34:42.235429+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 5b3eabc32975cc883b53a25d139207380fa39c60f7a05940a4fbc26135c2fe9a + digest: 17ccf831d1c972ede69fc966501679b4cb7a88096482e908b6b96553462d2fc5 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2025-09-17T10:40:59.942517+05:30" +generated: "2026-03-09T16:34:42.233832+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 5527c851896633dfb928481e79f57d06ba8739ae..2875758a88f005490cd2dd609503b069011ac018 100644 GIT binary patch literal 14630 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 azkGfASn>P<{pXiRP*2V)JlGQ$*na`yv$28z literal 8582 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 M|BFK07XZQl0Gq+kk^lez From 0f90749a35f187cc5e322c8f66bec0495e027173 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 11 Mar 2026 09:57:31 +0530 Subject: [PATCH 14/38] update mysql for eks --- charts/roost/templates/roost-mysql-db.yaml | 9 +++++++-- charts/roost/templates/roost-sc.yaml | 11 +---------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/charts/roost/templates/roost-mysql-db.yaml b/charts/roost/templates/roost-mysql-db.yaml index c761866..37df2cc 100644 --- a/charts/roost/templates/roost-mysql-db.yaml +++ b/charts/roost/templates/roost-mysql-db.yaml @@ -12,8 +12,8 @@ data: # MYSQL_PASSWORD: 'Roost#123' # '{{ .Values.database.password }}' MYSQL_ROOT_PASSWORD: "{{ .Values.database.rootPassword }}" MYSQL_DATABASE: "{{ .Values.database.schema }}" - MYSQL_USER: "{{ .Values.database.user }}" - MYSQL_PASSWORD: "{{ .Values.database.password }}" + # MYSQL_USER: "{{ .Values.database.user }}" + # MYSQL_PASSWORD: "{{ .Values.database.password }}" --- apiVersion: v1 @@ -46,6 +46,10 @@ spec: labels: app: roost-mysql-db spec: + securityContext: + fsGroup: 999 # Ensures the mounted volume is readable/writable by MySQL + runAsUser: 999 # Matches the MySQL container user + runAsGroup: 999 containers: - name: roost-mysql-db image: zbio/roostai_mysql_db:{{ .Values.roostConfig.dbVersion }} @@ -55,6 +59,7 @@ spec: volumeMounts: - mountPath: /var/lib/mysql name: roost-mysql-db-data + subPath: mysql-data ports: - containerPort: 3306 args: diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index ef6199d..cfd4474 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -6,17 +6,8 @@ metadata: provisioner: efs.csi.aws.com parameters: fileSystemId: {{ .Values.cloudConfig.efsFileSystemID }} - provisioner: efs.csi.aws.com provisioningMode: efs-ap - - directoryPerms: '777' - filePerms: '666' - - uid: '0' - gid: '0' - # gidRangeStart: 1000 - # gidRangeEnd: 2000 - + directoryPerms: '777' # High permissions to allow containers to chown if needed basePath: /var/tmp/Roost # Below properties will work in new release of https://github.com/kubernetes-sigs/aws-efs-csi-driver # subPathPattern: '/${.PVC.name}/${.PVC.namespace}' From 012dce335656db60eab2393a2a4837bbc06d9b89 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 11 Mar 2026 09:58:36 +0530 Subject: [PATCH 15/38] Release artifacts --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 14630 -> 14792 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index 573f367..e83b1b0 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-09T16:34:42.235429+05:30" + created: "2026-03-11T09:58:03.983071+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 17ccf831d1c972ede69fc966501679b4cb7a88096482e908b6b96553462d2fc5 + digest: dc0f9dae2180189539d7cf7db277b2e37e225553b5e829c9869b555025bf1616 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-09T16:34:42.233832+05:30" +generated: "2026-03-11T09:58:03.981442+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 2875758a88f005490cd2dd609503b069011ac018..72331c66fb1ddb48b1ea823b59f6c0db44acb8bc 100644 GIT binary patch literal 14792 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 azkGfASn>P<{pXiRP*2V)JlGQ$*na`yv$28z From e3a1fc7d995c4c090d69a5b360e5f8862452a75b Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 11 Mar 2026 15:53:49 +0530 Subject: [PATCH 16/38] Add ssl ports --- charts/roost/templates/roost-ai-server.yaml | 3 +-- charts/roost/templates/roost-nginx.yaml | 13 ++++++++++++- charts/roost/values.yaml | 6 +++--- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/charts/roost/templates/roost-ai-server.yaml b/charts/roost/templates/roost-ai-server.yaml index 43f15dd..53f1e71 100644 --- a/charts/roost/templates/roost-ai-server.yaml +++ b/charts/roost/templates/roost-ai-server.yaml @@ -48,8 +48,7 @@ spec: spec: containers: - name: roost-ai-server - # image: zbio/roostai-server:{{ .Values.roostConfig.roostVersion }} - image: zbio/roostai-server:latest + image: zbio/roostai-server:{{ .Values.roostConfig.roostVersion }} envFrom: - configMapRef: name: roost-ai-server-config diff --git a/charts/roost/templates/roost-nginx.yaml b/charts/roost/templates/roost-nginx.yaml index 2cf9283..ec2c18c 100644 --- a/charts/roost/templates/roost-nginx.yaml +++ b/charts/roost/templates/roost-nginx.yaml @@ -24,6 +24,8 @@ metadata: {{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing + service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443" + service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http {{- end }} {{- if eq .Values.cloudConfig.clusterType "gke" }} cloud.google.com/neg: '{"ingress": true}' @@ -72,6 +74,8 @@ spec: {{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing + service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443" + service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http {{- end }} {{- range $key, $val := .Values.gateway.infraAnnotations }} {{ $key }}: {{ $val | quote }} @@ -84,7 +88,14 @@ spec: allowedRoutes: namespaces: from: Same -{{- if and .Values.gateway.tls.enabled (ne .Values.gateway.tls.secretName "") }} +{{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} + - name: https + port: 443 + protocol: HTTP + allowedRoutes: + namespaces: + from: Same +{{- else if and .Values.gateway.tls.enabled (ne .Values.gateway.tls.secretName "") }} - name: https port: 443 protocol: HTTPS diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index 0377bc5..ca9823c 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -182,11 +182,11 @@ gateway: # -o jsonpath='{.metadata.annotations.gateway\.networking\.k8s\.io/bundle-version}' # Install (only if not present or older than v1.2): # kubectl kustomize "https://github.com/nginx/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v2.4.2" | kubectl apply -f - - # + # kubectl apply --server-side -f https://raw.githubusercontent.com/nginx/nginx-gateway-fabric/v2.4.2/deploy/crds.yaml + # 2. Install NGINX Gateway Fabric via Helm: # # Use --skip-crds if Gateway API CRDs v1.5+ are already installed (avoids downgrade conflict) - # helm install ngf oci://ghcr.io/nginx/charts/nginx-gateway-fabric \ - # --create-namespace -n nginx-gateway --skip-crds + # helm install ngf oci://ghcr.io/nginx/charts/nginx-gateway-fabric --create-namespace -n nginx-gateway --skip-crds # # Set to false to use legacy Ingress/LoadBalancer mode (backward-compatible). enabled: true From 45a7e4c6fa3101209f8f7f2a8dd128d633a569ae Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 11 Mar 2026 18:07:46 +0530 Subject: [PATCH 17/38] Add EAAS_SVC --- charts/roost/templates/roost-app.yaml | 6 +++--- charts/roost/values.yaml | 5 ++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/charts/roost/templates/roost-app.yaml b/charts/roost/templates/roost-app.yaml index ddaf7e9..e8f56ed 100644 --- a/charts/roost/templates/roost-app.yaml +++ b/charts/roost/templates/roost-app.yaml @@ -44,7 +44,7 @@ data: ORG_ADMIN_EMAIL: '{{ .Values.enterprise.orgAdminEmail }}' ORG_EMAIL_DOMAIN: '{{ .Values.enterprise.orgEmailDomain }}' ORG_APP_NAME: '{{ .Values.enterprise.appName }}' - EAAS_SVC: '{{ .Values.eaasServerIp }}' + EAAS_SVC: '{{ if .Values.eaasServerIp }}{{ .Values.eaasServerIp }}{{ else }}roost-backend-svc.{{ .Release.Namespace }}.svc.{{ .Values.clusterDomain }}{{ end }}' EAAS_SERVER_USERNAME: '{{ .Values.eaasServerUsername }}' EAAS_SERVER_KEY_PATH: '{{ .Values.eaasServerPemKey }}' @@ -52,7 +52,7 @@ data: DB_HOST_TYPE: '{{ .Values.database.type }}' {{- if .Values.database.integrated }} {{- if eq .Values.database.type "postgres" }} - DB_HOST: 'roost-postgres-db-svc.{{ .Release.Namespace }}.svc.cluster.local' + DB_HOST: 'roost-postgres-db-svc.{{ .Release.Namespace }}.svc.{{ .Values.clusterDomain }}' DB_PORT: '5432' DB_USERNAME: 'postgres' DB_PASSWORD: 'Roost#123' @@ -61,7 +61,7 @@ data: POSTGRES_USER: 'postgres' POSTGRES_DB: 'roostio' {{- else }} - DB_HOST: 'roost-mysql-db-svc.{{ .Release.Namespace }}.svc.cluster.local' + DB_HOST: 'roost-mysql-db-svc.{{ .Release.Namespace }}.svc.{{ .Values.clusterDomain }}' DB_PORT: '3306' DB_USERNAME: '{{ .Values.database.user }}' DB_PASSWORD: '{{ .Values.database.password }}' diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index ca9823c..a572886 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -34,6 +34,9 @@ # efsFileSystemID: '' # EKS only # ────────────────────────────────────────────────────────────────────────────── +# Kubernetes cluster domain. Override if your cluster uses a non-default domain. +clusterDomain: cluster.local + database: integrated: true # true/false type: mysql # mysql/postgres @@ -118,7 +121,7 @@ roostConfig: enableRoostGPT: true # true/false onlyGPT: false # true/false - useAsRoostCloudServer: true # true/false + useAsRoostCloudServer: false # true/false # roostVersion and dbVersion can be based on helm chart versioning roostVersion: 'v1.2.0' From 56d25a6361da3cbea0809104dbf783cfab13b339 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 11 Mar 2026 18:08:08 +0530 Subject: [PATCH 18/38] Release artifacts --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 14792 -> 15274 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index e83b1b0..189c059 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-11T09:58:03.983071+05:30" + created: "2026-03-11T18:07:56.559784+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: dc0f9dae2180189539d7cf7db277b2e37e225553b5e829c9869b555025bf1616 + digest: 851cb562ea41490eb4fcf6685f7da0b747de9f92e7216ac71c718dce7b66ed3c name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-11T09:58:03.981442+05:30" +generated: "2026-03-11T18:07:56.5584+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 72331c66fb1ddb48b1ea823b59f6c0db44acb8bc..bf97411c2748fc4877d014b00d4bc59362660688 100644 GIT binary patch literal 15274 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

ESm}jI+2}HpJ&KYEJfR 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 Date: Wed, 11 Mar 2026 19:06:25 +0530 Subject: [PATCH 19/38] fix mount path --- charts/roost/templates/roost-ai-server.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/roost/templates/roost-ai-server.yaml b/charts/roost/templates/roost-ai-server.yaml index 53f1e71..10df86c 100644 --- a/charts/roost/templates/roost-ai-server.yaml +++ b/charts/roost/templates/roost-ai-server.yaml @@ -53,7 +53,7 @@ spec: - configMapRef: name: roost-ai-server-config volumeMounts: - - mountPath: /var/tmp/Roost/RoostGPT + - mountPath: /var/tmp/Roost name: roost-ai-server-data ports: - name: ai-server-port From 42757b0b0bce9035bedb49eff5279caf4ed94dab Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 11 Mar 2026 19:06:50 +0530 Subject: [PATCH 20/38] Release artifacts --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15274 -> 15259 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index 189c059..9934a9f 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-11T18:07:56.559784+05:30" + created: "2026-03-11T19:06:34.608505+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 851cb562ea41490eb4fcf6685f7da0b747de9f92e7216ac71c718dce7b66ed3c + digest: c758214f567af8f84df161db9fa70b59ae41294cb3c310fefd81085aabaee5a5 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-11T18:07:56.5584+05:30" +generated: "2026-03-11T19:06:34.605631+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index bf97411c2748fc4877d014b00d4bc59362660688..06ffbe65aeb4b85b6c3345835611e5a8b01a3dcb 100644 GIT binary patch delta 15228 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 CmH5j5 delta 15243 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 Date: Thu, 12 Mar 2026 12:38:58 +0530 Subject: [PATCH 21/38] Update database pvc with ebs --- charts/roost/templates/roost-mysql-db.yaml | 7 ++-- charts/roost/templates/roost-postgres-db.yaml | 41 +++++++++---------- charts/roost/templates/roost-sc.yaml | 25 +++++++++-- charts/roost/values.yaml | 5 ++- 4 files changed, 48 insertions(+), 30 deletions(-) diff --git a/charts/roost/templates/roost-mysql-db.yaml b/charts/roost/templates/roost-mysql-db.yaml index 37df2cc..e1b82ac 100644 --- a/charts/roost/templates/roost-mysql-db.yaml +++ b/charts/roost/templates/roost-mysql-db.yaml @@ -59,7 +59,6 @@ spec: volumeMounts: - mountPath: /var/lib/mysql name: roost-mysql-db-data - subPath: mysql-data ports: - containerPort: 3306 args: @@ -69,13 +68,15 @@ spec: volumeClaimTemplates: - metadata: name: roost-mysql-db-data + annotations: + "helm.sh/resource-policy": keep spec: accessModes: - ReadWriteOnce resources: requests: - storage: 10Gi -{{- include "cluster.storageClassName" . | indent 8 }} + storage: {{ .Values.database.storage.size }} + storageClassName: {{ .Values.database.storage.storageClass }} --- {{- end }} diff --git a/charts/roost/templates/roost-postgres-db.yaml b/charts/roost/templates/roost-postgres-db.yaml index f1ff2cc..ac12025 100644 --- a/charts/roost/templates/roost-postgres-db.yaml +++ b/charts/roost/templates/roost-postgres-db.yaml @@ -6,9 +6,9 @@ metadata: name: roost-postgres-db-config namespace: {{ .Release.Namespace }} data: - POSTGRES_PASSWORD: 'Roost#123' # '{{ .Values.database.password }}' - POSTGRES_USER: 'postgres' # '{{ .Values.database.user }}' - POSTGRES_DB: 'roostio' # '{{ .Values.database.schema }}' + POSTGRES_PASSWORD: "{{ .Values.database.password }}" + POSTGRES_USER: "{{ .Values.database.user }}" + POSTGRES_DB: "{{ .Values.database.schema }}" --- apiVersion: v1 @@ -24,20 +24,6 @@ spec: port: 5432 targetPort: 5432 ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: roost-postgres-db-pvc - namespace: {{ .Release.Namespace }} -spec: - accessModes: - - ReadWriteMany - resources: - requests: - storage: 10Gi -{{- include "cluster.storageClassName" . | indent 2 }} - --- apiVersion: apps/v1 kind: Deployment @@ -54,6 +40,10 @@ spec: labels: app: roost-postgres-db spec: + securityContext: + fsGroup: 999 + runAsUser: 999 + runAsGroup: 999 containers: - name: roost-postgres-db image: postgres:15.2 # {{ .Values.roostConfig.dbVersion }} @@ -63,14 +53,21 @@ spec: volumeMounts: - mountPath: /var/lib/postgresql/data name: roost-postgres-db-data - # subPath: postgres_data ports: - containerPort: 5432 imagePullPolicy: Always - volumes: - - name: roost-postgres-db-data - persistentVolumeClaim: - claimName: roost-postgres-db-pvc + volumeClaimTemplates: + - metadata: + name: roost-postgres-db-data + annotations: + "helm.sh/resource-policy": keep + spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: {{ .Values.database.storage.size }} + storageClassName: {{ .Values.database.storage.storageClass }} --- {{- end }} diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index cfd4474..20895f2 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -7,11 +7,28 @@ provisioner: efs.csi.aws.com parameters: fileSystemId: {{ .Values.cloudConfig.efsFileSystemID }} provisioningMode: efs-ap - directoryPerms: '777' # High permissions to allow containers to chown if needed basePath: /var/tmp/Roost - # Below properties will work in new release of https://github.com/kubernetes-sigs/aws-efs-csi-driver - # subPathPattern: '/${.PVC.name}/${.PVC.namespace}' - ensureUniqueDirectory: 'false' + directoryPerms: "770" + ensureUniqueDirectory: "true" + subPathPattern: "/${.PVC.namespace}/${.PVC.name}" +reclaimPolicy: Retain +volumeBindingMode: Immediate + +--- + +# EBS - used by MySQL +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: roost-sc-ebs +provisioner: ebs.csi.aws.com +parameters: + type: gp3 + fsType: ext4 + encrypted: "true" +reclaimPolicy: Retain +volumeBindingMode: WaitForFirstConsumer +allowVolumeExpansion: true --- {{- end }} diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index a572886..2ca4f6a 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -49,6 +49,9 @@ database: user: 'root' password: '' rootPassword: '' + storage: + storageClass: roost-db-sc-ebs + size: 20Gi auth: noAuth: true # true/false @@ -127,7 +130,7 @@ roostConfig: roostVersion: 'v1.2.0' dbVersion: 'v1.1.0' - verboseLevel: 2 + verboseLevel: 4 ecs_mode: true cloudConfig: From 85a5a6e2443915041e6ccf321debe4dbd8346a7c Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Thu, 12 Mar 2026 12:39:22 +0530 Subject: [PATCH 22/38] Release artifacts --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15259 -> 15348 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index 9934a9f..71f6d89 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-11T19:06:34.608505+05:30" + created: "2026-03-12T12:39:11.530439+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: c758214f567af8f84df161db9fa70b59ae41294cb3c310fefd81085aabaee5a5 + digest: efcb1ff3227d7dbf9b349a4f24bb56d09b6bac1db2fd646974456d24641cd927 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-11T19:06:34.605631+05:30" +generated: "2026-03-12T12:39:11.52557+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 06ffbe65aeb4b85b6c3345835611e5a8b01a3dcb..a497b4ed73a8a210f22e4413f7c6c66cdae07bcd 100644 GIT binary patch literal 15348 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 S{{H{~0RR6H_prMF00966b}Ll? literal 15259 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 From 3d97ff9de05158d52086466ef97ec4dbc262df72 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Thu, 12 Mar 2026 13:45:43 +0530 Subject: [PATCH 23/38] Release artifacts --- charts/roost/templates/roost-sc.yaml | 2 +- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15348 -> 15372 bytes 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index 20895f2..79926f7 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -20,7 +20,7 @@ volumeBindingMode: Immediate apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: - name: roost-sc-ebs + name: roost-db-sc-ebs provisioner: ebs.csi.aws.com parameters: type: gp3 diff --git a/releases/index.yaml b/releases/index.yaml index 71f6d89..c0dcea6 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T12:39:11.530439+05:30" + created: "2026-03-12T13:45:34.130723+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: efcb1ff3227d7dbf9b349a4f24bb56d09b6bac1db2fd646974456d24641cd927 + digest: c03b5574e1d94147dd605fb83c1aa3b1569b02c86241186743cf97a3ad682a51 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T12:39:11.52557+05:30" +generated: "2026-03-12T13:45:34.128437+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index a497b4ed73a8a210f22e4413f7c6c66cdae07bcd..296283155d401f54ca35aca1fc5d5d27dd6f1325 100644 GIT binary patch literal 15372 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 literal 15348 zcmVDc zVQyr3R8em|NM&qo0PMYObK5w!AbdabSDdwbOZId~Nq)Dc)4PhTIG*?|mXl1nd&&cm zkc5aL7=n_lWU_TX?dPYqruN6|&zWEH6b=9qq$s~7ow@f;SX~{91P%@kfP?dfgM@RD z)(?gxNxeB4hyV6FJdH-9v9q;>|27(p^1qFZ&E~%~x0~BrTRWQ@8@vD3Xl`t7ZT%ZG zeh*~I&qSmo`M1Uww^i=kf0Bp9><53Hy8xD!%>}S(!cnv3@!cSP7;;TzJTRg&^ z0EwUz1#ZgSP87fu6)B4b5Qik~^JEMYA%7mxh$bXuQwr^4&xy#Gwg6|Glg?w>0usj| z^N9rROpERQvkCJr@~HJcCEkzdg97uP12MG&}Si)1rDhnl7zyPB#iVzDj?<1qYx7zXaFoqIn4Pa zfs~FVW1zxwR-IM&$KU^5{RiF7!DZ(P-n36%ce?re|3v>8I!T(qnzfA9!RJv*SR{Z) z;T$3!xq|u$O(9SO7eJyw5?GKvg_Jw1;PdgArIL&TmMUT$B$T8S2nZUJME;3Q$x%|^ z1gueS;OXJhZDeRA)`^+%?g$av2-}; z-BD;2JkJB34rv1C?MXT`lLf!iF=3%WT+k?>iR`L`gP+R%#Qq%csLuvjcbQKkL3M}q zFRQo2ADf~iiDVh#k6oW8sY{aR=Nf>L`X9eGm=QykIa?+zoL{loj4<{m}2?TshSmeR^lqLxaD6qa_zox)MP|3|D zC(iR_*h zE?sQa4SKGa`rc1jnV&uRyVyB^As2E9)f|ABCus{dHyb++fbfTOOj=Mwn2gH;6G0R8 zCdKkOgOEQ|7I3g^yCAiwiNq!5F4#EL!!tnI}AP_jmR-_xGEgEbaMxT<4OQ8+ASHYehh^-3BMk z#)oN~Ot-HFP4eOS&i-DpSOuxthtInuWNH=P4y)gn08Y|jqY9Yy{&4YK5y;IlC^uDL zZkED{Su}V~1F5^w3TPFd50`!_LSBW-&a2nQmz~3w+A^^-Frsr5X>d(E0eVBmaY&&B zjh)^$-P+&j@AbDgo16Oq-3>N;zp>eC(%q&n*MPP2N(>6SEa~|H2}C%0-w#Q1bAQY4 zPkXcE{fDjXy{+cXX3cSEl+q+lm|}0M5b^%&Q}FY5B6s2hdY zl|S794+Bq32Xc(!_zcxuL~2!YT9^%KLRB~0$1r1IC?#gef@om(JEbD^^iMg19ncV7 zU!Js}hJ98D;hz$KYRAXjbCOWt$$&&mpmL3T5?ly)R7)in17wJj>F{JwK$HYy7AX-S zM@UTKm?!`9W6xt;)oIIO9TX%?O{}BQ%&S^;u(;V{6nhlm0ZmfYXFf^k1(AHN;=@Zi z&%QZ!A61ib=BU3SuB*sCE2L9Li#tZtF)i3~Pw|D#zsG58{ds{KL~UzlyXH6rv8W^x zN#P_;_*Cx0`U6gK-jh0kRH70-)}|0gOIYnVzNBam5iMxKDnyfUk0!wTdaodH42drB zN4R)%ptkf&N`kiuOX(?z=2CeOL#dV#KjA`T6=X9sl6o4>*`tfAC0j}q&haC@D1V&@ z+7<}lK+0-enoK1{E6U=OK)kg<3Du3DXMXu4l2c#q{sHhvsT!yjfVKp&XkbW_*`#XI zrnliWwv7>hDGgh&C423Q>oE_g>aXJzq)afv&J_wSYGujMqa#rt zjA)&VCQ=dwBnjMPc2k3{C3#4W%f}>@ zdQ&*}po36h%7|is00ZoSQDA8%K?<0}fmA_%IyiaVz3N>446dtQxrm{7dgR9$<_Cfu zCTvQRr=7F*vy;xDVb&TOy`<~uI9ANn)dG?vs^n<004{E|Q&{x+Ba9~^1$x6oYRD1s zfJ*LQmK~W1sfI}X1A+KCKT%c=IU=a1n1vCvGSO2hEy!(@yabviG)ZAhA~K+fV?jJs zuW&x$Fr3j@4h`{S(Lk~^0~VzL#8HA5O{4-_f#9m$AG@CXWVWoI z5HzaHKYRGMhhV*krgfVh^`ER?s(kU4UXnjc4Ipbvb!9+OIwNy6dGusDJ32o5GaRWe z(7reZxd7Eny)@IjSm-(FCCrDl>4vxU<2qc|6Mdhwf3Y45z$mHpMU)Q@ABjS{eOTw5>7Y?o{^A5K1~4DNSYFVNCU~K z&yJqg1n^k|l9Mu@%HBo;7TvhI6A+1Y4Ocxm^h)~0JOEfrC<#RN=|^~Rb#-ycC#hsI zf=?2kmY|kltM#Zb5mO&v?Lg80_yYd%?|+AgPH6)4CgzfT2P~m}8qTX=-U2y8R?aRe z7w*j*{_(&65A=vXqEP^KxlKkXje_-T*e{SDNxB*iYuHxjWfu^+_S-I;oje03^kNKf zy`LRDH)Qroh+ds^TOepE8HSlQPjPqr5no9jA`w&j6N}zcKNZkEI0X_#JXH>iB1j&k z94D?B1s3%aBGP2yr*h@@Lhg_Lh6Dc9(Cng_ zmYj7+IJG6i%RK=~M1LZ&jU*LHaLjT_Ls6!U{YeSkQkETERgBPs&2!Nu-HqrIY|JA+#k^d z4yhQWJl3m2ARat|=Eknq@ETt8j}UQ*0YsDrH1I5L_FwY9Z0R0r^RY;2EX=BHdf9t> zzc{!&6tE^nES4e_2_;9H=exoaK%;kw;y*uyEpKCYy_FC5!I1i+7K|o6$)R9CrJNL) z!S$s;M1^O@I-==}CnFXOywRTU7>C~~Senb>z2H$y(&5wECvQws5|EU5)~q%Vf3raT zCSm^OF<$RYq9DvR)z7uO4MU1GBTPm-g*c&tMk(+Fco@hvJR}iFN!acwWStyMM9RnP zBZU!S*K)VYY1zi zEJdwNqJSphT+*j7fAz+%d)j%~{jn&mDY--SmdBG&Neu}f+ae&;GwF}?_*74tb`XG% zELIcbu4l1d`M_%rAJfZjk38QIRlvqH{>L6d%A}% z`X^`${UfrR+b2GY28yQ7UmczS@87oQjMAhVl^j9M9u~RAWi%u#iCF{*pGf`HGftT? zNn7xfWM*zcLrR2J8r>?Mb*Bdg*I~ZSW-J}H7CEKod5f$LrE+9uvZuza)uSPwNo29G z?zx^3EvQ9d_l*Bg9{4OmqkeXN)#-ZaP5KqvxFh~=r?ItLivQVa>@>f} z|9p#Q72eX&=VNME?WOijNcjjbF7&@S&g!b!1>UGAp|y%|6UXV&NH7fd^An0@A`%K% zJA9UTO2w06Ji-&(I{pMT>h|T?6QHT@tve_^NZqhUb!<$k_JjdTJv3_Kx|e*S93j(^ zeDJO)6UjdQKOG%YjE!-eLlq4pnGy7OIz*_r#vc+C19yhREH6BPqf4=?um!niwOqZ2=-dAO&p| zCWmW|ObH7mjSa2dW}>obQKTfDh`h_TChJl~11Ps;670 z;@8GsJX{K&SJoZs4>_zDRM8D8mB?1T{zH!5N;co=hiuAQ{vOZrA;1dm&?|BYoJVC- zf}~49pp?r&n>%>~nb#H8GP};Y=X9Br<7<)xy7An->}3vI`24wsibyzBL6aGXqHpGj zBb6JUM8IPjsbHR7!e@deAO$ep|GQg5qR=SF{*+1}>jO_LR$hkIBTDF);-6C7kV&Sa1UPXDjB;4zgqPDi{os0&?Qrv zp{bhn9B11rEIEO~JR4J3lf~kM$7FzZhjm)&JmhZekJzDvE}TsWBX);^aAhsOya* zpnVomSn)hrY6aZY4_7}XR3O1HcWeXB}Ar&ox@s5%!TIO}^XP?n9P?q43 zjah08&P>2sZ=P}5h>Yb{CSvNZd(Lqmw9Qii$>cotqh5V<&EQQC)< z|1RABE>=pgRHOHwSk-?Prkgd6a#c)C_@Yo_sV9ai6_OqeE5{SR=Yv`9giT-dw+W2= z8-{F3A#ml#6Ba%6GLSsK>>wDemDv2PI#&r`-`9< z^;4dlXi%OtBXoz_*;!)wjl^-urI8)@l|s=%mA}D<2~TOMgNsm1TuE=M zU5)%LBr5mMt!z9K>MY8rMeJ2$i?*uBr>zCK|F#)fX3WNALwui4l=Li13fX}3c1WXwJvujptA&VF%o4;% zff<<#CQG$z17S9-OF{479+by*ruW89zP=T!De+%tswlRO~v4 znhAN6g(??&g~G2+?PWdqW=6uL?PlL>$}Jhsf3^typZY25fBK{e(*avwB_+fi`rqb8 zvr*Fjb~d**zUzPA;wkY4>r9hZJS~Krvyd&O>5Nzuv_KU}X{bwHo}YKGt`}h2C>72>sal7fi<9$rox|(nv+I|8-4@i+ zWI}Uz?c?jSu7+4e6~ysa_v-rM%|RAel~WmmP5>O&b*qQ$LcS3xjnX$foQ&lb%EtE? zzIf{2bL`|^g#j_>kv`=C)jmwOcwWtcJjPoUNa%+N6=~-3G)JhR**IcqFEeuJa>34n zzX6K^8l|v-Gq+3%633#R(c>@+le?P;4)PF- z3$^aImMmB_nm$kXxaAarwDmF3Qxad&e({@p?%+@6nd165mHLP%H!zlO)hV|6lq7hN z4cVo0pQhyKSOsIAEViI(TI-J|W#Ae4)!EdYMx(J?rt`%l3@>=d{CNx7D6Kkn@9rMB z1!SxEM-h2nzB*gVMQ}lW7vlcu&l34Bj=y3uu-oOo=Em+$+5W%1@m>D=HV;~VheTY3 z0$NX{vR76U?ekA-ww1&Vl(vl|CS-bLWqm!IU z+pkZqt}o6nuUb&sY&7shd;8+}`h}DMRg#BKpR6u^{(P@UpE`+|1a)$LbbNMw**QGE z>>PX%z>p6ZB8|N{JU?w8pIx6{ULRlFQ>1>pr2OpmDtRse-OMUrXz76&tE2Ptqm$0{ z!O5}I1Ms|lS)?y!$k7cK>!~DlchuF~i$fmL;+ zD#y}oK$iAvSw^OuX{xt5+dRKKx;|^4c9!yYoifPG?aQO<_TlOA*>&f%eSC6TtvqRv zRTpdNjpeq=R`wvf<%^5kk=2Qqj6tZ~?p}A%X!7ZkZTPZJ=)mXCHmrp&+Csgc8hgtm z0?&NR1Rg8ho`#8PP>!N9@4W7IE-QMscuZ)q>dVf%>x=f)i)B^yxua|r96rluz~M6` zhg`k8C^elW>`PSuscf}mLafT^r`7ev*z6*_6_Y7&Mb*%FWEL*-*`)S+EWNdKp~bK5 zt<4Sn#-g`r%am<*yKm1g->sXuiOUUW{|W)@o60x! z#{QgRy4;=Bq0aJm(V_Ywq8{xt(x>~C3|F%-|<$i#> z?*G|pmhb=A+1YG-xBq{O=P`SF$sPRo9sCYIb74Qf&7r(}ueaTy_GVvlsa7nEf03tp z{j1z1LG*R51iEAWZ*6UEEX03(U;p3c!C2Vir5S&q&u;P*y!Fx{c`Lh==QtM$?}c=1 zZ8{M1K!8ue&^oKW%+Un1A@hg%x%ep~&H+#8;aRtMMt&{k0fd~#l3S=Vjd>PyeX>zx zLAY8%RvAm3gc5(Kb0k+LwXow&J;!;@Zd%Z}i9^m(FxUu65`Sn~^6-`lVvbaXY-Bu_ zr3CFOPqO}Cz7p9DJSC*zt^D+1LX&w#j-(Y2j{88eIAzHT1IKD)MWq-Pm_9b+yDL`H z*kgq6R3cZ=s1m2Cx~C|i=_H8+5Ou6o9~gBiX=q}jz!NPm6XvB< zq${3tItf$e20WigYCr=z^~?zk+MBD%hWEooM- zbmYFZ*C@Z1RCk>7D4aur)+rjmY)B(H5T&?!l_R%(c34RCu4aaOn@{K=5m1`BDz?As zY)UzL|3QHiS>yysQjGTyamdmWCQ?}OR_>KXoMx(C@Q2u-LAL4ye{(6#KC zqC`l4T3?4{VIi6HS|J2~`jo*&wbnKoJnDcN=u}45IlPh_rX|z|O6w9)Lk(=ED5`(+ zP8cmf9qq803MR?Ve-^AjS#sXRWPYmMqTLVW`@P03s(~Volt>oB5dY;O607BZ<3sv7 zL4bG3|C`$j^8ZF-`@8)AEgp+;uHE9nEgtMDd2MmFsNLnUF?N~L@=<|yt4lnAxw92k z@8uL*UGxeX&+9S>1s9pAul>1LcWF(_duQr>3GS67ShT3Ija>dHb_E6eK+ zu2gogvPNuU^=O|{!3F-cTucV$1N=KEd318pgV(F$NrTt0RrOSOR7D8Wg9tA0R zww!nm@vvAZJ=)D;!6^DF1obBgOXmkXO6g6SSMG}=WkcNG-#718p%aOTxl9SI|1{9n zb}3ROlmt?KuFn#dqT1G*tLr5*u*oE9i`RJJV+ME?PPIlP!K&*h^J|jid@okd5xcj; zrOzbB)EWgWfXdiya*MH9aqjjM_X8aleGDS4T*lC9^-?_mmW^9WUx@f zb$cudT%C6C=^qw8>+A%0k1vfG@s%{U$l8y^hoP=j9uVX<~8)x!4^M)!HD<$qMQzS;?(JJ0{@mh*pa?=-)k|M@1*Bjt5v zBYUKGBiqcMNYXhNFmmwdbyXySE=*ekC$dMd*nR{eZL%^x)e_yaj5G7`9P4Jm$s-1tL8nL&Ei)c zbV-H?@y4;j)?t7?3gD7kHy(wV5@ldzYio1m;Sh|oJl8bGP(YO1olYmmoi2T;(-eAz@o`gTXTU7U&1QOfXi0_sfk{^)kshGvRwaVZ1ZLz$wUF#=&+=4C{(<%q#1LmB254QQ$(KUI? zs+^{Uv+Ne`)%TcwSy#IH?eN~oze_X1x>-#=>I(BKb60F0c${C;d`bHy#ob7lvP%Vp zeCY;IB0+}B7Y&K#{|i3Mdu#%k$A0NHV0`!w*#u&e&?wF6{TF2RXFm z;(#CHmX!^%j^MfPfK=FwmSI_*r1}z*rKmmVGLCyrl0;)rphZQ8FvO5W14*F@s+d*xfC*u;+h#~wLivpLNF1AsC#y!Ztm$fl z{WHZqTed>oDrj-lEEL&izOPNjJ(_5->QP*EV+i5YcZ8hV1@bN99 zUVocBcc!&Ry9^D0hn{W9>#1k)bQ6}i=lLdgv?so%r>$gSwRicu++Tb5Ie>)IXNmnk z=7F2=kbaZ+pJsEXZ2#YB?(TlK|9^|e<`YSe_;~V|C+s826$^sSB@dSiU}o0blXGM; zuL~q*=qeX2__bF13(npJ@1hH}m=45{xi$k z^F<+`c5heEu}j8T2YJ^*!u@EZf|XFR5-ct z^_S<0D5CUjRE}bsk5)X2U>*^!n1@mof(?tW9}z@YM$FO#T3|l5n%mw6tS(Eq@q0xO zR<3jNJT!>V0Q(TuOJRbyHT#H<e4cJ+nGgh4@tm`Q01SC9!_@jrJ?Y`z?+5TORYb zBC5P{0zDDdrb68H*OI?Cv(C5J>TG!Rv^9n9xI0 zrUff$GC{Y9nDivX3zDWZiCVBy|KXE&@#etG#GB9do6jpwLNRNP*-kF0+0;rU4@<)tdAwbe?s=&F-dDhZw%<81>3y)Vpnr)ZxxSyeY>^T;VTzlWrl|{A3=d zG{{JG?{2>(EPc+C=PW@1MNGytanL8F(jeg#wyM7paZHpHP9ka>!`sA_;t8n(bn-#?^nI%-1GLSNw{1JGp1PHt8lkCSY z@<&(S`=>r-zm5vOiX|`GN9EtYTy}38qSDwOqQUL74w+ci4 zz!A^y6uejNzlwoYhn(YS9y3Q`;$<6?^`_I?|-?|Fgc@- zG)P`{+6Pydq2Ao=@`bm$x_W|tgn=j^I;d2xB%?OdOnADu5vsvq(JH@6^K zIGvtfb*>N2&${O)o$HIs^FP0PByQ@~m<;k`FLJR4;89nylVhQ0{pJN|}~le4)v$03UL-i3RA3ZYNm==f3xpdJ-WDBP81%6b9H%ek(l>PdY@PLs_E~)B%6J91~kiMuTPJDEf?L4KEO4n z&!IxeHHWXi+%>0A`8F;&)z+h3ajN=5BLGb;%c)a{|C`aJ2{wMm?B)f5(>(WaQdzSB z?uz`=`o7Ztyde$8Y!LB;{ti0E9r|Bmdvm*_|7~pVe2@S5CeJEpBej5(gPH;=7h`Y2 z!hl5sh>1TU11dac6|RO%fSANM8$k?d7{VarJ+-)5GN(zF_qv<%ggUEmz{g`A!JC6F1S}Db zl$`7Me}%r|^*$zb{J(iI9Mt9i%ug|m>N%hu@kf&wO|ZiGgC}OO^9Qd-M$R9+bS(eo z2^%$Kkq-5xU?MP7((?5(X!Uz;hmkd1h zvV_}6VhOAaQxdX3MFc_2878220o}fGmjGWdO~J|$k-Z;`sNMU5gKlXhVv+2pUIO)> z^A!N6%ul#JafH)06X&4i!s}!3`8ehgjZz62KW2qYZZBC<<%q^NaQFse_l zL@2LdUM{I4RhE|i0VHOiuh4J{`K?U$Ua_Cu6G%@)u_OM|{;uI#U-10&SM-IMmP=+r8B}vF=@&uAe1bLh4oB_@dnkI}+k()VcmBUnN90GVB`;rM~@QzQwCzwM! z%0cS81rW07Ny;5T3p`R%N6-|F5Hw&Z^cf8U*~VX|O7)qOarjptzRwdB3RV7p<6<^f zKv?vf#Djzc7O~a8ihST2E|6#YcCEj&O~G|FYX{d=n1F?lBK6t%Ri_1oMt{|Vfgt|^ zzh-k1`|C={^e+`SI5rNyM&d74`z4T)QdmNgyhkC>dxG5d99>5Vx|tV#NT!lSvkrimlBB0mj59om7#iKJ$VgpNXt z++^im`?8yJjAul3JKF%^i#A@zX?k#=b}M@i!$=(%&((I{dD%TsAMj+&h6n8+fQSba z??n=e#m{&^vFxS?r({Gy$n8?rSQG1T+&+bbhZOG=&~=`554y*PxEU%#0FX2#{*VUF zmX~o!5(KW~D+_{%stIx~4r#(tY%6QX+0J??E66dI(h^Gr?#7^^u;BR6aR8v{=>hP0 zBxG#|%@`U$L}v)3H`kUUSyGTOg*O)ml2Kc9EL1eH)__EVbVyQ_uR;KedVCTE7#Nc# zq~B*gtl@nT8;z~~bp_^#%Lyr)c7KL5bxd3SsZKttF+pyL%>@hXaoL(OyogCJqPUI$ zV8e9x;N%$Gd@<UnYkdd(aVM}{fXWr5twAF<# z$l)*b-8Ql_ZEWHtox>Y!LSMFyIzoV4UoNv;o(?HVB2S51yq_xG61fvmM`Y_{BFXxQ?87)6@Bx)mqI)q$c#< z2P%AB?wJ&hBmrqMW&*n_<-HzHhlaM2>{fmd{I0;}v+43#`=HM8q@)`sEb>`QLYD=e zWPu$m;H&8&Cxs|12z#1Xi6M$h$TNaSJH*{lZtCIOz*OuGCd}-!7_OP?Gx~tPr4eW8 z3B2D`|5x@O)ek*XUo-R@pWE#}&E3t-vi)bP+4ye%{U*;U9I7+HdM>N$)G|{q-oEp$ zeR|^dc`_!c-2E_C)sYqbkR(zUPncXlMqiEz3Xm*Hxw3m?(Pf_Fn4=plO!{Gt7pjO* zSjB(p=zGi}iIpC_s{YLm{HQCtyK03#0oI3#Q;YBv46IeWrOo=JlD9K;=MV}Rnbi11 zuFk4-_}))hnTlK5bUt^T`+5YV{dyS*y#8Bq`%YHAUj)In|pnqY&B@F z*YLNto4u{Q=Fa{mHdPMg(bKBR%KUk#e%!}Fc}y<)KpkM66Bg#GE`^q2GI`{t|0^WKNXpMvf8 zFT0Itz?;vnj+%|;^CY}Fa$hyhULCxD_NR1rbTT-5HUIO`{>5OB4|zH2NB4grh^P8} zkuVDpI~HXEI(5gxq#us={81WDM;|_HdlMCm&@eN&5U$gLTJxA6rdzYuhvzR}_;K{^ z9c}&T899qTHeazf=VShC zIyt30`Q_~m2`Bz**8UK@{N=^QyPHXnz7Egccd$1%cXcNj_C6+ozeCuEh8S&bE_COn z+@J2KP0th74=?+E{Pw2zr*|LO;FTc#3=4_BZs8SEKZ3{Px}cx!;>N*?xn}-h}a_iO9d7rPsnhBt1VMfe1(M`ypv=?r-`1 zX>XRi|FE^ax7FN{D?1NXQpwOUlyZ`Uc$4FRw~BT~kFff1((7ZI6E5n;)#A#Z?tq7Z zC#C~Ty%DQJ0=PSc-I?#jT14Pk`PKypXbm_f2~Gr_QgHg;U9) z-V@mkm?*rL`*1k2o(_*0v^>;v|gzEkdk2}g9Rkf3VOa&tqKG zYs+FCS*iuKF`1KSq&`0xl7xw&{t>Y0oSI*%0R*jklDA-iMyQAQ9Wm22g$OOJLLCsR zEq-`O=h-*Mrip47{Ve!b#B~)(Bke+W@RJG$iUK1Kh&0DPkN0Xp?PfN(>G5F7Cv@`h zrr$3X(9!|E9H+7Mr-}}#ZS8E=9LEY`Y2k+A(@4l}V2M8IZEiH(o$b9%cWbA=;qLYQ zrn|GZvA?(LZ}0Us`ZZVut^JwGsKD_ahN1+R{8M{3lkkwLJk)2jjRTh0j+ zJM>4mcyk~pjwqgqk>Vw$s{Dx;4Lq6M{S)7$XyzJLsrdfSw59hK9F3wlDQG;9H$q4UMH zN(HOVxmm&UcE&GuljxUPDotszg3{5Zq>Krm$+eX8SM&1JmSF{>8T@Ia|Px}`oyqMD;y)^))az5b{? z+n90DkR##&l^n*bJu(wO{4tP3nMCX)lE%I35Fg{vG-dUi0a-`xR!P(%GtrWTNbCwe zNr!H;wYR&mvAMCkyS>@iZdp+48(aNghwe1o?fqca-RhCPyB};5cb_&kgUw#AM>qD6 z2`YgfG?{6VYX4l~ET)xg89z8ZqqA0~ui42a4R5V7-&qD3C(qwm=yR?DRvU8gli78D zQf4l>hyCo~-}*>qMAN!W;`&e4FIB$yO0WB$rJ|d)rMjYz)~NZY=V$R^;P-VUmkPY!*_ z?a=|iT0%)6vQIzSH$|I-7e%OL*d?M%Y_0w8P?y`U)V?vKLJj)`vN%as!?X=2?7Zv(BG-P~g|m}qz(nTckSyfv z=(!=YS3>maq}x(H$1bzK;Y$`(5B}n%GoZmd2F7F zvvYRy!MIWT57VHaudy(Z?W= z&=O#QOg~n28-9evUaI|00w`U1uU3aZJa`1nja{$dHN55@A>tAP^m)_3v$)xR$^WvY zYrL}}rLi!pwwZfv?fv55@=(B<7_k`7ljx|EY*%;!)EjtZivRo+w!Dqq^;SOI=s0VE z@u?4}6ukm7xR|2bzLmS26&>B0WtQf0crSPqlXUpB_Q^AW{hl?e4aDCpkiSWozj=(; zdy^;#vrScBnv0Ji#hQ^%Bc4K>P(h;;kBR=&k>7V2~rY& zVM0!u-u92ku@+_|tdS{afq;O|A{DqJ$r&;~wYEi6rA+WgH0T5OnH-*>pU8=!I<4ZE zD*Ij;Yg85)tX^bmuS+pbPbrH!U?rpj;?GUK|9U}Ak@6a>$&Gj>6%(J2W0JC7NY}ju z5nQQC_T^4!HIXb4C4UT?$Gxy>G-_h8u7}EBmMcQ#w$A$@H=pyflXr5A=6nJ(5~V5< zL2b~vE7ID46?C(qXhp1FJwceL7+@`dx-&V4S+2sdREco1zab@4s;KN`x`2&9K?lce z2t#>kQ#J@&#uKI9-O$JQlft^y^bCH7t*|{hIYig$o z=yYAxd|e?MNPW}I1q4YyjR}ji+(n})OL(NiB4?eFk*y)DiLw;6Hi-h7gmX!s!u-`6zwT-0W%tLTw5H?^)mt7{jutI~|R<4)b+3 zW9hK9$SFO~TV!=8m1jZn+Uo;78uFP$77Od1>lx94S~TcaBU*U5h-%Go>^wH5%wJAC z^>HB(X3T9hlSs#}ISwU6s1L`=oSDD4pyQWx4yCuR1x=8V%J=_l*ZTM8`}6(z{``l2 S{{H{~0RR6H_prMF00966b}Ll? From e1522186bd14cc6d9c689b2fbcc80da066d5fb1f Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Thu, 12 Mar 2026 16:01:59 +0530 Subject: [PATCH 24/38] Release artifacts --- charts/roost/templates/roost-sc.yaml | 2 +- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15372 -> 15421 bytes 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index 79926f7..d0f3c3b 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -10,7 +10,7 @@ parameters: basePath: /var/tmp/Roost directoryPerms: "770" ensureUniqueDirectory: "true" - subPathPattern: "/${.PVC.namespace}/${.PVC.name}" + # subPathPattern: "/${.PVC.namespace}/${.PVC.name}" # we can't set such pattern as aws supports only 4 level path/ /var/tmp/Roost is already 3 level reclaimPolicy: Retain volumeBindingMode: Immediate diff --git a/releases/index.yaml b/releases/index.yaml index c0dcea6..e2f8907 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T13:45:34.130723+05:30" + created: "2026-03-12T16:01:51.117036+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: c03b5574e1d94147dd605fb83c1aa3b1569b02c86241186743cf97a3ad682a51 + digest: 4695a21323b5ecfb5272646b4d2ef4fd7d7a270916154260a89271f73a72d82e name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T13:45:34.128437+05:30" +generated: "2026-03-12T16:01:51.115438+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 296283155d401f54ca35aca1fc5d5d27dd6f1325..ee4cf02d335a3ae6eeaf0c2f1d45f3d4beb6382b 100644 GIT binary patch literal 15421 zcmaLeQ*b3*)Gq3Z2wZH$=KBvyU+2eNBs2Z1V zz4c7uC|C@z{}~Vs7@d)nGPALiJcpbIH~a5j>dYo8?3UUp+#Eo4bq;wA8!IC_6Ax7- zdwwZX8(Xl;Zd<1fu6vT6+Bcf_%l5=>bmhd{>g>tv-*mB@zL7_O%)e{*A^-qs0c>a< zfNo9qOMmOaPtSHMtUazV_t3xs3?QZCD?{nkyHQs{i3P`ohnP19v;bs9HTg0Fq|c|u zxIX{g+_K@t3{Nj(eQ#K>je|HiI5Pb#>^NInTQW0aVzva?GVn7qdHwu{Zvy1r{)Q(5 z{4Bg3bdILKs63=5w`aweiJA>N_TssweL1>ASN=fIeg+TG^mHUQ4v}BN#l!L_?Urm_ ziGk}XB{W!oIY`Y50Ed}T?@v%;EJTz!if09$v%;e-5&jHwpYfG2kT?*q=1T2OH?3ax zW-x;&X=*v?0V$>;2xTOGcox*aAAJSM|FVE+QfHd1KWO>P zm$X9sz7GT!{bsKSbX{w9dT zG;uNtqcTmdS7i$nm!|_xdgR?_gd5vwM@d}#r!I>kd?!6(n!Ry(vBAO8@ckt|GXXd{ z&$!1@C0cD*S`wNwRAC*wy33bnDq#dGL1_M!&(HRfUaG88Y<1kXPTfek`TPKE$J}71 zGu<@Ia=P9Qa-JEXp4{RUcww#6FZ!iZGw2^#$ReI7ta!y+Rfg>-vSCTvgdytv4}804 z@sxkIbBaWNY2ES?qGRC=LdQU4jMm6-y_RnRFK58x-fiMt(%#t6RNXW|4W6=}^)xbx zQmLfht524R9e@bm8gL6fUZ&1Ap}IQaduc_R@aG{Xtodu*B4=;!aIWW&iNIXzp>>d> z`t6l_Y$H4q6@P{pTQS7vA2Q_(p}vt|aiT1sWn!H_#0A~6HM|^D%BHR(*;Jq$p(Hl< zU@n8ozkkwKTyN{(V@qd3_xX9ymaO@8k)Xv70LCJ?qT`l3qd;(7#dr0HZc$J${73@% zc1-!q`vVo4AmrLa|9}c}o%$X(unKF>dE3W@?5`$I5y@z}$S`8g=(XkE{E*pJ-brNn z%~x{D+geg@R5m1zBWarA6nMBtVvC_uWBmabte@0K5j1=7SQ|YvDw~qMGJWnZ*tf>P zUx#!F_rX8o9oOQ5P_Q#a)X2^{o2XRbo)cOO3mpatBptB*!zZA1P)ZMz%cFJ3g*$h5RdM>FrAD{!!|khRzfz@ua^BWt77Ua2WM z+ECC5qKz_!3)E^eJqFO-{LJm0{CdyE=5uC7To@zTl~xvd)S&n2T zZ&+R1EE9xD(8%ux(>%AplM??)2at*o-D0J`rC4mW3S>RL7cdG&b|{7Gy)6*lGT#n5 zlZ;Tu&M0n)7pb$ChOEU?s=74#{QQL#s{A{ZKKzGkuL`X)5S09D6&!Kz=|~#EYSlah z<(me)%+-67p9&5-=cm*l6z$3=Rey-TWV5Oxi%=-_UnJlUXfbJKvjj9$$KXLgtjGP1 z;4|N_T6PQlvas;L;vf&+R9A%>OjIVnM7<;`(Ja8!=Qt@@A7$)>R-mis;WE?sMTwop zJocS#za#RpQG~~(sm)l7a3PT41;b$V(<^IuITyQ4c(KK`#X436B}#@Y0YhOw75@ExAv4H5ReSt?Ci9bd23yk7~v6AgA z0=Q?^CFdksFs8t;BwOL$p)-o93v-B)mzVBk@prUoHx!HQ5eV)_-LFLC*#>|i6;&-4 zkEtp*70@fd4eH=0D{jGh9;X4xxSx)$iNWHMD*~**Eo4!meuT39m9OBi^~Bc~jg|Z% z(``H6iZnXT&v*)#Jzoc{)3DOhM)crc@y(+kJPt*EshhuBpq@&=&x7{VAHF;$RpUZI zOAlYztedCgNpwL+^Q;}`yDuF9nsxFofvl5<}IgO&Kcr_%ma&A z5>5RBmbs4z2RhXZt;k=RKnnA*G$?6ht8)5iX1C)!B?>39RMI!g$d_c*XrP46W1ZVt zkoSxL&#bzBPPQW_)_6!)kAXzGKqi(FVRv7hH$=Qvu-~0bIgeAWD3kydx$F?hY%Sq$ zyjA$3AWC@d1G?!^Jb9pJq!x}a9Xfx?eBh?Um~5V5Cq`R`30t%NRev!CG@E#b6D}P8Yz*`B zf?bZX&~80b0*$>Fk7FC0QM@%Sf;F_LYWx5c|6*AMn=9v~$-HtO?>^&m*)nY9S{m{@ITp5X46MCGe0>eE-*gzqDmDoQtXC1y9gi`LmQHT3ci=3F+S)oG4_H>l=)%p@E&|ohU;|{tCFWgtNkJ z(T;;hXL$l&M#A`tW7^FH-64mcCQ}O8|7Kis>q9#)-RpusW{Ce~a&%eXxVJsImkWCE z6OMZ&$AeZ(+b~IQ1X5Bzn@daipgtY`ErFC@qIUa6p<@ZZ$ zqNLLNSe+N&)Fe-@d#0a!SZ91tj3l3;58|(H)j7u}Y*e>uW)jq&(Jxf_-S|kQapP_t zsQrF&3%g5C#M(V}5EN<}j*yt85ai6h83_2D#;|2^CT$6<`63`8Q@OvciWeS56Y9l+!c-|$7Z zG)C}R$$NWhtC3W_S@2kRDGHV9EH!iv7&2sgXcz#325y5tq$;T}Lh3Eur>O2X0NgZK zSO>OY+tVn?;iJuCG3B?~OH!U)Pkj1P4E@^<+PWX@i@Ciq^mh)sV$?phm^mq)MASlzh|JHzOM+yvtE-{3LH%k93B?^YX!$D^vmE5rAoTe2rHNR|OmGqP6OQ%#e^%kVyn}Nu2aKvIA2UUQC8&)kVI(M6hBB z++|MEi>RHzi8<9xQv|*lK!%i1<~t7GdHhMj(7q48V@L)F5Zfh zPgJo?aMBkd&0l44Q>F!I8>ncgxTyn<uW*U5oXmQAR{Dj=1Tk>!A z0;i=gbQ@Mf5nCn4lcfEeC<3wS1eO?OaBHhl_)}-SC2u`ae5s?^DQGBZ!5FxxrcLoe z8d>*XA&NXUjPaiCydwW*Jv`Bl%+O(ADMMg(CL1YqLf#BI_eFBF4Wf~Ja&cL+G{!6- zOZFY(xOV&11^8ds6T~WJr*JFVzIR8XEhpVG)`1H4r2I-C$~~7}K!UhU7_th?;-dqT zK+iSVT6>O_YJDJMczx7zBaAT#MTTRjezcJ3QsTe{n3Me43(bPE1HR0PgP?5l{lrq8 zJ_gO_gytUKD*yf3{o26FR?2WLOe8N``$x9Y79AQ)!4gHXhhE<6IZX45(h|WpadJ}L zLMmcbrch_7@%piEmuGTiExP#MGFj;(pMAnozH02G-1A~vvnSi(uLydqW&V|41<=hF zv$YaUw~nYw83!18T%wH1G|*fMd`}LjC}wiM#}f~SReF!Pl2P&n2oc?gV%CwL)6i z9^caO)V<1m(3J%sq7lBBVjDZGTmv|1Wh|=6HU}L#*wB9d`}zzn_!}M!v5b^!nxlMI zgcEl=*b*x!9Mj?B@eE~g?sb7AgRIPXsYHmMRKai5r;Hqv(RNLdOD#Ft1R(CB8y9Pc z0|6yRFpP}}P87xeNtr?M=OCfd*4%|b4fSP{vP{S(L;T*2{e#0TWxG=fA(ofUEHG zvgfSl1Pk5_cGN;IcdGV_(A>H+5WdYxYD`Mzj}K1}OBChssEv-l6pECvPRQ6^2D!?B zh_tb2W$WKE8*L04X)3athU&2ntcqNL0Jrkz-#7GLA8$@Sq@)eBB+X)-0H&7KV+;5+ z(($t->yD@LlSvpI*%O>2FxeLeQKf=aYp{nV?J#8GP=F&_anGZq(vI`9e8xNNfSWntU=e1+`g|9|fnG9{W;9!&IoZ z=@PW*rD?Z+^WdbwTOaSW3PBo4%`?Krj z4i5B;KmFY@uo`V5%HANlxdBO16;cdk{O%siTRprB=!;}04f?*{m*-Z^HmF9X148g; z5)v~Si+3R*CG<>-u@VJBO{rCJh3n4^O@QXfI zF_$U;{-19kc>HXt5YqH|X|~IZ!(IqcG}dO2MyJfMU4Jc>59pjrhsb#>+03HC?7!t_ zcv*!!=9yuPWs`cYJr>-&Eh9qgJo&U_(Mhf3)DRHbQ}<1&!?%IY_&ew+K9og1IBnSA zih7pt9rSEw+*k#=@f8HU*yaFp&;6WvI9VbfFvUfO7jcl39PYCOm!F1FX9c3DtK4(w zn<4DJiKgswcqC}u>Z2#d61BwMcSz+a6Oef`U#aljsJ;X`12El+0mVGw8m_NHO|!Yd zdjtY`!6W1@Sn6HuOFBDo1Azj-+=GrS5*GyovV@wP7bD2mKL|6lcMd#8nd#z zIyRP&)-ySK`B2nGu)V(_POiQ?`wC+nVY%pqP)0FhlFl-O@OoF7H{l*zZqAK%&g7hKx3*e^~^SyRMmk7;6wuBaxSS0nL_g_iPh zqRx>6=YnOrNcLP&FRr6@xUd|!>9-M0|I6&4fwX6aO2#u2R(lJPeoY;ECiO1uHw%y# zD0}HMb#5|U-SuRuNY<&b?8$Mf{zy#s0#Ro&b*`zbxUIL=FV2eNRdm&*MG~TWj!Wd) zcBw5^DOg1tz~d+tx#?!COP@eDB=99C8cM;%y}LK!^w&>M-j8CG>H5| z_GUO+0Agd)$_>HrNW05+Kd%DP94E}eJ;bKZgSSYjpC}uDU`b?<)(q}v%`@3ZKAeWLcx*RN#X{}ML1!oC*cuq`QOnc)8f*j znnHw-=kh1_YaXpmKJy+6+?JS|bR0d;W5ln~N-5cml^1p=_wpwVE=;x2kh8u%Py6qt zCwlb|e~UzCve*_Wm}X`=HC7PnY?I+na#gGUO%IK|bx!X+-K{-MblV|V{a43ucRk-d zX=#X76~OPiS9!Vk+#Qo3RE?KM3sZr`UUV#px{~gMCrg~+6DbTkBA6a{{WRcvy5V+p ztR3*jd6de%_qQT0(c!B-79u*Rh6goCc5XL3>E8(u2ai!+ z?fa`k2_0dqG;`{Z9x}Ei9}I&=G8Xr^M=DyZUN&uHSTxTpXD>~l(HtI}{=O0v3~YdS zPYaI{gftx$+GuVUcl{^>Os!ICridhEEykXqV*g@$43T@Z#49Bz8$FI z=v)=Z0>si$WUqc2Nn*W?{yeuiS16oYWmtIojTVZ{XY$qOllOms!oHL=sX(7eP6iF*kg&QT640AU2AyF?X?x7(23+`gQ`sWPOes{G*+-r z(li*#Y&r1U3%Y$AyuU=o{b|Skl>*hV1^s$7ih$XJa)CVDf;i^**gBIE1M{ENPO5yYGbxSZ&d%Y&^ygn_f_yHrx>4ckjQ>C z)03-Avn_38+2$A!>E$*9d1c=^6>v?CpO5BTK5idhFFTyp1q9lw)pOWJE25eohaGiH z>Ad2%?uUl1M$g6MhDjFf+-f^5*xnw;IK0=WoOd70@s|g%ZS(aNW4cYz0?Y->AmUQ& zfd9nUsU?;Ey6L;|reSvL@KH8tKAE0uJ&Avu4>eT0Zz^#hAmtwY+P(doC|a|vmz*(; z_FPQsuiB!`N~(VJxN!dd+r|}jJ8}%8t-#8Hj};;9%|`iyKXqHXV|IV#dHFch*LZHD z$#lG>bF1|v&9S^7vUh!RbuqUChKZ-t_7_66O#t@ER%PLYf}7=0mA_5vqS^D+trltp zS>atGJz9DE=k0}}#eYR=qf~x{B?~HUEgf2QMIARrvIccxLq+WPc$sxp&qWVUdk>#r zZ$~8!FS~L6z0pU-SJhUxhEv9ULe9)YXg)j=5his~b0Q^QJ^Z(Uxa~$rWSB-mg1MaN z-JRXZ<)8j_Mg&jV-i$p}bt5rvj~Ij_o>r@D{S+5uHSerp1ZX;o?6e-{!Qt;LlWUl(0>x*`|G7Qy8 zEixTHK8It<*!s^9q>h!+ld$ZgX8CnC@x0<1s4F}D5`Oe!3Du(YM|0(Yd<6!gOF3%o z8C!H$0$ynJ3IvHc+y15gkfaSw9g-#6FEWZT{}SxCi`rw>hyy=sbGX=%gH1pyE^HM> zMC66QXl|es|F(SK(p|Ajq9ENFa=9Q{QoTY!;Fr`JFDsG}gW30}GramwH@$!qU4;}u zfPr=ZX8ZFIQ1+VsQ#Da%FC_s|!*HlzZJg(ma4_D+<|ce>71jv(am%DTl(shJ^Sk!X z>MAAogSU%@Ji*R{w90*-<|TB`D!59(fUz!92L9dvV~2Ld6{tn|;mFs&^BS~fm3jkO zU0YjywF7~$W{jU76M0|ncwY&9j|Y5xGete#^zA!Eucmqqm8&&zK$O6zca3)0z|#v| zIOmb~o%Qui&2Z3r&v)-sP<`Eq?5}U3+^s_z_lsiDdv#Zu83#tRZG^Mcb!U>}0I=NP zd>3_}zlCsSqQ}S&PIoF2S&%ui{~GP?qCd4KAz``WC|VWG@gC?;-%Scf1OGG!SFxt@ zz)^fFo=DZmSs9IFdd5CvZ8haNp@(G^8`hyF1HNaQ4)+)^2MNl5u8q1g%EGN{gk5$;(Iz9W#_LH@JO z-D#yZgPG(OEW~qQCx`ayv`)f4JU7&77d6Dc^a4oWLfz`g=TD`rPdO=DE~UYD;*3@@ ziRdnnu;~B8`TQ?FnELHtI!-;8#0n>HO5By-hg~Jra*A|LS6L$QH`y%_RjB3NMA^&T zq5}(bNQbJup2B~j-4JmhsUFsedjGLsj#^FcAK}gav~4LRHkA#3OcfZ_wkG{!W7Q;O zJN|}*ytUfwAEoa$CHV1EKB@mOlb$~Sgmg=&pOMST9I5E-_2)Sj=>KO6P2u2u47 zD8J@9QQ``Ns#an1UyGM;B$07=qLsA!xU7pm)tmbH#*sTKN|wjwq-Nu{w3h7n_#Fg6 z(=ZB`ScG#!x*uOmC0A6pU%g2eGm8BCJojuN&?hx~QD`C-4gTSc-yC&7Pu4=6QMBM& zvhFlobrOlE+%otA(moHJ9xwQunbPXiaZZ{w!UefO1tmifH}D6#Zl3iTi+Du*cT*42 z#DECvS+fZ2_ajYEj8(NQoBJX-`)ql1m6JOKx14Mla`G}oK`7p;oRTW&IGb79pJ(0Z z7p7cdE{I+;py9A9YV1?BQ@oRS{KYFqM-@_>fF^-HnDl!?9H2e{8V-AO2?V=I1aY=v zAA*jruif52I(%3Mx}8HoI((~Y_v`yMN}UtN#+R(6M}-hq>S^u}PUdt~+Y>Y`9jBOV zIV+|p@Qkb~1|LrK*Yg>vFVl-3Xq$A>b&km9r!pbGni}+%mr_D%)Kgaob;~aeO=DJv z&*ub60}(#0+tYte!o2=nd(*GVA$PS8lg$UEBILWP zALB*o!E~EWWAk!7TYKtb;Wm2^?fb%M)yBr#IrN$^@DIZzG4W^Vj~V8NUOa1JwDDZ+ zE(kJuFR#Jf5*gqXzpHa|B2htN@vA+?-8z0)|7*EEdj5NCmq|zNifg87Rm_QI zI5fIHY-cn#Fs>kA?;WT0S3a8iksHZ@{Gtj5# z*}0p&ap3oraz)4uRrK|P>IA6F%BLA!$Snu7#&81K-nR4>1U<;-NRD5OOFT;%=}DGl zT!zwqSD|1p&MQ0~QA9b2%Z{f_uT%|O9E_`*V-#mEFaHoJXB1D*RNSwO4;xDCV0aU5 zd2(cms#QMeBxag2dmi;dd-vrQaG}ZJ+gDtHybmDZWwKSmRG;!<%N(lZJ5BtFx*ua4 zQvDCi2cwUo)s7GT7sYtr`111c_&-t{bB~&UJn2d@nWq2`|32NJ+BmNAkMz?#=w=`t z&&XwD$44mvj`mk+A}joy1!lR`xRFIGweh(~o|nb%)N-aYB8G>&>h!ZTH*hp)DIJ~6 zrM%?+=j%n@iAZ{VLe&;ErtT*C74oa|rRTj6vzR*5i)iHz1$Ufzu?QpRsH%}9VN=I1 zXt>LSRVLGDyg^9J-2m~V;+A6w+@4^yRPeM~2xatc_sWEvYt#1ciPhtqKCWJ}i%-1C z2kZJ7G)Of;bTmZjPyg2BPi6}D<5yqfN)ki0*H0~OeE=9;zft*=$b&ntv>o%G8xu

6}Ah~#K7F$69+%s_{4 zLfG%L172Q-%kZy(Px^_1QdY@p)|B8SYaA18fHt{ticH8J<(>#mj}+m9F-k8cQ-%pQ zowIeI@9E|@4sq2kbR1oa>b>GuK?kbARwd`G#Bij~YKGAp;#&)!9z@M`XBxa59()$j zb@=pB_iIux=1?Yqq3@W_(6?^DgkB@z+vos&>&+mC#vRk7Ssl<@AaH&Sa62JP=pdrU z0*DyS6N-vNG72Y+`jIGtsmfA$4URrw(mEC26nu|+mB7V;4OEY@&{|mf@nIh6)nXIU zp*Fi;p+(&=<86=`?Zr0td#SJ^*>>A*4{OopnLqYda_hox{SB+(r`-b`iSBO>k83&W zI9FUeFl7FXhnWZYYYU*aJWywB(CX&it-bg8+6fGj)@RBO@W+-U}(0yndD@`T8jWMJEg^D zcx_hypqt)?z9~RxPKPN_|I|W$6Y9>GFEYm_nq8!&d$PEo+NL)9QtxbjBFiIX=t>_1 zPt{~T+)1*T(Zr~;_(SzH%T#?y_OjobwC#0Xnh_5j7dTybbC@M=pRkt68x|g>`is{3 zGcC3QcUZ^b-rjrh95il@3z|Wz{`@`>T{_%u&#K8X?$x;hky zbEMZO+Gyt;{X+^jqn8jJ(#7W%A}z3erX%C>*j#|aQ1^mtvbnv!S@y?q?}BLtQ%US> zql{pPgSgrqqo0pVmj$_)778EBK#(lFE;_v!uBp%4hP|~LQByDV&%sM1NtN!&v4;gp zKKL_fRoVcQz4bFHYREF4zn7Uy8T?%((tRgqiR|yMYy2yX*cTnVyH>tqd+EiUhPGZw ziEp2{uMc%#^Cwl0#CqIiyX?31b@Gkhnw<@2&xGI3zK6f%!sdzT&9fPJD&}@gGfCR@ z=Q~6l*PaSx|JYXCbI1w8al&6Ae0w=G){^q=i+B2>t#+xiS1#&|N`@j!1HPFF!t-B& zC8$`43Uf&^9|IJLzho2|0PKo=Xvs9k*lf5_SXGzT97QNncYpdX!hOHaGb z&fB8W9|4mHi6v|i+I7mHy(G80HXaZ}}|lXnx%x_hG2c%z zKj){bz;l)7i?Z8F&HDx))$gwf)0Y-f+L$lWj3>L?Cu)nFk-zCjB8Lyu1-|djmCT38 z1b3gu174;$RX7$d$vip72_67S0ojxF4O5fqsbSPk1A%_t8%5Ow#8F~YvFI#ExQiiL z&xUc@hFWpYugaIs8{l1eD#+}Sj__;v1nJG*%dOS>+sn(?>7n!Ug(2tWrFYXZJ!?)9 z55UBG6+}0wXm98GHlU;D=)XM0IAY-4D2vqM`|(zf-L46FTSlif{zUBA9k~=Fso#_+`kF|m z;z(`acsGVd{n7s)zmuFZ!0SYL@m`4AcS)N$O$_HZLD{x&U*!hM9FI&8(<)IucZvpz!M zwZ5HE*rrJ&($i(2f{z<$@8D~bn)IUVo}u$zdVDcRoD$%L%s6UTDV6L^jk1#<-pyDz zQOrNg__tzkouN|Zjh~ifbum}NrS_GN>R*z2v`8}unmV0_!tXV9eF*Hc%=zFduUZ3h z6aTi9*FE#w{!fr`gu9FQ!4MuGebv@?x9iP=I9ghJNBq2#%rToHw1vin<-t>;>N$;! z`U=1Y2Z@N>HAKz+<`2b(lKvFgR*A|K52A{nMQJR^D<1U(7W8R_gd@%R!C5pdwf3iBu-}IR}t9DEsq$8liRhId_qe@F2-VIMM4d@MD@7 z6xIlDFE#Kg)^}$l$)%rl`?3fmjDt>IRJ#lAb?Yj>^$@xM;YRCOeHpl}hm{iA6MQn- zZq|RhxwVYHfH>Und3RPot?uf3%I55@S*}po)PGd2T?@c!RNsx_KOAzYjMHJ?9>OJ* z8R8MTd@i}Ct&qSM{2-3Moe2&x;9}YhX@JM^M+QEm2!x{|>5r=>k1z>nennvV0E}+< zz+zQ9joZqq#}#(A^QLnb!ppjx;y|+mDQTQ}A=dhcy!0FdR8%6}yeOE9u^wWDsv^U2TBJ!EvZ<=v1$T%90zvFYGUR)n>g({R<8og@MPMsO}KD>0R`_l z$E@D3EBoK4B={=CK_qmx>iz>E4z_gPn-0rwc4N0Zg0e08tQkF8SpH~1p*AVH78m9aPOK7x& zipC9!;Z{nTP*{acWY)iU)|~C93BF$@?UK2|@ZOI9s{l}uTJ;SS^RS`|ZZv0)hKz=$ zIj9bzy$`T%6Uw>TX#Sq&fL>XuBGlC|g1{1qTr@w?$i~9J`%**x5%@{>nK31OSxZN; z(5t??yUO*67tyPIl_n%3V+1FCPZT0_1LwHmSB+{A7c2v4Fv%O3a`^epQtGajEqRJ3tO5VOYi`E zs3DUmD-ji%v{hEiSib6?!v_W$k#d)c(2B=0|0xmizFFB%aH09+S5Z7J9sOYnX_U6a zT6$Qr3d+%Tt|B-xc;DQ&y3iMK z8@86`70h&UMyev4^)KA%MHbt)Ql7V}VW@Tr4s80S5mW2&TQbV-@O_>i{)h`(K}p7c z9)|KxR_rN7M{nqKxTj-b%)Ot*WLc?o>PO9rxa`PE1TJRkOONU&)TihAL*C0EC6nVh zaFo1yGFjGd^9nPPndji6QlQ5z{&QhA8oselS|2^q6q#AUZG?dHl{ ziBLsj>2Q}d$uFLKgm~*R4LWbax1A7~GbIz|S3x`@Nr`q@b))7iaC%toiO{Z1{O3y zsR}+S`b^E*d)u{w*xXt<#!q@%@j7>|1a}U#LPT9CHD^p+vbD|5hc?`{n}NX1|3Ew- zrIT19fv2H>I8p3;A1(=D^mKwn7(7v&M#D9ZzGKpfz{$BVL|Sn2P6V?OuJRQ~=o6x}=qYwDUnj zr{W-+iIid^Tz#B;4W=jw5%uy4ylqPJ4mz2iDj&pJ6nMs&srCB(=CRQ%a(DQxR!@8xG-Ti-gjYSH%ZN+9ZB znDHz|KQ~%g{p=oZB0wNc8E;QQlMYT>E~D$Tytzz655=fj`qRYWdM%*ML3y<7Bo>*{zpw6nRn@#fj} z<-?BY_RFWE^WeqpqxpAt)zk}9cee)Uz_^Xq$Cu05K5&7*A!UB07U^?s&*XLj;byn! zBlc2Y;yhE6Bn!ELD&#c>YZ1?)|peQP(W&Etp9{Enqf ze0Fv9RCf=s1+Qtv`c-FRYI|AV$=nY;lQsx**uC9iDY=yR>?q6?y#jN}qPH8mV&nI+d+`$PVI?``^9zg{y`@?}YU;QQ0zeZu3x z=Rxhj<3{vgrvLdPZEKiqcj`n#a!TUC15KZ>y%x{B7HM1X!>NOp2RExb19W5o`prBV z)`40QMV!>P zLwYGH8qL9p-QlEi4Rl*9If1(fOY;%*^;-CN=!~Uaad-0B-n8yPno-!QcAI%O zZ)6-oVnFb1=%9#lw`7%64<~hOK939w748JjR!BPBdWFsG2i)hy4tHket&K?jFD`vF zB^!pPTW=Y6 zR2R06En%hg>k2cX2d6|@%0Z=g32!1CN%K%etvX+{>HA1E{x?YY1;@BeFd9J~Nu^h0 z5m|oiFD0*If|)f*6*>VKv_@-6f;qaZ3}O0aZCdu1u@bN((iX4E`0z)#8udB)i{+&N z&$@T~he?oyuX;@UOm=CjZC@lGLs)A-q-ZHkGanP(!Z~e{-XKQ(Hcca<_w6lw0!jqczo3$~Y z;+tsBI7hscBonV=#e(|Y_+o$fv4pd6);OY|Md@gkvo73!NmU|{U!ggpx?&|*fd81X zF;jcbCVSKUExl-x%7|;`r+`X{eGM3nA##;$uCwgGtF12&m&aE3x$gJRno503+3^K( z!D(he6uC9E-1Ai}r-WJ;_X=oszS(kQlXB$5vSXoCm!-P@h&oLzmzg!&VYs^xMHq{9 z+$0o=-%o(jF$OPqu>&IS;0O+fycWN?&~iej8d~$HT$2eYT4x||K7YgJ>dMZ>#_sak z&Yq)12W#6pBK^1OK{bt)wAg48fIf~t2AcHuyN&LE{5MEP-YiK-YlbNy)}(1 ziiSpKI80&Yv?}Gy)3re6pH8KmUnIRMv&R}(^ifG}N3vtg33zS+Cs8+bH zV}~$xB{B6Q*zPV|`ufO^l*f*7ily`aJTND9NX$pa*TgB9+LY3MTkr5M9zD}F+y5L< z{O21$uQ0#FZ2J%HKmY1K+PvescX^1*oWLywK;Y)}v>UxlLFwi>Yf0|q78EI|nfOMX zJY$JSUx(5PhP%%5`C~;PL=$kB@GO<7M6F*A)*b&*C`g)9E}hQ^Ap61D{$l9XM7M8p z!IGUwMn{ReEGIkNaS6+T;@(cxwDun1xEN(alv%pJnVm2168rrB=yO*qBVOB|`g(q@ zzNSS|&8BA9C7EaEf7_R)C2(=exZM%saO@v}uz)5gO_GH;wXINMqxv+f-Xt)Ym7~ff zQWRt&VJG7iYj?!jH>&WqL9nkQwp)6;XV9VF+B|!XUc$U)y4uDhf6ue8!ygZ7L-}aU zXmcg!L75ghKJatIF4iGGUwEDE;cHJiVms%K=Dybh7}ZGq09;+U8{3^zz3H-8#yQsi zLzw>+1%0qkMEUE@AZgY@k*kGZIo9tXp4#?9m+@mlIMtIDGC>2xI^&$q~=K? zi{EeAQW@pp&InJATa&B+W@GWUk9yMGjFi*))Lv5wZ+VllRN~(~_EI!~RIg{Yhv7f@ ztz!orxL{h5YeMAC3S+w+Lol8G3)?=9gsuF0-1N{AG$S@zt$8cE%n_I+H zi{*Bu*iIo|{u1Qm=Z;3?^Hl%Nqy5mwEmg(Bt+LTi+qw;61$h630zHuDmyo{DC76*UpA*b}xLk5pWW&gj9{19jA4eCEh zu7(k`p6A3_(hN>_Y9=}tsoCops5xeJ55A06#+&4nend+kn*vMqfv?P3967FEg0KpU z;rwSal=)}6gg{EC!!^lrk4g24QLqj*pP=-fz)Cy)pz#`|Cu2B5rLVBIlgdST)L$D;z;Pg0MZ(flQ>0B3wX-WRw#WDsa z52vLFJehDVmE$rE?i$`e2DPk`brN-+G*{Xq&7?v1-9?V8zN;U-jJ3?QV)xM z+r{0Cj5Up(r;zPTLJdra*e9_j0udiAb&#I*t|jMACsukrFc56(VcZ)X1r8Eg` z#i(c6jGnLsi@W&5BdQ9i_@2H`-^(XYQdA&m^taKL6F>QX2LJE_L zIik~kc^pCjv$0*}-$yRrDFE3B literal 15372 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 From e3d37eeec5de5101a2a4065913e655d232a4bb1a Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Thu, 12 Mar 2026 16:13:47 +0530 Subject: [PATCH 25/38] Release artifacts --- charts/roost/templates/roost-ai-server.yaml | 6 +++--- charts/roost/templates/roost-app.yaml | 4 ++-- charts/roost/templates/roost-sc.yaml | 2 +- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15421 -> 15417 bytes 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/charts/roost/templates/roost-ai-server.yaml b/charts/roost/templates/roost-ai-server.yaml index 10df86c..f46514a 100644 --- a/charts/roost/templates/roost-ai-server.yaml +++ b/charts/roost/templates/roost-ai-server.yaml @@ -12,13 +12,13 @@ data: ROOST_VER: '{{ .Values.roostConfig.roostVersion }}' DEPLOYED_IN_K8S: 'true' ROOST_AI_NS: '{{ .Release.Namespace }}' - AI_SERVER_PVC: 'roost-ai-server-pvc' + AI_SERVER_PVC: roost-ai-server-pvc-{{ .Release.Namespace }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: roost-ai-server-pvc + name: roost-ai-server-pvc-{{ .Release.Namespace }} namespace: {{ .Release.Namespace }} spec: accessModes: @@ -62,7 +62,7 @@ spec: volumes: - name: roost-ai-server-data persistentVolumeClaim: - claimName: roost-ai-server-pvc + claimName: roost-ai-server-pvc-{{ .Release.Namespace }} --- {{- end }} diff --git a/charts/roost/templates/roost-app.yaml b/charts/roost/templates/roost-app.yaml index e8f56ed..dfb29e8 100644 --- a/charts/roost/templates/roost-app.yaml +++ b/charts/roost/templates/roost-app.yaml @@ -108,7 +108,7 @@ spec: apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: roost-app-pvc + name: roost-app-pvc-{{ .Release.Namespace }} namespace: {{ .Release.Namespace }} spec: accessModes: @@ -151,7 +151,7 @@ spec: volumes: - name: roost-app-data persistentVolumeClaim: - claimName: roost-app-pvc + claimName: roost-app-pvc-{{ .Release.Namespace }} --- diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index d0f3c3b..5277236 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -10,7 +10,7 @@ parameters: basePath: /var/tmp/Roost directoryPerms: "770" ensureUniqueDirectory: "true" - # subPathPattern: "/${.PVC.namespace}/${.PVC.name}" # we can't set such pattern as aws supports only 4 level path/ /var/tmp/Roost is already 3 level + subPathPattern: "/${.PVC.namespace}-${.PVC.name}" # aws supports only 4 level path. /var/tmp/Roost is already 3 level reclaimPolicy: Retain volumeBindingMode: Immediate diff --git a/releases/index.yaml b/releases/index.yaml index e2f8907..30a9b56 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T16:01:51.117036+05:30" + created: "2026-03-12T16:13:41.199632+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 4695a21323b5ecfb5272646b4d2ef4fd7d7a270916154260a89271f73a72d82e + digest: b412113536848debe4ccb882950de1c88cde09bb2de06aca9bf2f742a2fb8f66 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T16:01:51.115438+05:30" +generated: "2026-03-12T16:13:41.198181+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index ee4cf02d335a3ae6eeaf0c2f1d45f3d4beb6382b..db5c83bc92c0c914b85a39f81fe2d54525912b49 100644 GIT binary patch delta 14114 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 Date: Thu, 12 Mar 2026 16:40:48 +0530 Subject: [PATCH 26/38] Fix if logic and Release artifacts --- charts/roost/templates/_helpers.tpl | 2 +- charts/roost/templates/roost-app.yaml | 2 +- charts/roost/templates/roost-nginx.yaml | 12 ++++++------ charts/roost/templates/roost-web.yaml | 2 +- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15417 -> 15417 bytes 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/charts/roost/templates/_helpers.tpl b/charts/roost/templates/_helpers.tpl index c6503f8..d375e7e 100644 --- a/charts/roost/templates/_helpers.tpl +++ b/charts/roost/templates/_helpers.tpl @@ -65,7 +65,7 @@ Create the name of the service account to use Storage Class Name */}} {{- define "cluster.storageClassName" -}} -{{- if and .Values.storageClass (ne .Values.storageClass "") }} +{{- if and .Values.storageClass .Values.storageClass }} storageClassName: {{ .Values.storageClass }} {{- else if eq .Values.cloudConfig.clusterType "aks" }} storageClassName: roost-sc-azurefile-csi-nfs diff --git a/charts/roost/templates/roost-app.yaml b/charts/roost/templates/roost-app.yaml index dfb29e8..47ce6dd 100644 --- a/charts/roost/templates/roost-app.yaml +++ b/charts/roost/templates/roost-app.yaml @@ -1,4 +1,4 @@ -{{- $hasTls := or .Values.gateway.tls.enabled (and .Values.acm.enabled (ne .Values.acm.arn "")) -}} +{{- $hasTls := or .Values.gateway.tls.enabled (and .Values.acm.enabled .Values.acm.arn ) -}} {{- $useHttp := and (eq .Values.cloudConfig.clusterType "local") (not $hasTls) -}} {{- $protocol := ternary "http" "https" $useHttp -}} apiVersion: v1 diff --git a/charts/roost/templates/roost-nginx.yaml b/charts/roost/templates/roost-nginx.yaml index ec2c18c..78796d2 100644 --- a/charts/roost/templates/roost-nginx.yaml +++ b/charts/roost/templates/roost-nginx.yaml @@ -19,9 +19,9 @@ metadata: name: roost-nginx-svc namespace: {{ .Release.Namespace }} {{- if not .Values.gateway.enabled }} -{{- if or (and .Values.acm.enabled (ne .Values.acm.arn "")) (eq .Values.cloudConfig.clusterType "gke") }} +{{- if or (and .Values.acm.enabled .Values.acm.arn) (eq .Values.cloudConfig.clusterType "gke") }} annotations: - {{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} + {{- if and .Values.acm.enabled .Values.acm.arn }} service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443" @@ -68,10 +68,10 @@ metadata: namespace: {{ .Release.Namespace }} spec: gatewayClassName: {{ .Values.gateway.className }} -{{- if or (and .Values.acm.enabled (ne .Values.acm.arn "")) .Values.gateway.infraAnnotations }} +{{- if or (and .Values.acm.enabled .Values.acm.arn) .Values.gateway.infraAnnotations }} infrastructure: annotations: - {{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} + {{- if and .Values.acm.enabled .Values.acm.arn }} service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443" @@ -88,14 +88,14 @@ spec: allowedRoutes: namespaces: from: Same -{{- if and .Values.acm.enabled (ne .Values.acm.arn "") }} +{{- if and .Values.acm.enabled .Values.acm.arn }} - name: https port: 443 protocol: HTTP allowedRoutes: namespaces: from: Same -{{- else if and .Values.gateway.tls.enabled (ne .Values.gateway.tls.secretName "") }} +{{- else if and .Values.gateway.tls.enabled .Values.gateway.tls.secretName }} - name: https port: 443 protocol: HTTPS diff --git a/charts/roost/templates/roost-web.yaml b/charts/roost/templates/roost-web.yaml index 147d8ea..a3e86c3 100644 --- a/charts/roost/templates/roost-web.yaml +++ b/charts/roost/templates/roost-web.yaml @@ -1,4 +1,4 @@ -{{- $hasTls := or .Values.gateway.tls.enabled (and .Values.acm.enabled (ne .Values.acm.arn "")) -}} +{{- $hasTls := or .Values.gateway.tls.enabled (and .Values.acm.enabled .Values.acm.arn) -}} {{- $useHttp := and (eq .Values.cloudConfig.clusterType "local") (not $hasTls) -}} {{- $protocol := ternary "http" "https" $useHttp -}} apiVersion: v1 diff --git a/releases/index.yaml b/releases/index.yaml index 30a9b56..0885130 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T16:13:41.199632+05:30" + created: "2026-03-12T16:40:35.809641+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: b412113536848debe4ccb882950de1c88cde09bb2de06aca9bf2f742a2fb8f66 + digest: 808e8b5ab23381265275298426908c2393cd47e3eaaaceaffde4bad5c81d9733 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T16:13:41.198181+05:30" +generated: "2026-03-12T16:40:35.808179+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index db5c83bc92c0c914b85a39f81fe2d54525912b49..786c8ae226cfd1f6249e355756ebcc5ca252217c 100644 GIT binary patch delta 15258 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 delta 15253 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 bx98jQ?fLfn;m`jc00960k*0WW00IF3&baY| From 215f97fc45c5758618871f9e3818dd249475b317 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Thu, 12 Mar 2026 16:59:21 +0530 Subject: [PATCH 27/38] Fix gateway and Release artifacts --- charts/roost/templates/roost-nginx.yaml | 32 ++++++++++-------------- releases/index.yaml | 6 ++--- releases/roost-1.0.0.tgz | Bin 15417 -> 15407 bytes 3 files changed, 16 insertions(+), 22 deletions(-) diff --git a/charts/roost/templates/roost-nginx.yaml b/charts/roost/templates/roost-nginx.yaml index 78796d2..0918b6e 100644 --- a/charts/roost/templates/roost-nginx.yaml +++ b/charts/roost/templates/roost-nginx.yaml @@ -68,19 +68,26 @@ metadata: namespace: {{ .Release.Namespace }} spec: gatewayClassName: {{ .Values.gateway.className }} -{{- if or (and .Values.acm.enabled .Values.acm.arn) .Values.gateway.infraAnnotations }} + +{{- if and .Values.acm.enabled .Values.acm.arn }} infrastructure: annotations: - {{- if and .Values.acm.enabled .Values.acm.arn }} - service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn }} - service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing + service.beta.kubernetes.io/aws-load-balancer-ssl-cert: {{ .Values.acm.arn | quote }} + service.beta.kubernetes.io/aws-load-balancer-scheme: "internet-facing" service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443" - service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http + service.beta.kubernetes.io/aws-load-balancer-backend-protocol: "http" + service.beta.kubernetes.io/load-balancer-source-ranges: "0.0.0.0/0" + {{- range $key, $val := .Values.gateway.infraAnnotations }} + {{ $key }}: {{ $val | quote }} {{- end }} +{{- else if .Values.gateway.infraAnnotations }} + infrastructure: + annotations: {{- range $key, $val := .Values.gateway.infraAnnotations }} {{ $key }}: {{ $val | quote }} {{- end }} {{- end }} + listeners: - name: http port: 80 @@ -88,6 +95,7 @@ spec: allowedRoutes: namespaces: from: Same + {{- if and .Values.acm.enabled .Values.acm.arn }} - name: https port: 443 @@ -95,21 +103,7 @@ spec: allowedRoutes: namespaces: from: Same -{{- else if and .Values.gateway.tls.enabled .Values.gateway.tls.secretName }} - - name: https - port: 443 - protocol: HTTPS - hostname: {{ .Values.enterprise.domainURL | quote }} - tls: - mode: Terminate - certificateRefs: - - kind: Secret - name: {{ .Values.gateway.tls.secretName }} - allowedRoutes: - namespaces: - from: Same {{- end }} - --- apiVersion: gateway.networking.k8s.io/v1 diff --git a/releases/index.yaml b/releases/index.yaml index 0885130..63ed868 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T16:40:35.809641+05:30" + created: "2026-03-12T16:58:55.26796+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 808e8b5ab23381265275298426908c2393cd47e3eaaaceaffde4bad5c81d9733 + digest: 097fc341b465b89cf60f1ad0c576ae4c8f5f593eac96801e1c3bec1ec0e4bd16 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T16:40:35.808179+05:30" +generated: "2026-03-12T16:58:55.266357+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 786c8ae226cfd1f6249e355756ebcc5ca252217c..862a5105a0b8ffcb6846c930deec6915520862de 100644 GIT binary patch delta 8537 zcmV-fA*SBBc&~VnK!3I%d_VJ7oV9yP_9Ubvzr|K}dRMU(#~r`La*|1RPkA5`k`Pe@ zLr{{HOt$W){ruF{)c%+1GxyF7tE*#?z`?-*aB$vmkZ>;2`u>n4 zsW&I%@ZbJ`r_pFMcDA&d<;2bJBTCTR`GCWImC= zooTV%e>P$Mi+?<7{ZC0aq2iBX05`Ay4g6MG|2xg^>;IcPt8hU3WD=&J<^c400-oor z!sU<&U;+rdYo8pua#@o!r2+I=NM(To>W3tuFeM2iy^sn>IrJ#RL@ zW62n(@SIg=75?$}e^>uOx3hoIxr8_E9t9u&`~N_*S_vBg0WXtw3egLZ(Ed}o zKYJT1@VB#43-kg3-?K*!SOEbqv!D;i0RhF6X%RF5tCOA)CKEZG>zG7=ilQN7Y7B>{ zIC;*W>XX+I9|3QZ_Yt%N3-`Z^ldlpl0fv*`5>Np*voI4g0R_(%o&P1XXcQO$0Rgjt z6$b==ABx(x4;4?XA|ub3hT`Mh&gsE|nOzq2RAM#5sjR|?`0^U(%6D$nI=L+C9;)~_ zjTZ`5&^j-DZitQjIm0};S$~d?_B*HD&Y}~*)DS%P)#=%l zlu#;)tCXKs(RTMrsZ#sLXRi+`T^crWm08+<42AZ)S0`r&o#nMnzBEOkrOpEFZ(gQ7 z6Xr%#q}qmOa>1cat*pZLF^U(>;I=I~j-7%n)CHsHw%~IA+{ullEs*NAevy)7K-2U5 z^;dI>#PN4`NHtv^>7B`X4OM;_`Td{alCf=d=K1Q*m^i+Z8>ZxAvG@*rv5Tbwg@-s-Zevrp z;=emn{^g%)|BtQPez_m$w)>y9n&ta{Uv_pjH@^FSzQywp(XQm)f4CrbOWZ&~th*^d zV7bU=ySHtbujC^CugmSK*T2eL6GUI$=DIw-aZOBH(fn7?_zw$Wi59X_p-M~{~8s5rJA0{-JSLDcA@!+TrB#T#< zyfARAMpjgcX@Tj3GrqfGHH|%gM)*!8autm#<%z0$suG$`l1Kni$C~wlVW*OYCPrQk zL3uvScrp^02Zm2lh-C}%wI+<`IQo8wlg{a7t9q`OyfXyS8Fyonm_dg%dQJQ^oCA+2 z1Uy}T?5IQ8)#Cv?(b^GVUP?u};yEXiFlBDQ^NFMeG@w(@+yJqHCkDlTh{Z7tRE&bY z$groc=E^edIV74(%1Ba71m5Gt@LGg2>U}(QUQ9uvE>&EY(=g;SSi|&mEW#X`IDIe^ zPF2@%$NR_s{y(KD+o~*FnUhUbH#4B4&n%!r#mvIO{988ha!hdA$iE(vdMyL9BLn5FwbJZD-s8Tw zkCBT`l1Z$4ke!Cngvt;!nBW3k%Z{l^g!HHNbyyZ1lu54@Lhz?g8EiCS*e0R}9Z&?F z%E~&2S(3xFgnCbDT_S3zQDJ)g=AAHFfI8x1GZnlfA^%yh`DMwO7n3=vc8lg;l<#*N zH>d`RI8q{6h#viaFBeE!E&m%=;@1fRy-oh#++L9XHyYp1|9q3jVw`I?IP!}J{7TMy zoGog1d1$C*=DU7SyyfZ=hj8w5ht)gzMpqY|!^Q!>3_`(EYU*pZKGt1Y({kdPdS8Nj zB?(sU;1ge|@QGK}%euO<(ACQFx`Qi~9jvSo+gLr=^;n31g!o#XMg#L6?nZTwWZCqD zuWxavbyJek{v_{PR06g^Xd`jdpE^L-wr^g7Ke z_r;;IA@1$%nRlzuiNwTQriH#98ff2&6e$x*0x3V&X9-JDZR^d|^`aTrWD>Q-YrOC? z1H1|+S|gHwVAXY``88Q`z89&5n`&ntrxLMs1$^ zINL(jt0SZvoNZZ45AnF=OAn`4GFYhLx;+*Ju1-7o^iK<)b#@B8$C*Z{zE#kT!^wa} zPZj+mlCmkiGHmNkPQGdGq`Nd?mtiL5b#fPqRQjHO0alDGZsG&n7%^FC!H81h!nGGz zMYMsTMiz5$7Wp)v;>E}V^RgI!pxZG~2$lPa`sfMvk=oPs#ta*awM!{Cz8?&`%Tq1? zqpJ1QPJrEV{%d3NNm>5i-f4W#|Nc#$2g>WpM)p8qT?ZJ@o*ebpV;F4Qb9)y_^ zU0`KvYjfrP5R7v?*ErCGRS}$g&-_n-5kh=_66lj{>i#V{XhH4Miq0v#qV9Ss#{*aY zsicZRtYJlpqH>Vo4a%3g0O}5!mu1?^rA5meXe(m+rV}29G*Mz#!2;{?WKemT!h*#0KXYIzIZQxyq8@H zU*6QM;UA1>VfaZ*T#Da)s!!0F+R=zNMs%}K(FB1H}`zu&)N7pTDHw%Lw+ zWMP)u*MaNWVqrFeedhH6l+GrBUyf&p6Y7c~Ni+rpT2yohqw82SkQAz*idl8{m=Gqx zZ-%5LpU!BH#Id<^vuZ@kN}sk>KU3VZW$Tu$f_%9( zZ~<&K`yR#_Z01yER?8UIz0au`P4nBN>@%%B*jr`*-1iVyUQa!X$GEV>9S?H3qh0Ye zolGU`qP@%C=K0yZ%SkJoKL2dX>wk==+WsH&z)g5aze)U0v$<2g|8-}h(fn@z{}zwU zER!Db@c=qc*hdtu7Nos@3mz_)Ld~qXBm2w*e-}v1&{Zy4@LR3+7hJ*%-bEK`F%Lwo z__H4JfqFHiNzX1kps7_>YOK~zyiv~jtwa{mzDE3Kmb~eULO|^tPY-e|S7cqfJ;-n&7t?K# zjD_?}w}nYQ-054&c=ffS7%i}O4`kfl+T5scdg1FY&kRyT>D%aC#Wo+TeHFnxAY3sI zr78p)7GFOgh_H-*n57Q2z_5l%v z)*662=J2Qr@v9ElMv5In$jd{!Akvy zPu}^PeJ>M#Z$7)$o6jq-3S=fgOk&)OfJfmRwjjj2jAD`wy%KWj0=k5fU=EwAoRd(@ z^JKQ93o17-M{P#h`k=agG#=A{k(6p}d=)y+y5MH_o2r8lUu~SF2zVVlt+QgZ@30I}2|@R$Z2m zs~rvZ^oM-S^|E;BV}Yddi=t`fDJoJm7xHCY05O`V-Ss@7V>TII9ba@|6;7Xbv!b}O zvxEv$22w_oAA!e84za5~&VKwVe{}UVlIm0T>#*>vSn{HMSpNO%Mfav5DvkXC+U;(h z^(aYyp2e9QlB^hLbyhl_=An2bCO%8&+NWoPsm;bA zyIXq5TQAF0@f*kh5k!ova0ze4DtfZYDkiigr`JDwL;L>R>#3IiX7no^{l@1O`EUEl z&cgYRjjiwYzi;yVG57!cOI-gmqYpGhUUb@j`1F5Q{NkwFxjH^OJX?CFLdXZ)+uY-Vvy@1LE$JnCF^ zJNvIMbP{^x@`hoTThrxlxhCcYCi1X5$nyI4zKtxedeptLulw!n+t>Y8#IP6cOSs`m zgd*=Q+^BHT>0;)*LNobg6}MKy@YY&?Ilj;u{L|xiilm3_3j(Kk?&6%XW&_+7_E=KTmHy`qX*gzsh$r+9&@pa*(f=CT zo7*M*Z)1DsyZ-l0o>kCBY5^$+H3d{I#@>X50gDC@6MsYoRCvxRTn?FKr4~aPhA;?u zPc3p54IV>6L(GbTh9v7fi2`R8B050-C9K5>?XzndU@}DN%x$CJ?fS zdX9I{z3Qesq0TDo^YNHR@Mgb%3js@nBPHlM{$HW*c)gEF9sh4$3;D;SVQT$fblL|e9d8``A#L2U{-5k@ZI;%5^GWl6`~A<~WJ+7Wc3z)iW^i2}G(>4!n?%YB}VVIt(uLmEl-KrZn1k>@z8IRs4q37GrSagb9a zH0FY(Jefn5fAxhdv@Z)`(qog+A4E$0kpg(0P;@#7mQuNG!EdtCU)IpL)2i2Xu)}(m z3YtYCC1FSd$;2jtVtOurL_~OSj&chmv`-UAxdVtoO~7vf_a{;iLXNZmz8-L2tV@Uk zno9JNlm?#T!ofTuW9Eah;={S+T7-zw09k2|f-#P<2 z$Kkq-5&F&)P7((?5(X!Uz;hmkd1hvV_}6VhOAaQxdX3MFc_2878220o}fG zmjGWdO~J|$k-Z;(jHuoFf@f`MC1R26r(Oc}pYs&}C(KW{K6ZuEHWTZh<-+SD@cB6A z5sgv_89!!)Ol~h(Qss!oH*oL_)|97>gzH&pD?})-U|ue%BUP7{{sAOrps&zy3;C^E zF7|V5cf}-c&x%q)LSz z0SXt!wc*ZV92rJEQTmaPKpf|&FV{Q_NszheNf1Z|W%wdcl7x&Vk0F^vkhiJM8Q=_| zX~O6fxtXJXRyj)FU3OYfX!JKd7zpw&@LM*2C$Yb-luZ9pfrDe?@LMGQVzpla zDJg{|B*}Xe0=*~5ZO_qll%Sir&xd3xDQBiP3C1j9BGsE|!UjX6;p!^1(XA^7wcxxS&jbl0<#8r_g*$kwnqkw3-ZkO43O}b?0A4 znta9SWZq_7b)#&WIC3lU(-7359ax-5YNkl&D8$H3R_?VgyE(^rMpU=64G_L)<8_>- z2m5NbviC5IvVrkjZTFp*-F@`|Pu6UB&<+BBh(t{FDb2%WisbLPivX+%9E} zHL(sy?Gs3NNbybqUFTVMzk76mo1roY07+Bg4{6|Rc^Q`^LEuWhvLJ}4njq)mkR~j} zwz7tt?W~uwf*f-xEwNPKZVW043yuyP2LPI$9sr+5Le_TBoS^|kbcR5Bb8SJAB?TFO zQ+RW}FB!E($3jIDYYj*=NQWdM1RcF=ZpX&Ix8WZG}*j%vC9+#~t1B{sTB8ux605(i__m7Xj%@>27U%zXc%^xgV zInIs;r+oHUOEM^1vB+kmIBp`QKI_kua4uVa4jrtM{;D5jBRzg z_zQivjqFStn|Mj*@CKXEckZK(5Fpo=%Pg0tLrRj!Q{ooyr;4{k?nKlP**Y1CI*DUf zi(u=TCz6kNUjoKK;Rc{~E{U-lCv?i_OqP)yP=oH0Ai(84fZr~31UDWmIK}PEjo>$b z&4~01QvuP)6Gy1?{IU_%p~o}YyCOL;uFOS0uB#hXHQYo8t|KSj^mKk^wN|qcsR_OJ zfeK%jdnScLNkE#6nZWK!d9TOQp`ooLyOksbzbml$Y`S>X-mh~!De1-ui+mQ7&}D%q zSzt#C_-cB{Ng)ag!k#8pc8uZ@@{AyV(hhNVl$&}uH!u~ug9$VHEQVU<`i#zUU}?lz zjt1`!)&G_KNA*Jw)z=LD#^+}HPxHyvM)~~rRlyYVF$fC~1tR8t!nr&*Hf8g!D!qqP-6^Y3v56zcZzqn*oXTm`CDR=rA5h5}!vYjc_BZm4GXL z--6oV*?#x@&u%al?_QkG`lr91_cr@$&TND(ytZkWo^EH>FvJyUmwFK)8_|6_c}P)C0i+d z{c7Kz9ZUwlzVP;syYI-8XIXs{6NK|Y_M{N!(}G%~?>C#2H2d2d!8Y9>yMd3b+Xb`c zH+Hu-f{lK^Px?EJ4YIQuwY9n1_sLd+_IeF}YrEOo+HLOaZPrwFzG9QyF?#{$lUOoM z0q3)(GLQiR1Z9&rG$0eNDH%pGSU?g@Xn+AyIWo#S{XdgyG`%X5r)tlLl6yqjj^m3w zx(HTvemdZN%duhNkA8&nH~Vtph~hyQDVk!wKa)~5R)3B0ER;IjW(DBmS))7#zXdfq z5^}icNYn=-Wr#3hZs~+&3u=AgHZ};|^Ba48e{-Aq+dEseTtHXn8ChSYnZGi|1C>AI zscZv@bojC(r#fvFu1p<_Xl_I|#;M%!gLaC{Nyn8ypIL1r*rQad*{XU?=)+}hGP|x7 zj^4?Qmw%5*%6t-r^UUBgW%}j{fC2Wvy7Wo6B#htYr~TvC-OJ9!&)~Z1mA0fjJ@n%Y z^L@dTUG=Gsp*0uzT4$?TP{Z?{`n;Cr`XrOFpy>2?3JRFbo{R9Ez|95o;H{48FI+&(`7xyse#zc4GO^5*2V>4vxU zXx$2+V2cX~;r!$8|Nf7^|2w?kv&@d(M+^H}>5>CAQPy>Zult``&N^ScUXlO!``_iq z|NH;6f!V&n9bnD)I^+&;dicC1fX|}r4u5MF6|bX)NUUqP>dB!mxp_JOSW74gME2>C zeao~-mQjRShFvoG0jz0b?9n-19gdgR1HF#9+#}Sf^l)AU^9INnvT}A&$qTO4rP$hc z4|TcyO6?oNG1Rc1Ba4%CHB8%Z!p_SsAad=uT{t~{225lQ63IeN51$({dnH6KkAJ%@ zK<`xj*_5@l0tlW)ZTw z%j2%WP3}F|9qo!Z-g-!y{B&lU=d%E8A&f@ap>0vr8jIs(&pryD;5MSI^9?b~eh$K+U;qc))n0e?lOkCBOoi z9#wT49>HQS)qW=dl&;HHt3x0jJc8!N6TJ7K`6EPJVu1c~8h92r``iBnrZ8 zQ`Hyl;$uj$X5`a|rw}Jp&?p6-01pF-&ZG#WxNY|ovQCaBBIRTDk?PZ@MNclW-pc!O z>Pp|M`$ya~nj>)>&cW@2YavtmsAI2OA%#7+pW6k< zOouI%OszMesZgi~cy2^utAlRoT}U;r;K38rA56}crB>JbHrj-f|SHxn2^(^ zxBUn?*20X0H8SNa5D@TLq=J4VIYZ{B*0zYMlnES(27TZ@lfyIg6Ms1|RHs!8RAt{Q z{?R6=}_$g&k2fKuHK>WG6Fri+MQ>45GYjPu=NyWtHUB4?eFk*y)DiLw;6Hi-h7gmX!s!u-`6zwT-0W%p50T2pd|>Mf5ap^_RBKDI?b zsAtk2>G7$aH0>Y&A6cv>$nmoRV6;$5)}3wdEeZuq0-YiMREP-*QaS7W^ccnQKQO{_IxqtXrLwxDNAm zHe>0qwa6(w&s$`5D3xac_S)+MJsR?vL>3F{p6eOWf?71_S0h?@xrl1bajJZoI%}8{ zPkmengc);N&1BE^*Kh(V{Dj3RzPgaJ#Ut!7kO(?a z;HKQ|L;+kxWQ0R-N)PmW!=tVx>E0QxMXvcLiLLy}OKl7x|7NCl)EdK6+J1Py>iDTg_qB#_dv zWDHbz&Z@Ht|NO^)sQ;kb*}v#q!khN->rOX+|Nqc`hO@o_g8>1{vqA%-0s;NA<^`An z0RoeM2uumjfBZv!{NMivlhg=c1fT!$50f|v9tEHO^M66JTL~Kh0dJFc3egLe(Ed}o zKYJT1@b|M*3-kg3U$aOKSOEdAv!M^j0Rh#MY7sO6yOW<0CKEfI>zG7=ilQN7Y7B>{ zIC;*W>yy|K9|7-^_z|=O3irQ?lduvm0gjX45>NqmvoRAh0R^uXo&PPfX%rX%0Ryvw z6$b==e-*WDA1a<&MMj=64aLX1ozsH_GrKJ4sl;lAQ(1)(@#QtnmG9iDb#htOJyh{= z8ZQ*ApmkpQ+z=c4bB1|xv;G_(?RQSQokb^rt%Ky*-gL{qyuD#B&XW@A(yzOntJAY9 zDWOypS1CWOqV4XLQl<8f&t4x?x-@L$DzmhI84B%puTIVmI?HRDd})e6OPvMU-@HtF zCd`efNVN^m#yb%iR16?kZQU-*b#D*<-kgssHl4{j|n36a7PGM$CuXG{;Z@wr2a@u#yYJE_9Nwg z@5nfWwV3%M(s&(8mjy<^83HSC1cy_%=6WqF>!n+H%!ULV(}gLVi!vV3J-Cv+{UJG z#ea9E{M$d({vTVn{c=ChZTCNIHOu#ZzwGR6ZhZIue2eEHqFu?o|8PO>mbig}Sa(x^ zz;cn#c5mAq9DIt&>pV4|R_0%A_WC+_C34&)IbgI@fW?SqcUl zK}q5dO-ml$QbNp;+K`Qm1G|)~G`y9cK1^sbugHB#{83jy3B8!%ig)O^m!8 zg7SQt@nj@04-B8A5X%arFHVC!N#FR`pyld1nZuGw#MDF@p|k^qTl-I0qh4 z2za{w*inbFtH%R)qO~K!yp)P`#dA(3VanWq=MzZ{Xh5f)xdCDYPYjBG5sPCQs2Bx( zkzr3?&6Q=^b4WCol#!&E2)xIO;k5{5)cbhqyqJPSU8=Y)r(wuvu!iaBScEw=ar$5; zoT{$jj`z?1`M*k2wpCfUGAEm=Ze~D7pIJbMikXFl`L}H1<(S~Kk$*iT^;!mINz&^i zh22J0=&&;7jr?LI!p3iZa$3@?UMb~5YqwE;EvfD}XHhtZ1dWt5fZ32nav)0QD^!l; z_US<((Z8A*@@+n$heSYW=BhIuRcDjRr#S8vPm=}EkR-);9}$NvJ!T?>6>sHEX=Hv7 zQ~y+-7VWb{qy}1clvJ3{?>UPQ?pi{#av2i!KZ8X_q+)i^O-&B$HV8AUh4C36&veFu?`7mK{@-2#!_3D3e|*gy2t~GT3OuuuVh{I-m$T zm6df4vm}RU3H6@RxTpDvKJTK+e##IF+sdYk;exxFC&Z#2H2|M@15#W>e)aO4*c_?4XZ zI9t^2^3YJr%y<2uc+1r#4&mJA4y$+ajjk>_hm8Y%8H9qT)YR8*eXP5*rsc#n^}Yo6 zN)oKx!6&{_;S;Z{mvwbzp{teUbq7}}J6KsGwy}D!>#-1j3GuZ&jRxjD+>PoU$+GDQ zU*F!u{7{YluR%ROoqLSJ&e2q}5GoOt)~r&%aH*r{g0D0-#@^(P5S=leWL>2;b{ z?u$cZL)_cjGw)WR6N!nrObdNIG|;{kDN-hs1X6yk&k~lR+SZ$^>qRrL$s}rv*LdM) z26z=tv_>R^J}u?d@okd5xcW{t7N%q>+BSGk28%@eXF1whm!$| zo+|oBBxO^2W!To8oP5*VNq1?)F2hX9>*OvJsq{U61FRTX+{6dCF=DdPf)S<0g=;Uc zif98vjV$KiEb?hS#fy;#=4CPdK(}L}5GwZ-_0bdTBekdNjTtr;YnM`Pd_Nd=m#13( zM^)>qodCP#{MW{lW;y@+_DpD=`WVcjdh=uU5mJXR%Ua}Zo zwxoQ2>6q0jygsUIbw*LzX>DyFl<5id9$(;}N-7(3F$_ImNytFk{STk=rLujIt?sX}O2=Ruw!dCG`0GHgd@*vEV z=mINSTbnEQhhUuJxyFGetcu{|d**)vj1b~~lR%$rQ}=JtK?`c1R&-9`6?NBBIUczB zPbF0pVht-&6qSPvZ&1F}1yFa;ye!jRE-hN-KwA;hFK+`R3Xrz8HmgA?1MTf8mzEV- zyeg_}n_hZJU9LCU)vN8n3(Xqg%GMF3G@bA;q=^!{3Km$8Cxgn%6c!||2V%dJ5o!>B z_f&WX7EPAgmJ4Kf2x}|@EMNJgCV27oDm~51^83Ts7Fl5O8m0VR?UETwWS>MZ%EJ zXn?LwQPdvQP5-t!)=&7j1zj?xRSw2~JIpor4(#!(qiOQeRXIcL90gV1@@wcG-i5Ay zJG^r;_tFfoZpxF7x|06V-2Iz}jpx^HU(kL@5jPT}>`pInhBU%`KRX5nrp)KF;{TR2XY>;(C&Rqwj!UnVq z%km`Em(nan?OvCw+;J*bNCK-+&K`^ay+O!(By@!=?7J*>HEt?xXkgyl2m{x@i(z@N zf){qK*wV*+^@r+4e05LaKpPEzEB0M$hN%n}G)aXmFPDI0AyiP(P~h}%M|3_#OYJ0K zMR6tv$nZA0K0}Ap9dNmAwj&=|nC12z=eo97n9X1x6Xrjfa2X!giyxqdBw%P1^7-uMNr^S55)r{-jhwqH~{B80On${ld0yF^b zdonGrr=G>LX;|Wpr_%Iu|IS9E`Q85iEgqYHuOvO<;{kM@u#YH*EC@yyJX|iYnOSp3PLs*VE|8d^t6a3; zw_5G5INKMzi!Rh+9*A1;XFcQt^=e9!o?UoAQ>(1hv#pTgIz&9Anz32q zzjV~iFy26u|HMbF{;zzN@&7E}&L4mNb8~a6od0v@N%Q;puW#~vjrh+jdD9n#fZ92p z9^_cA$hvfUkl{iurrRPJ3+b6|3zK}f)3=oI>T5+YT43)U$hf_=xl!Tt!q;D(8Kj8P zw^31wZ9Z60DS~-_K)7NaN>vCpEWUm~5MdcHOLJ&}`Pgc1dmFI2EWOGf6+u|J&dqb* zAVLG|Ls&0`3EtG~10o8oH2`jux*Ic;&XS=bz{ayb17SBC@OrhppH+#1?3$U#4cC7`u zbm!L>!Nm!mG6_!ZezY$OXw)&fn~NnRxTrwcdPQfmI+g0b&y4W&}J6=dcAK-enY% zbm*0kQy0)Blmv6wROOt6VxA|nC0$UtfjMe3($)vn^`r5a28^UsYvZfXdDaCtyWdnD zg!pRXEJaw~rM>b{_ih?$bw+d$Z^~g8m-vfbr&~yWeLtDUDGf4;-?`^+2}_^zjH?;MD4EU z2_3V^`0Dtg3#)MYyqgupot-6Am@<$un*0bnR&t14^>Oy&SNWr>uaQ)rvR{XVU&WFa z?Zfha?_V#vHw{r~><`dxck`@AN%AbtrV4dH28bYHWQ9w3D^}5yRaTLGEz;{>y`g=7 z?)6m5e>3`(j(+2Fi~P6!WT$-odwXN+yZ!Hfn>>Ha{XhQ}*Z<7u0}YWEo%a4EUQl2z z_W8m~eR6=-#Xd)0e6ddswsU&fxj4T#>UOS<&koO)-l-7s0XMf_S~#7YU3RYa&rZ8% z$DOP5i?hGHdmwJ=(x43TL+|mi2H-(A@|5e}_jVnt2M@ewCx`GQH|FF}zU1DUB~b2v zcmqzEmS23I&5Z!>bF+;F=!-6=SqA5>*VN?ozv`7Uw}HLqkFNP9=W_>*yYxA`CG1uxq*p1><+TL{=IJ_%c~xB zuk7o7JNx!^zZIePh5Hh2xDuhry9+meDqM8Bm^rV|OnzC#t<^9Rv{nwqvj+e4_?;r@ z;rZoqqVOo3t4pJc#JuC32YH3Bdi%kbTxO7+{mia1(5FVfmTPWC@8Ocu=TD*JlEc?u z?vhied>dDsYU{x+I92_=k%Fd{<;*F>3C`%!#2SBK4*P<@X`Z_{r>xlkw?znlmK1cQ z|9L|ij@cmM3H<|fj9c`-#`flRN&nl}-ubToeUoPuw2@js%0W#5m5Z@AVPU|c0mQ@~ zkpUH+vkI3(W?8AlkcJ@)Lf%u0oJE7jkkAmbqM#wkdQYOjS%ruW(0>VQaYFm-ng*B* z7XHh+r_w?42y04|Af^d~ETW!&;~jLbx+zbnvkLosJmwL++3!NY65&V*x{m)>=sRBT zV^YWen-{}DUH;Gf6w|1l1L_ffG>Or6Dx5!iVir4p_IhOG{Mk##@^7B7f%E78;jF?N zk}y6IaCFcSju$8VJ@r$^V*w>~RXpME9d9ap9?<$`$|{x3T1gOiSbHxB-gHf~w} zPj-$rko$6r1tn}A4H14$Obsg+~u%4xYW|2rq7}7v8v5BCVo(mBX9-O1x0txNY1XAt*qEHj? zTfqH^6oil?Er72F+!yN-;((?Sy(Fc9=eTe%kI0z$pse_CZn+jAqBKBO+M{5MV=RI> zpCl#^@S5!Q`5OlSgN_-G)+N;Tn0(|Bbe?x%zk38h!qf!^8Cnv59dwovEQyDp=t$Jj zaGTaAf+m9r3uvA8h3gCE4bySBZexVLGli4HfsTa1Nh0u^hasOqDhIAW85;>@t-!YP zGd!+f1A#}dbz=hN0Fj@>}%LdgEYS%79$UN|S^F?W-)|Hj-EZ zE5nq8EKm_a5Oaoq3Fuuwx3AnKz!ywYuyRCX?*}7l_rBm+TUv=&B>SnCK>g=@1;7dO z6RuAv;k3=fI%v7@`UreJj(J3*R6@p&Ss|0#OO{kQqVWwJJcBjmX(Qo!R@w>?$}5z0fC9NS$n$=kD{ln{}@QorBhujH>fId!q z(Q=%>{q1jJ=pY+YAA=w(ZB~H7g>h}T^B6~lQBRb9BqR{WIqJ(b4?_}UZh8^~l0g~1 z2$Uotqse1`NG1{FZK`tyI74WfFgitU=BQN;Q>A$b;C<{%CY-@LJ^`O#4(%uhsqYp* z$fhSLcLXi)NJ$+*Q#3}f33A(WbR8w=X72MLnM%r;=}m$$i=X0FdqLTRVP`V6P0^E0d}Fip9W_Y+?MMU^^}-)1M?!-|Q(g z-%=z|^fs*~L!Xj#l2G0G*O4Y)aXOi|Sy$aCntFWPt=r|H4I+O6z845Ms+U_4jbedlF&Uwy!nH5(qZg8(8PP`npO zEEYfI0mZVL9-NR71tGUfSz}GC!%_PL5*|{#Q$W{w*4^(O9pGlD3<5yXl=wp$I9p!E zB}ovtlCLZXBC00Hxj3W=OR=r2A!j@5rK}*wTuMtU6}TINio$}U1IGb?rl$wM=aGV=Yc(5@n$UY6 zsPJ{UXHqzn1f}g^pk|-`A&j=!a?GSfIxv7V915>d(m@u=?VyI=V&*+2zmPVYV zGw}XU{a@LCR6q1kea+Bsd~UY?G@op3l+S-}HNWS7{Wi}k9H=wFdM>N$)G|{q-oEp$ zeRAyfc`_!c-2E`f)R7hakR(zUPncXlMqiEz3Xm*Hxw3m?(Pf_Fn4=plOcG*$ju)y> zPFTf%>ga>aLV%SXysG}q4*aN_+q-IoJ_go@ic^d56b!6Yyrs?hq>{HYb>|QY8JX1h zSgy{hboky+S(%Dk+H@pk3u-l|bO(Ss5@_8f;Q(ffS8woKx;d5Dg4)L(q zHyRraceveWaol)9dZQ1~-UpgAc7xR4nbOV8fJA%DBXKNr7>^{0&!dz^xDnP$z!kr5 zLGAEtzkB`{HyDd|FV1KE(_hbf8~q7;^L+E=+wE5$Mo->-Ku>%jwnrj=wzbpT-XVML zc5`dP-P+pOb9+zr`fe}q{XP0*$L~Ms*NXMBHs8PWc3=IEkKvQ)^Mj##9h~fvt(3lg zweQakCWBvJc>BlQcjU>ltiFi}!ucS3Qi$_uL9NmEn@viZ{q2oln{JTZz{l3@f?4w$ zyW1PVM!(-D{hh`J+1c6`+T88?WUE1Yy@tQF-Ry1cHh1>7^iZ>585d*CmmM;eP*?hV2@I*W~=Hop%0h2$?UpTIC>{H zUOs;&Df3Af&NGA0l(VFPk}!UopZ1SmcP~2^KZEP4SK5;D^w5tp%=ZOT zcGagkhSprhoIagCwdsuVq~|Y|-mSf^^+?~{3$}^7M;n{LX0O+y8@tE^mB0_0%rr^0Z!d8cQ&_f) z51pRUSu4}^?8KIaw^o_{EMtz7=L#+KIaeR6jX?Ox?7BZG6Pet@e)jNheGW6CY2AM& zas4OjmnvU;rPuw>Qc2F*QeDxWm<;}@!(+zLy(Yh5t z!4?+~!ujVv{^Otj_z!r&XPF(nj~4c|(j^CKqO9u*U-v(?oOOPAy(0hlkAKLI|NH-F z1G9aDJHVRpb;upy^zeC20G~zK9oBy=DqcqokyzJo)ssVCa`SWmu$E8~i0soN`<7{w zETagu47+6V16b3>*rRj2Ivg*r2YMZIxkso|>EXNz<_(ZDWaaFlk{4X7OR=@@9_n)Y zmD)FkW2j+2M;0gPYM8d+gq@dNK;+tQyKs8^44B9qB$9=k9zHi@_DYCe9(R9R%HNzH zAye07KLV3#ULvM8K^9?xJ818pSP4){AbF%c(q4uN>^2$~yDyoT5Cnm?A5ecOdIe^1F&(&l zqjxz2JGw;6EY0QcUhpU;>F{aolV=VGc-E{o5P!Eo{w`tu?lE5PO`;&oHdTG$E1>#e*mr>^w9x}OAf z^M%B$Zp737meBrFxj%n<8!PbltT__L;T+sPxE3;{k2?0s6;jx9`?+0!%yigN$<%ri znhJ$_fagXewmSF*KqIh`&#B5ya>@vXTw2syh1Y^gJVz{cB}hs9g$X%rdfShXV=c@` zSR+%;0s#S^MJnh=k~3s}YHf?CN}0fsXwV1lGdVm%Kamqdby|PLKvnj=GES*1GFZLH z)?SxljGs~#b+AiF2gIM7y9Me6IYr8AuqHR+nN&=CK8{JsdLdo+7DRBRD%lrBq18mP zM3nq76}r6_veA7qAg1=-{{wVHhxtd@6V2 z+(E2;$y%?&2)9spev-l?{A)z#st?E5WWYoo6e`6%7dc3fovjkErgo};PS;h<*A=pX z)HmH+K#=s)n6OC8T{N1qghx8W&dNi-prk+{F}*frrlAJ$>(&$%I+N%OO@9leWZl{J zUcRTP1)o0auA>3Z@S(4AyOr`SzB)KH5t&OCol%-}qbdNPk3LD)#D)zCOJWw8cw5i- zEypBn!B3Kzxpoxd&u$gZy46XE>o8wuGnNipi=5K)yhT=rQh63&uf0CdqamM3WU;XB zxtTHdr%K9~sk4ST@zlqKK$tPN)lBvrzveiU5TQOCDRXB2;+&3O r(m9mgz7{k=Mk?R`tKIV7pYPB2=lk=AKmUIK00960vbm`>00IF3yQ-hr From 1dfbbacb8b9b6247effcba921d14862e2b716796 Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Thu, 12 Mar 2026 17:22:35 +0530 Subject: [PATCH 28/38] skip clusterscope resources on ns change and Release artifacts --- charts/roost/templates/roost-sc.yaml | 6 +++--- charts/roost/values.yaml | 3 +++ releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15407 -> 15432 bytes 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index 5277236..825bd27 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -1,4 +1,4 @@ -{{- if eq .Values.cloudConfig.clusterType "eks" }} +{{- if and (eq .Values.cloudConfig.clusterType "eks") .Values.installClusterResources.storageClass }} apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: @@ -33,7 +33,7 @@ allowVolumeExpansion: true --- {{- end }} -{{- if eq .Values.cloudConfig.clusterType "aks" }} +{{- if and (eq .Values.cloudConfig.clusterType "aks") .Values.installClusterResources.storageClass }} apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: @@ -51,7 +51,7 @@ mountOptions: --- {{- end}} -{{- if eq .Values.cloudConfig.clusterType "local" }} +{{- if and (eq .Values.cloudConfig.clusterType "local") .Values.installClusterResources.storageClass }} apiVersion: v1 kind: PersistentVolume metadata: diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index 2ca4f6a..3997c2b 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -37,6 +37,9 @@ # Kubernetes cluster domain. Override if your cluster uses a non-default domain. clusterDomain: cluster.local +installClusterResources: + storageClass: true + database: integrated: true # true/false type: mysql # mysql/postgres diff --git a/releases/index.yaml b/releases/index.yaml index 63ed868..62ddafd 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T16:58:55.26796+05:30" + created: "2026-03-12T17:22:04.532519+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 097fc341b465b89cf60f1ad0c576ae4c8f5f593eac96801e1c3bec1ec0e4bd16 + digest: b70310accd4ba6c04fcfa78c59503a1bf94dfaaac8cddf4ec66249967fa8545f name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T16:58:55.266357+05:30" +generated: "2026-03-12T17:22:04.528801+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 862a5105a0b8ffcb6846c930deec6915520862de..4f338076ba6be6ce33220956edee71592f8423ab 100644 GIT binary patch delta 14662 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 Do?O54 From ca04843c205ac7bf9a0e3c50bc777f6fb5e156ae Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Thu, 12 Mar 2026 18:02:05 +0530 Subject: [PATCH 29/38] make drive all writable and Release artifacts --- charts/roost/templates/roost-sc.yaml | 2 +- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15432 -> 15436 bytes 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index 825bd27..9c26318 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -8,7 +8,7 @@ parameters: fileSystemId: {{ .Values.cloudConfig.efsFileSystemID }} provisioningMode: efs-ap basePath: /var/tmp/Roost - directoryPerms: "770" + directoryPerms: "777" ensureUniqueDirectory: "true" subPathPattern: "/${.PVC.namespace}-${.PVC.name}" # aws supports only 4 level path. /var/tmp/Roost is already 3 level reclaimPolicy: Retain diff --git a/releases/index.yaml b/releases/index.yaml index 62ddafd..c9426e7 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T17:22:04.532519+05:30" + created: "2026-03-12T18:01:34.419089+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: b70310accd4ba6c04fcfa78c59503a1bf94dfaaac8cddf4ec66249967fa8545f + digest: d185bfc0724cb46f3296ebe40d95ee9d2240c69b12321239591fe98af4d268e0 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T17:22:04.528801+05:30" +generated: "2026-03-12T18:01:34.41749+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 4f338076ba6be6ce33220956edee71592f8423ab..4bf3e4ce865d03b4ea9cf8f9792e4494e218b05a 100644 GIT binary patch delta 15098 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 Wk2f$R1Oyn2uw7wH3;_iR@qYlq48^4Y delta 15066 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 From f9bae6408860ef814e42d1e945f59e5cd4d5ac4a Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Fri, 13 Mar 2026 15:50:21 +0530 Subject: [PATCH 30/38] update efs permission and Release artifacts --- charts/roost/templates/_helpers.tpl | 6 +++--- charts/roost/templates/roost-ai-server.yaml | 5 +++++ charts/roost/templates/roost-sc.yaml | 13 +++++++------ charts/roost/values.yaml | 2 +- 4 files changed, 16 insertions(+), 10 deletions(-) diff --git a/charts/roost/templates/_helpers.tpl b/charts/roost/templates/_helpers.tpl index d375e7e..8b120b5 100644 --- a/charts/roost/templates/_helpers.tpl +++ b/charts/roost/templates/_helpers.tpl @@ -68,13 +68,13 @@ Storage Class Name {{- if and .Values.storageClass .Values.storageClass }} storageClassName: {{ .Values.storageClass }} {{- else if eq .Values.cloudConfig.clusterType "aks" }} -storageClassName: roost-sc-azurefile-csi-nfs +storageClassName: {{ .Values.storageClass }} {{- else if eq .Values.cloudConfig.clusterType "gke" }} storageClassName: standard-rwx {{- else if eq .Values.cloudConfig.clusterType "eks" }} -storageClassName: roost-sc-efs +storageClassName: {{ .Values.storageClass }} {{- else if eq .Values.cloudConfig.clusterType "local" }} -storageClassName: roost-sc-local +storageClassName: {{ .Values.storageClass }} {{- end }} {{- end }} diff --git a/charts/roost/templates/roost-ai-server.yaml b/charts/roost/templates/roost-ai-server.yaml index f46514a..f7238b2 100644 --- a/charts/roost/templates/roost-ai-server.yaml +++ b/charts/roost/templates/roost-ai-server.yaml @@ -46,6 +46,11 @@ spec: app: roost-ai-server svc_group: roost-backend-svc spec: + securityContext: + runAsNonRoot: true + runAsUser: 10001 + runAsGroup: 10001 + fsGroup: 10001 containers: - name: roost-ai-server image: zbio/roostai-server:{{ .Values.roostConfig.roostVersion }} diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index 9c26318..0a2b463 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -2,25 +2,26 @@ apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: - name: roost-sc-efs + name: {{ .Values.storageClass }} provisioner: efs.csi.aws.com parameters: fileSystemId: {{ .Values.cloudConfig.efsFileSystemID }} provisioningMode: efs-ap basePath: /var/tmp/Roost - directoryPerms: "777" + directoryPerms: "770" + gidRangeStart: "10001" + gidRangeEnd: "10001" ensureUniqueDirectory: "true" subPathPattern: "/${.PVC.namespace}-${.PVC.name}" # aws supports only 4 level path. /var/tmp/Roost is already 3 level reclaimPolicy: Retain volumeBindingMode: Immediate --- - # EBS - used by MySQL apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: - name: roost-db-sc-ebs + name: {{ .Values.database.storage.storageClass }} provisioner: ebs.csi.aws.com parameters: type: gp3 @@ -37,7 +38,7 @@ allowVolumeExpansion: true apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: - name: roost-sc-azurefile-csi-nfs + name: {{ .Values.storageClass }} provisioner: file.csi.azure.com parameters: protocol: nfs @@ -55,7 +56,7 @@ mountOptions: apiVersion: v1 kind: PersistentVolume metadata: - name: local-pv + name: {{ .Values.storageClass }} spec: capacity: storage: 30Gi diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index 3997c2b..d7b65b4 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -36,6 +36,7 @@ # Kubernetes cluster domain. Override if your cluster uses a non-default domain. clusterDomain: cluster.local +storageClass: hostpath #Set these values. standard-rwx (GKE), hostpath (Docker Desktop), any custom name for EKS installClusterResources: storageClass: true @@ -226,7 +227,6 @@ gateway: # If installed with: helm install ngf ... -n nginx-gateway → use the default below. nginxGatewayService: 'ngf-nginx-gateway-fabric.nginx-gateway.svc.cluster.local' -storageClass: hostpath pvcs: aiServer: 'local-pvc' From f22e3f09339fe11dad1755b8c8fc87cf50e3d9ea Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Fri, 13 Mar 2026 15:50:29 +0530 Subject: [PATCH 31/38] update efs permission and Release artifacts --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15436 -> 15539 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index c9426e7..b7ac66c 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-12T18:01:34.419089+05:30" + created: "2026-03-13T15:49:38.396207+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: d185bfc0724cb46f3296ebe40d95ee9d2240c69b12321239591fe98af4d268e0 + digest: 0f63622936643e1f9e72c55a1cb556f75ca9e3c6027a7620fc25b989ed9f1bb4 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-12T18:01:34.41749+05:30" +generated: "2026-03-13T15:49:38.394589+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 4bf3e4ce865d03b4ea9cf8f9792e4494e218b05a..4e8b87532a5b84354048daf1c7fd4fbd5c1452a5 100644 GIT binary patch delta 15205 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 Date: Fri, 13 Mar 2026 17:28:01 +0530 Subject: [PATCH 32/38] Add resource permission and Release artifacts --- charts/roost/templates/roost-ai-server.yaml | 7 +++++++ charts/roost/templates/roost-app.yaml | 7 +++++++ charts/roost/templates/roost-mysql-db.yaml | 9 ++++++++- charts/roost/templates/roost-web.yaml | 7 +++++++ releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15539 -> 15663 bytes 6 files changed, 32 insertions(+), 4 deletions(-) diff --git a/charts/roost/templates/roost-ai-server.yaml b/charts/roost/templates/roost-ai-server.yaml index f7238b2..143cf29 100644 --- a/charts/roost/templates/roost-ai-server.yaml +++ b/charts/roost/templates/roost-ai-server.yaml @@ -54,6 +54,13 @@ spec: containers: - name: roost-ai-server image: zbio/roostai-server:{{ .Values.roostConfig.roostVersion }} + resources: + requests: + cpu: "100m" + memory: "256Mi" + limits: + cpu: "500m" + memory: "512Mi" envFrom: - configMapRef: name: roost-ai-server-config diff --git a/charts/roost/templates/roost-app.yaml b/charts/roost/templates/roost-app.yaml index 47ce6dd..bef07c5 100644 --- a/charts/roost/templates/roost-app.yaml +++ b/charts/roost/templates/roost-app.yaml @@ -139,6 +139,13 @@ spec: containers: - name: roost-app image: zbio/roost-app:{{ .Values.roostConfig.roostVersion }} + resources: + requests: + cpu: "400m" + memory: "512Mi" + limits: + cpu: "1000m" + memory: "1Gi" envFrom: - configMapRef: name: roost-app-config diff --git a/charts/roost/templates/roost-mysql-db.yaml b/charts/roost/templates/roost-mysql-db.yaml index e1b82ac..55b9508 100644 --- a/charts/roost/templates/roost-mysql-db.yaml +++ b/charts/roost/templates/roost-mysql-db.yaml @@ -13,7 +13,7 @@ data: MYSQL_ROOT_PASSWORD: "{{ .Values.database.rootPassword }}" MYSQL_DATABASE: "{{ .Values.database.schema }}" # MYSQL_USER: "{{ .Values.database.user }}" - # MYSQL_PASSWORD: "{{ .Values.database.password }}" + MYSQL_PASSWORD: "{{ .Values.database.password }}" --- apiVersion: v1 @@ -53,6 +53,13 @@ spec: containers: - name: roost-mysql-db image: zbio/roostai_mysql_db:{{ .Values.roostConfig.dbVersion }} + resources: + requests: + cpu: "500m" + memory: "1Gi" + limits: + cpu: "1000m" + memory: "2Gi" envFrom: - configMapRef: name: roost-mysql-db-config diff --git a/charts/roost/templates/roost-web.yaml b/charts/roost/templates/roost-web.yaml index a3e86c3..b74aa50 100644 --- a/charts/roost/templates/roost-web.yaml +++ b/charts/roost/templates/roost-web.yaml @@ -76,6 +76,13 @@ spec: containers: - name: roost-web image: zbio/roost-web:{{ .Values.roostConfig.roostVersion }} + resources: + requests: + cpu: 20m + memory: 64Mi + limits: + cpu: 100m + memory: 128Mi envFrom: - configMapRef: name: roost-web-config diff --git a/releases/index.yaml b/releases/index.yaml index b7ac66c..a15b2fe 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-13T15:49:38.396207+05:30" + created: "2026-03-13T17:27:41.939032+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 0f63622936643e1f9e72c55a1cb556f75ca9e3c6027a7620fc25b989ed9f1bb4 + digest: 29a773c0ec6a4b415b344bdc73468992737db35f6fd29deb1a5d9b266a870792 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-13T15:49:38.394589+05:30" +generated: "2026-03-13T17:27:41.937517+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 4e8b87532a5b84354048daf1c7fd4fbd5c1452a5..66c1401f9df70748cab3390dc285551bafd8f703 100644 GIT binary patch literal 15663 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 literal 15539 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 From 08d0b21c8b4b9fec1483f9bb9cff19ab55262efb Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Fri, 13 Mar 2026 18:10:39 +0530 Subject: [PATCH 33/38] Add securityContext and Release artifacts --- charts/roost/templates/roost-app.yaml | 5 +++++ releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15663 -> 15647 bytes 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/charts/roost/templates/roost-app.yaml b/charts/roost/templates/roost-app.yaml index bef07c5..c1e735d 100644 --- a/charts/roost/templates/roost-app.yaml +++ b/charts/roost/templates/roost-app.yaml @@ -136,6 +136,11 @@ spec: annotations: checksum/config: {{ toYaml (pick .Values "database" "enterprise" "email" "auth" "eaasServerIp" "eaasServerPemKey" "eaasServerUsername" "roostConfig") | sha256sum }} spec: + securityContext: + runAsNonRoot: true + runAsUser: 10001 + runAsGroup: 10001 + fsGroup: 10001 containers: - name: roost-app image: zbio/roost-app:{{ .Values.roostConfig.roostVersion }} diff --git a/releases/index.yaml b/releases/index.yaml index a15b2fe..8b2cf12 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-13T17:27:41.939032+05:30" + created: "2026-03-13T18:10:10.898316+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 29a773c0ec6a4b415b344bdc73468992737db35f6fd29deb1a5d9b266a870792 + digest: c95165b618c31e5bbc53a6bbedcc9329d8c02acf7f0085ad0d273cdade7cbbeb name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-13T17:27:41.937517+05:30" +generated: "2026-03-13T18:10:10.896628+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 66c1401f9df70748cab3390dc285551bafd8f703..e0eae63e9aacd84a9e7ecff4be2ae949740b1993 100644 GIT binary patch delta 11929 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 delta 11906 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⩔gJFzsOy%e#6GL9m5FIpJfjFl8AAx^*GqVy~~<5YZi z_g~>aH3(QtQ2j#=^RXYLheVYq$pdIdAqcs8q6KP)u{y<*Pw2j z0Nyf%YRb#f&c5_eJOubnB#2^#zOwsv8Lh<)Tso&N*v5wlgONt=en8}r?)^4;`dx}t zuS!9)IT`GA+^jd$!kohX^l@wHbE_C<%u8YB7XU8q4=x&}MN9Z+Rm^K4*k{v9H%%oK zVz*6yPSb&oYkCcIj1{h5VveN3AW6ps8XO+B01V}X+yzQsNiu-(I6l48V|S6?7UT@t zE8w7TE8e(q*r6*S+1V|JgPRw7A>$XAk1yQ+y+s;656!ba2`Pb4V6r~^p#Rso>_4&r zsLX?$yvnI^#3*o-=-@p|NtvPupP-g+RmSj}lB6oM&7BPj5GO&9>#H)x&-|}ju)*JR zYKt&mKc4S%NvW*E2@f6@S2*ULAT1Lu;e)?k)F(Pp22GOJYHB{}PKHpb`3ZO8Pp^%N ztI;Ky2C8D2e>WT`{LyXi%I(5Imn064a?)EW{to`| Z0y+f26O&*f2naCv7=siV;xi<~{{w76He>(* From 4d521d5bfbf218f50f7f5c08621db5acaa8ff0ed Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Fri, 13 Mar 2026 18:18:23 +0530 Subject: [PATCH 34/38] Remove resource constraints temporarily and Release artifacts --- charts/roost/templates/roost-ai-server.yaml | 14 +++++++------- charts/roost/templates/roost-app.yaml | 14 +++++++------- charts/roost/templates/roost-mysql-db.yaml | 14 +++++++------- charts/roost/templates/roost-web.yaml | 14 +++++++------- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15647 -> 15673 bytes 6 files changed, 31 insertions(+), 31 deletions(-) diff --git a/charts/roost/templates/roost-ai-server.yaml b/charts/roost/templates/roost-ai-server.yaml index 143cf29..63d2a87 100644 --- a/charts/roost/templates/roost-ai-server.yaml +++ b/charts/roost/templates/roost-ai-server.yaml @@ -54,13 +54,13 @@ spec: containers: - name: roost-ai-server image: zbio/roostai-server:{{ .Values.roostConfig.roostVersion }} - resources: - requests: - cpu: "100m" - memory: "256Mi" - limits: - cpu: "500m" - memory: "512Mi" + # resources: + # requests: + # cpu: "100m" + # memory: "256Mi" + # limits: + # cpu: "500m" + # memory: "512Mi" envFrom: - configMapRef: name: roost-ai-server-config diff --git a/charts/roost/templates/roost-app.yaml b/charts/roost/templates/roost-app.yaml index c1e735d..adaadd2 100644 --- a/charts/roost/templates/roost-app.yaml +++ b/charts/roost/templates/roost-app.yaml @@ -144,13 +144,13 @@ spec: containers: - name: roost-app image: zbio/roost-app:{{ .Values.roostConfig.roostVersion }} - resources: - requests: - cpu: "400m" - memory: "512Mi" - limits: - cpu: "1000m" - memory: "1Gi" + # resources: + # requests: + # cpu: "400m" + # memory: "512Mi" + # limits: + # cpu: "1000m" + # memory: "1Gi" envFrom: - configMapRef: name: roost-app-config diff --git a/charts/roost/templates/roost-mysql-db.yaml b/charts/roost/templates/roost-mysql-db.yaml index 55b9508..948ec89 100644 --- a/charts/roost/templates/roost-mysql-db.yaml +++ b/charts/roost/templates/roost-mysql-db.yaml @@ -53,13 +53,13 @@ spec: containers: - name: roost-mysql-db image: zbio/roostai_mysql_db:{{ .Values.roostConfig.dbVersion }} - resources: - requests: - cpu: "500m" - memory: "1Gi" - limits: - cpu: "1000m" - memory: "2Gi" + # resources: + # requests: + # cpu: "500m" + # memory: "1Gi" + # limits: + # cpu: "1000m" + # memory: "2Gi" envFrom: - configMapRef: name: roost-mysql-db-config diff --git a/charts/roost/templates/roost-web.yaml b/charts/roost/templates/roost-web.yaml index b74aa50..050120e 100644 --- a/charts/roost/templates/roost-web.yaml +++ b/charts/roost/templates/roost-web.yaml @@ -76,13 +76,13 @@ spec: containers: - name: roost-web image: zbio/roost-web:{{ .Values.roostConfig.roostVersion }} - resources: - requests: - cpu: 20m - memory: 64Mi - limits: - cpu: 100m - memory: 128Mi + # resources: + # requests: + # cpu: 20m + # memory: 64Mi + # limits: + # cpu: 100m + # memory: 128Mi envFrom: - configMapRef: name: roost-web-config diff --git a/releases/index.yaml b/releases/index.yaml index 8b2cf12..a23f268 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-13T18:10:10.898316+05:30" + created: "2026-03-13T18:18:03.829403+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: c95165b618c31e5bbc53a6bbedcc9329d8c02acf7f0085ad0d273cdade7cbbeb + digest: 6da87e42e14a167f820cfe89e2b1c50f39eb2cabca3c99515b58eb8e59abc8ce name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-13T18:10:10.896628+05:30" +generated: "2026-03-13T18:18:03.827741+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index e0eae63e9aacd84a9e7ecff4be2ae949740b1993..22811b11299530f0e9c10dc90c9e5bbaf67fed27 100644 GIT binary patch literal 15673 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 L%H4s%frI@wwe|B7 literal 15647 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 Date: Sat, 14 Mar 2026 01:17:01 +0530 Subject: [PATCH 35/38] Update storageClass guid permission and Release artifacts --- charts/roost/templates/roost-sc.yaml | 4 ++-- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15673 -> 15675 bytes 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/charts/roost/templates/roost-sc.yaml b/charts/roost/templates/roost-sc.yaml index 0a2b463..15da5ed 100644 --- a/charts/roost/templates/roost-sc.yaml +++ b/charts/roost/templates/roost-sc.yaml @@ -6,11 +6,11 @@ metadata: provisioner: efs.csi.aws.com parameters: fileSystemId: {{ .Values.cloudConfig.efsFileSystemID }} - provisioningMode: efs-ap + provisioningMode: efs-ap basePath: /var/tmp/Roost directoryPerms: "770" gidRangeStart: "10001" - gidRangeEnd: "10001" + gidRangeEnd: "20001" ensureUniqueDirectory: "true" subPathPattern: "/${.PVC.namespace}-${.PVC.name}" # aws supports only 4 level path. /var/tmp/Roost is already 3 level reclaimPolicy: Retain diff --git a/releases/index.yaml b/releases/index.yaml index a23f268..ef4129d 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-13T18:18:03.829403+05:30" + created: "2026-03-14T01:16:24.798934+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: 6da87e42e14a167f820cfe89e2b1c50f39eb2cabca3c99515b58eb8e59abc8ce + digest: c7df7f1e6374c247fda2b437ea5e213c81c79286dc552a8a9ffc5d786a473b90 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-13T18:18:03.827741+05:30" +generated: "2026-03-14T01:16:24.796087+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 22811b11299530f0e9c10dc90c9e5bbaf67fed27..8ea50fd57a0492b647a991c4682c7dd71509e3e3 100644 GIT binary patch literal 15675 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 L%H4s%frI@wwe|B7 From 39a9e9bbba70fa17c08b3054ced77c49da8a9b4a Mon Sep 17 00:00:00 2001 From: Mayank Gaikwad <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 25 Mar 2026 16:17:58 +0530 Subject: [PATCH 36/38] Update non root user for roost-web and add released artifact --- charts/roost/templates/roost-web.yaml | 5 +++++ charts/roost/values.yaml | 2 +- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15675 -> 15683 bytes 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/charts/roost/templates/roost-web.yaml b/charts/roost/templates/roost-web.yaml index 050120e..a89c04e 100644 --- a/charts/roost/templates/roost-web.yaml +++ b/charts/roost/templates/roost-web.yaml @@ -73,6 +73,11 @@ spec: labels: app: roost-web spec: + securityContext: + runAsNonRoot: true + runAsUser: 10001 + runAsGroup: 10001 + fsGroup: 10001 containers: - name: roost-web image: zbio/roost-web:{{ .Values.roostConfig.roostVersion }} diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index d7b65b4..64c18b4 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -233,4 +233,4 @@ pvcs: eaasServerIp: '' eaasServerPemKey : '' -eaasServerUsername : '' \ No newline at end of file +eaasServerUsername : 'roost' \ No newline at end of file diff --git a/releases/index.yaml b/releases/index.yaml index ef4129d..a7c610b 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-14T01:16:24.798934+05:30" + created: "2026-03-25T16:17:21.816689+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: c7df7f1e6374c247fda2b437ea5e213c81c79286dc552a8a9ffc5d786a473b90 + digest: a56481164a691168c138d096020ac43f98350a84695c463d06e1d211552eaec6 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-14T01:16:24.796087+05:30" +generated: "2026-03-25T16:17:21.815145+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index 8ea50fd57a0492b647a991c4682c7dd71509e3e3..e06700542da5235c40b2890670642e89327a52f9 100644 GIT binary patch literal 15683 zcma*uLwF@j*e>cg9ox2Ttr)9g+jhrxI<{@w>^SMzb~?7LwZDI#a|UORb`5G!S6wx& zs`tGglIS0pVE;2fbYKj|GAgX5GV9E-CU8k(czK_MZKdwahBNcZ)ImqXAZ zO)N#Jzw`aW%QdQ(-LvFB+cm1OK($gjSET9rK;WAiHg8FtA~`$~F3o%WS~`Jh*nCz3~g*z{Zm&uxI;@>%H(NCbq(56tS9vcR(so(#!o5CKE^goYAq zfOez64=Mk_90-+1*+2>j&(^*&aFh%eO@$ZEs4>hRK^sYjipoiu_=%C7R9w;zw^lGS zH$POqIY&E8fj)`tOKozlebEo`D~!=%C{P-6Gd%>F5r+H@-mf<>L*5Eu69!i~0AleM zE?RuBeY42$@Cz0KtR_5CQI-E^*b(@p=(S&3^OiDow6_lDTF)G_?e7A{M+ahC*JKFsnQ(y6EgsUofl7l`#7MC@YqVQ)%>Uosl7Wm;~>Zr4t&X};(nN@uPg{vQ7WGF9GPZP z)zJk>m@5q_1EA7dmi5a8*alvrwKtrF6zF<0&_j+GWcr`b_N zD-+6BnwKIF9yKfSc?Xm4qGmNFPVpo zU;rf`*MS3r9IOp1|M=qBnFiO3UhdVLH#{Xo#{g7}7m> z_a6RGV03H2KSv;bcwx31*;cnv(EW=$4Q(k1X2nZ~E(?}AmybD8Wu^|m#?_^wDlgGX zY=c*iEU{heRiavh-3XStiqK9o2?7I8*DK4}5JXmdQ<|whs@KT7_ytl+t>S$Z206Q*Gju4{dthSfE4(;y3&qZ(0+Sm)#0mhl#~%$WssdJNV@J2o9un{#Ta9;sX4^&1@g6Y49KRO>zuBxZ>4BX|#ZDMU{`D=|3TE z5I#9GsX3aSJCwGu+Q`9LhG3@HL7fNILzX;OJ{P>95RlFN;ttata#j1jk|&+-jkH>8 z|8((ay`5@HNuU!+e5LX%L z#+hZkEJwuXz%4dH{5wFTI0Gp|*2G(sGN0k?ml)1C55uPPa!C%~d41poebX%b+1dho zX5y$Eg7!Z~5cy;ujZ?6K%frTGDnP9DU5I96Z81q=NHKdQ|k%BROFH z8DBO!=!*4EiB$_4Q^gQJ)FLonsvp+7p49k9BJ&-j-XDOH^C%V7PIkn|quli?8!TH= z7ljiAvxJH$w>V^_+k_uIwzV7w4Au&`M5A~ zPVc$C8*>1}rbfNpu#%vF^AOYnmLnr zZ~AHY&e)`Mk;PCcHaQuQFwQ1+)Y&D597SG4eSXD4vOGrIpJ^8TMVx_x#$oReViv?m zlrs3*KW~c?mzrcz^=6-GbQS&Cbywnl;6J_R6Mk-rHYkW3*rX9JlW_E@y?rwDPzEI7 zi!7v_Pb3VxDq!2(pN=mH@n3&K$1UMl84`x*1=^GuWLf92Jmx%791s4j`N!F}3sqZO z&}eJjMnPEGIDh~M=OqsTcQM|3=nO=PO-x3WultzZm5f!lRg6LfkA1p-I}!dS6aL-> z!H!YpJpV2{a4pi6{@-{&0KLM9fn9!s5AwbmrWqP3?Ldwmh_f#?` zdxqnTVnk6ij4@t*^KWE%d4wweZ_>DxJqt?f58Ybn-;o)eU<5k4g1vzO-=o5$1swR` zJ#d|7yTs8I1Rv4t8SNqp38~G|6Tf|$|J!i`g7n*uv)&U`cSshMgLLG;dqy~vPO1wV z!f#vVI|CXANXT6& zGI~mHYl(d9AbP9Zf-^EyS8iU`LRxjoa z$U9)JrKCK~ahGJK<+#c4wo(m^*MU(L2`8?>B*8=TTJVkZ(k@Vc0O7V( z(iq8`$hwO*Ugnfi3$wuJs$FO6V>-&7dBj`Hy7(;|T9cKfU^W&%2n9|4l*-9Lq3b|Q zC7yjWISjotY{|Cr0l~ZwVho5N?)Jc!2o!U(R9()6Mf#~=P?gS=XUBgvgHk|LvM*Yj z9g=e5#v1n9z#Yq%=#WWqZ~~JlF*+4AL+2LBE(SsHmMI+C??nzP{@C*DTGtK~sU@Oz zBf%?KWN2~vBg$FCItFNRdP0sB@YoYU{AQ!m7?0mWyq_9_3wFpiP$**P@p8uO!#zPa!q;Bxh*g)xg%kfa$wGj}U0-}lwCVi6doMv3al6HeLoLY#_ z>ns-d2D2)&_v=8ko}7ZqJTYN2pea1BmYYdorRGZDjFB5rdfE}U7e*jkNkFDgZ1X+| zRmiW?8Z+VsZ$)g;hTYuNv*}j=a!itmF>Iof1oAOo><&q7V&$w*5!RFhQl%}ktB$MD z*G1^V-RVhX-mT@d3XYiZr?iG4q3FR!dX=89sHmXXH%r+{HX9vtA~(p_IwL8PFyLSW zlbRLA$1=%kB8o6u*^mVB-w=TLTc67Web?3}B`y13iPx>g*@(;d#tNr8}f%P4@hPhCd5r~Ihp+%OlsP(VSf8*qXZWg;w<69lCE5G84VX0s?h4=zkJ4bC;th(*+KE`Qoh3YH-O7l zKzDb)ulH{=vSY=~Jsel}TB-Yo%sd7w^J|~>%6r$kkzqA$V{FndipleN5mv+(SBfZX z-hG5M-YvzPxqTpj_z1XicMBDZbv1d7QP6l{r$d_oZ0%Nbvs0^S+a!x7YQdq9O=axB zC0kC?ozhp9O5y+o@blA?5SVL+)8qfV_d0#>3{^_322j$%Un559=og`)LVJXYkBi!L zGh^X;SBK9x0sLEz05=suF7Ou8uaDzNvc0Wlu&Mi{%!etH`Mmso-ql!~)yz#=$}Xnf zC{)MgmKCFiOSrWr4sDFZa{g^)_t~lQ86*|08P~vVV{kS+*?*oQC#=Q;OKUgHf4TO( zRKk^wlRA#aVpt6q*5=OTi+*QdOUmt6%5>*&p|9bo3Hw8xs6_H9@OXWksY1xWwE?A% z)7(mmJd&ss9ZM3Vd_$}zi+IT5O-|jI4M|8`>*87R{Mr*GNvS4GE5ZYy4c* zG>NwPvHDiN&-YYbTiUFZJ%){^3!;cED)ZZ`mTy!ZSCZZoc4<@r2R~idukp0RGp*#A zgB}X3N)uhj$IqSltYq0yNS&;Pq)ga1U2BMw=~X0?M0oPNuXBfakn;iRN}~^!^j6&9 zi5@;ejU_v$NnoBbkXTd8@vnMwKT7PXKLR{#WiatQ$MaSCEFkyL?6$&{hS>Bs{}?K> zW7}raX?FTJS&abtc++rT`gP@_y_zJJe1pCrimXXnXR+0Y{|II{?B-p-Ws#j!8Th}O zUD%|Wp&6SGiku5eeE~I>?j&L4iP&j8IMF?e%(pvd&?#^FW{8(!u^8rO8NsA+QlnKA zd?O?D(#L(h`!i0kSMEkMNnF@m7Vi{3r420@Z}5NGeS8mPc((&wA{LhGk=oj2pu7yS z32IYgcorj4BxYoAZSFtk_8W80FK zP;#dJq&LwOQ+eZ3T!~q608pnaNox4_p_I1HQG>n}v_0~-187wVlfM~A`HZOtI9~39 z#(twA?1R^Qc^HE{8Z`n-@q0kS^dJtNZT16N&5Llsik~glad-r+Jc7ur*eZf zj5r(W4@sr`F1C0DE?OE63fJ(Bac$?f*ihpE-4w#tG_iS=)V`q)x_IltkVz%EF@=En ziSY$$joKIyq1aC*O8VznW_v-jbM_SF=ry`gY(26++sh&P=` zk2<7L+9IBtDN&612`b)>()nysF~5eqCFhqRV@_+=)@sasHxE1EB37&!WHSk3nm^K( z>gM)Pwl-U;(pwNSj353r8A0<-j8#IjQhAwED`#Vrb_#A98w~>Zo7IwDM4);L(?osb z?;seb7Nx9A$Z~ox82fuG@OTT)^JGOKT_ZJN7v&2~st?p6i+u$1!i6J469^?~%4A|+ zuI7Ie?#YhY6ScUr0j)}3u-;Mc`GDaeSH>+IAe?jf_iD{@JN*0ZO#7#>;Thep;3+3I zngCRUH#25krEUD?e%l~=e<`s^sLcJyJ_Cq>G-18R9uz zhevN-H|O4P?%1VU^X%#u4K7aJ-)%0Qep@|&^{dtbbZOPBL0b|-4z}H2cjX3NNzVhzyuJ+iOJ{=S{O@pO|wZq#eteBZV+B+0y~Q0r4_G zQ6Ru|E|_!604w73gAU7SpPZ|Fz0g3w#HO6X`NBqYE~pO@K@fjj_h|}b5KMN8z*{o=60sLb|x!ifVVdoT2T&hk%{pLmzjg+GEYq-_sx!1TpYrri!?$G;Y6 z+b13SrnX0WF&aUg7Ngq69+$sSyYqFe==;xCsO=ZAf)e;sdD6Z~&@^W!SwwqD$oIR4 zE~5%Yd3a4Z9F=d8CXg6!8bl*CGcuv&Y)+<4*NZ7RtC_)M@oBnBTpWzC(vo}QTgtFC z9yYBTi~E$F8SmfFFPYs|q6DpA44d8EmfPq}=8Syte;5qiNMd9TU01rBoZ1a?it+UZe>VDZ#X1GGOP@4Ut>|*o>H@sC zgw6Gi4X_mCfk8Cf{{i zV{It;FW18zoQtbAtPGYwZnCwB^LE8~lk0{U?NWCS;i$@ipSI~m`O`!i8n#?3BT%MY z&m&GRr|(`T4KC}w=Ub6)Rd#0W5DXVG+B;2~fi;(_Rg9K&i)xOlZC?IfuG{wcZW{L< zxnYx2SChpT&;Qn)UbwH(Wj0oVNe3Or&A{|GEpOX1v1r51>Dn;=1lbgzz*S2g8?D4`S-iWy=12R#Zezs9G@5%}pX3;(HQ4o1A5 z8blwM12|irnyqc1~bBIY?yLx7tFlehoN+L1cCWZSt z%~=#4{LUBZy>lb!8S^?X;?tA}h=q5~X#uG>xTFi*RD{pX%r5lDKQE za##Mq3ew<@c2ygozsh74C?H=+lS#HfbF(?Z@{CZWynz{iCm)=f&~~+FjdDP!LuRg7 zI^2Y)bhyA_iwxuJl`#xpE7!vHcL`5jJerSd*kpvw^eu_%Lb=Z%Q;GKoHFopO1ZF3u zxJoY(MW0DnG7kC=e==phHlVS4*zrT#hF#SS=+O61kR%z`4rH0Z-&;zNPJgM9>tCm$ zp{^P+i8r^(zY0X4S=-%2oDIuZ22kGUi8<3gOpf0eE>o@g7C>G(r00~3+LK;L8?I5L zb2(?7M1SlL-WnKm1V=LsHT-K9vZJCE{M+u16CkbeHhNc@`Vr97b#?L)blnB2)po=_ z=yPxD%>}*D&zeefi+PS7Kz9o4OF5ft+q2Sq}knYJAJoVT~W@hLwd}(fIcfE=b68&K@61f%Z-FM{(vtmOMszd>HCO%JaR5s}=Nvd#3INlm%iCn2Y`bHMlp*MBrS$~Nse5)}# zlcZAbC6g1n%YAc#U@jO3EuQlqK0N0tC|l~Kt?8XMoM!^x-y8HJ5$dC8MG&G z3!<^|0_F57hY9P`2R=KaV`*$7Z=D=K23%#0ZO6gaLjWj$FvUIl+^Wma zo2J%Y^U!Z75-Roce85)%k`MK_DkuGyXSYvAx48H;;v0AF90hp+tIIMluc_I3q?sQj zsvHPmC4*`DC;o>Yc0N1WP*$^hJ*U`iWaj2_`EOW8^v0kxLMrUz2Z0%g&~CK(61`xF zr`d!;3KcfK(~2^*I+Q;_Y7IuG)kAAm@rlt2NkBXPgdDGh(4VNB8G8`hGI4aWp^xR$ z@>*C#DKhm`Vz;C5aCR*eX7Up8`~~p*soKYc4x-45=;x57Zjlv*QjuqO)gFUZ;OC^8 zX_b3l6lb$J(=6jYy*V`Mt=T-FBHupUZb>es;Y9Rt6~xPc&R=WJZ@V4neR8O$`u89O z7vQ(!(#7r}sQ%6j_v9~A+~+6TOz;D-W%PzVF@a6yYaI!eV`uLmSqhWPk~$b zW?rFe&-z|t@`7T|EbnE)^f5JT% z*=dC~O4EXzx(#jC6I=;cwpcu zhh|o}M`YBr8p&1OeOqXY15-i^rO+9ih&%8++}6oyb-^-EBNx7u{9K_vM4AzlZ={&tl_lmen^KVP~PklTWBMq!YmKz94=Y;=Gbyk`X z@$oRJRhLY2G-lW+)7$}N*u<@$A3g7tTEr$KEu)vJ;XCb?C!!lVV{3&=4=qe`rctI# zoAf22*`T7Rd4=O;)wD33jDaZ~dv+$PA36Fhx_D}jeK~(JCX+v~6>wSVGBmWcj_!93 zZv(RXDmk`2hUoW-mck;S#Od!UjkiQ~M#gMG(U$xu%pk6P9@f3`9lSvzr+ z$O-Qxr7>s;R47f|vc%$z0vzmx)dUrJT3EFm_IASx%jGOH@D({33Wt(}Q5K2%0%1!F z-RR<{pKh@`z>e!8q4xCG!JV5Kv)--cry*4?)7Yk>hK}LVJ&avM7#L2!4S);?x?N^# zcKv$6mYib=Qr;dn3tmpDvxuNyaxO#l=iab%Ez1JM1pC~Hh)u`_oi~9g8AKY!+Bqff z-+8GOLZ`%8J_<+Z?j6V@5|cmX@ZSF@`s$7i)=i7)9+cfzcpp#Kvi^G8#2tXK^|ZI^ zN){AbVs;!>$GJgn&84SVWFcx*A1AfKjIOcL28;Wxlosz7v^Ye(ID!}(vKVnB8HGtY z6#W5%=*RQYe^j>~=WAx2X6d-G+B&je7j~JsDy_ty3FW|+M;24TBt^M^duXM+Ko(PH zI-sOd5lU~dEMz2>0W}Mkg!ksE@Ii?ap`-TRGVNjLG^?S}Zg+&4<%}J5$+5js zmJEn}-1(|trb=hp?CefWUVq`8NibKCv}lcT5_-+an&<3On2=iBDE=~s5!oU4Z_lTz zEzdhjR@2(gv#h+lt9wnF$qII3>z>>_5?$|^4I;|{fNUl&`bJe9Kq#G-(p%+*RNv(W zyL86^o7PLcBOu>Ynn}iDfYTiqfBYIOW?foIkL-1Qn%HzrC(VZ(Q~-g@*qk=A&aG|f zy{6uvtN}j(J=u!{6{z|Aq0pPFSXo%tQ|3TUyRy;3e?K-jbN8p&_@CPfMHiN`!f>iI z#J3m9O#p%*HsVbQ@w-QAL~PZI#+zyud36{;!`uO z3-7P4)xF_s#d6zl~KZktoP7u+23!eI{Z zjBdVc$hNNAEJ)BY)3qUg&8lIV7djseIKTXLm7Lo0D?W~La$%r2(HNbnjmXo*5`G!` z(Iu>bxJ~j#mkt_Em-$E(^cWAIdfT-XQ0yBIFgzHa2zcq)V(Ga<_D2B+tc?@CIj$r?TdturBxo(LEFWWi?yxMGr!qZu{W zIn6&~C5kw)?iBYMo8ue|E<8+MOOh7@Ll9vv#-d9U#4glo>L{3(Xfe7vQ$>`(Wxq*+ z65oivtDuA#UTr4fPolL&ddS+34ATVn5iSjfu|Qbaw~D%^WxJ9^WR@XZq_rB*dFqaz z8M%O@Nvr^@XY%B)7!i%>1!jbGfWZHQN1Owr7tQ~*%W}jlm!`wesCFRQ)c6>RGRVd+ zgVWWnGt)LeEd%0c7oO~e#1w4mf4qqJKZF{R3EYS*{!ymU2>+Ls zBfbwGFrVEK33(tD&01!_j{8DAK`^*~BIrFsp3*h!Dn^0O6H8BqwKG{e7WB6AbDJ1N zyXSD%?`h(xGK|d0?Fg29StU3KvwhgJYB(f1LSfC-+0T1D#O)MtLnW!qX^e(dhBzD} zB@Bj=N}5{xPWg5h{W-t*Qc$HhUSGUb?>j#EtbF&vlHRi^)yk@mJb&x?fiI@~Dkujf zN&t}#3+{GcIlaZ`HATrb4gs*ts+r1rYv@dbqD)HYU^K9rEkmPgw~@Z|2ePM+04Yw_ zsQZQ^5K8q)BTzfvqL3h}Pw`l)Gr;mwPC@7PUptDOpFHJ;r>8sskFfxOX$!xz@BG>; z$NSw?PyhUnfN$0R9t7p_oDv4^8?c(5qCuT&CmbwKKyVA@XTI;tXg`&P+-vod`~CZl z)lPtrFu$Q!dGKub)|P+Pz}e+zm5bl6ovYk@_c|8lSMuj&nOKCSbSGv zxfZCf{ld)qcFf0JU)*+WxItQ|1wu-!FfE=dI3bH)I3-bIQlD zBcvhbwzA1xC;2HRxkD$9gwiJxUjl8Nrw)(Yp6gDRg#RYWFd+}aK_*S|LobhOso#?d zC>$q8SwNQRj%NI@c8#dJ-F^OLh+^jwGGG6{Xkk;NxItst$Od=*V z=Z~wyyf2-mJ5NuaLFzfbf6`&!&W zUhmnXVXvdmzYeVK<9$-TZ(=HhjsHV)j~-SB$X|VJJ+1n4Ac9SS-Ti>x|4875DJki3 zL0RC$$a+5euIT`(*nZr2!hggsyc%t?193Rw9f0V!qbZjMJw$`5Owv4A0LS!@2bI@~ z3{F%8!si~0Kwd+7V#Q$p}5r+A)4g7)PFG{R<qvxuBP5u08RK&a|}x+=m5QzAqog*WQ~k z6c2X=O~fx|L6bV+tCS|b^n0%j6pS=6uL9?P(}o0pR#kZp?`qG;b!-(c3q#x}U4WVv z0fHC27&ji)2XRlJ|LP0sTA-)$r(DO2|GEnozbcz`bTtG5753KI+697OHR-=NWjgKp zi{a#ce|kwkRuWG@?*QBxZH0aZo*9C>^yy$bM@59`HDpL5$lTxbCj3S=Ba`#CcW?zm z!|$}E9cWrjZoQgdTrVziKv4+bHm=#mvd z;)_l(iD1%0_&;?Bqz1D(mr&iR$9J2kiV-eo72%95xiAtS5?A>_r>fmjVl2)_ zAK90gG7}n6iZwNfrSEazs)fsC z;HQoQ?q89#tfz6#U(%V*<5t-$zU+a&dzJ#Yt=zX88h-kqY3<6v~|RgsGy=g zT%nrxp@Ik$;;;SaH1n@3#{dipg!PQ~Q!k)(GXy4cjO|eE5HEX-P06DvS&-Jsok*P* zE*eW@CTSiGUdq2{5#S*QzEC1Pb%}kI3pKB}6(JkHxPwKdIxQ*E%H-WX`ZqD~N%N$mQs-)${gH*ff4 zL^{?tSU;XK{Jo*V{$&e?tbrYF2zj?E_W_-dq@pF3^ha@E(IuzvZZa5O!~3IvS-Z<`!;-X}tK5*NmoeHqsKk5DaPG zs!(g1v#g;fl@dlNpK?<*NA{k28RbZ}oS1ZTwY|-kX25`;W0hL~XMPv4yR%x>=)(n^OXOiCuHZ2%pq)I5S%hD zQlKbr*%h4`C^(zuYYs$J<`SJ5L5tOjv8O`P-UPCkL-QT0=$JJ2Z{w<=5)qQ`bk0lI3)~v#Mua@m4#<7ynWvnVLwMCa>0rnKuNGdjhCr$Zu?;*ny(0n z0vWs?fe1788|e>AiL&jrJw2_gr&^$qlE1$rHsE%8({3gr*qGQTfpS2rcw;3$Oe5 z1RsBg5{a8cEc!y2X;$uyMGQW&t6DNTwa!6flL%g|pHs}$groH7-`~k4n{$cxKd_w- z)dK3gLJ6^vIDV&0Oy0YooFEg%R0v!@WFy|w9t>nKgFT>%P%nm@!{SBT2{$bmlyNv( zk!+j~k{sTqzdKN@XL55piQ(MhXP;K;<||9zCR|LKr%fyZsFe3;ouW}pMsy*3=&K^^ zQez}jLknvq8|0@k#$o@kKn{)lf>aVnA6`SI;5T(;o*YB25N(e<`FBq|SWg{_Fukh3 zHFF8(zZ@ge$BKm-%jpy`aY9O~Bc2ZlmH0Ffok#B7~`F};N7n55dMF6J*XMF>O;1mT&JZx<6+ z(@iy417)5lZoN(JyV}%K-M>3sr-IaAhQ%SshBX>#GBjDa_I)jkb0pvC?Z`ms>eG892%+=& z^1V2mex7_eD0kd7wUcJnkt1K(s&u?b5c28Xv0Ixyp2^z|=;CSk$h)|nFBiDpJ1a=4 zPj7j<9$xo*>jS(hTF#B=`k|>1t{rQEg;Nv*H_*K#y$v*TJNF&*l zXv$Qv1mn=70Q76vzHPG(x%6gk%VWym++Evt@QfWW5`htDg;}@eZg+=ewqCL7Gjz$` zeDZf`?`>{ZSAHXY0Jre|d2C2i(D;)rs|Fg2;xR*Vh{DIw(!x+5i2NuWAS`XpA4#p*51K*}F(QW>2`>aD7c5AxshxBy*3y|kiDPY_nU-9+Z&Rfds zaWb1=UvXQr=4(gb?MU+AYI-T!@NL_J=yG~me>+m@3nlU78uhuC`me68>~<&Jb2*R0 z;zI<|=VTB;Z|524^BIz$7t;*Y&(rPG1XQ6#cQ*Gbf8#muzFOqL*3z!Hxyl0D?c)ac z<1M=j`uyY5y6WjPae6&@`sMF=_x}E;S2y6uWA^fR^GnoYr+BSU-PkSDVVqonkSPJn z`wbjd-l_n1LzI=toLp1?6YY!)APE=H=xT8jcGr6 zC^`M$)$0EEYNvD4aB1BjcFOSMUrXFrU-szgpa`YkDn;Jy=nV{@((#IGd!R-*ey7LL z;fDJ{z}dW<%$1%?80J-hg5(B^=w4&z{0votNd5y-u4_ngnb+U$ZIRe{*Jao)BGO3A zZ34mrJJrWfH}9AN-@04wLu)%=v%F(k`37!|Ab7R7?eF>JT<6a-&(~?&TX>w8+d;bR9_|D_-HO{+ z+y16XL2h$h6_qjPlsBfs@!@Blt@V=QLgWtN|IG30VJ`R&$Zkdds+*8+_y_*y9Gv$f zJ`2g|E=^#7q$(abKxl@$rhoVStm7(pGQVZoQbe>rb?}EPCh37(IEd8C%bcj{7a4x0 z^KxHJe*+5cWz9uf3jVjHXAYr>q%3th{aC=+)AEx)@l_ye~B0TGN z(LJk-!&W=h8v9pds!SA@YCROu`J1AhsRA)n-}c$#x$XH+xk0nR=1v_CePv)>Ty;}W zSI6E)28EhbmSqzX<-$BrTET5&LVr+zaB+#zaZ10E4vvW=ax=Sk(K-Br6A5Si_fek~O#D*xn4E1pi8Zf)1VzE{sg6HgILN+Q zbA$WgatsM$3I$3vZNrkEep3%Am#=&!7@qiK*>ZOY7O3X(%;e(b7G@w!D=a`Q%60go zLz*g_%{G1t8r1`WQUxZ<&Or0Pt}P<^pMO?UB)l{^-|Qi1T(8B941FW`zZ{dk;}yW3 zvkhM{-@$RYO&70XS;}SaYA!dcr{_edHQSH9;pLCL$<6#mTKn?Ni?u0EW&!%EXmX}h z<1@C@igVd&+TFw=b8b7jK1()e`F4ff)a0+ASt*^Hi=V>ssB<&AKYRCe{KP5sOT&NY zUY8^W$x3fJspH-BIGsK}pmg<1Q3a^5p`t$z+q2}m^uQ4??f$Wkdq}UD3|gqkS?KQI zu|O(+`?8>>3}Ip+4Skpm_#71m-I3e|&tgn|g4sV4{I=y-l2~8D>b(rG;kzI}eT@42 z|CD{X{7QL_=f~el7=ph(&%NQQdqwc{bS;ODTzp$ zB*k6J8zvs=M8PHU%V0D#Bk^ptIF?)X_rMt|s7LBU=XfO`{HG+|lrAaF*u=Ud6-$Tm zYR!ceSjEJZrp+$yUSZf5#D7)fYU7PC40i?Zz_Hfd#{!=&6gf&}oN=)(=~<-AT!@m2*sydy$WhY1+ej^T6KO?K_kROSxh= zgoI`N+-F1w=bM3RtCPRh4{W(frtBo!^q|@zbi#NsDvT zA9V7|dJ<;h?o`>00@)EiN)VTX`q))UHrSIHUXu^@|6ed~gFG=r@s~h|7y^z7{CMoq zPrLn}kJfeR#tmhl_;s8$RJdAmzHUQ8J!1GZR8#DIIvOI#=en)4n65j0LCO0fZ3cE zB#H~Bo}kLA$DS$zFZGAtp*1$ciy*Z50gg^#fmp6rp9MlV@c{5=uuDYt-|_relh`V2 z&9IgFfm3dzY6DB&1X=LEtHNm#DcksSU|r5?7)CqE%+9F!Orb(}IsPwPyc%vIW%=wD zZ!=R7y}6ij@ISDQ$-~>2Eg1#GWos;T^^KQ>vGSs^gfq#eXK&16nAE0IIUshs-=q`&mdF?HcN_Gk;`O9a^djg|?S{DjlZRSD*(Gl4lr-Ut%>?s^i^} z@#?T=otCSV^+Ie_LNNF{r9Fl{H#sA`wh_4}(LsAoLI;1pttQ$Uye>{{ z7#4OmSf3W*9PK9BDX4`2LWXSf_x)f6g;NN4M?*M#vUbjk;`@5{vjCr7q1`;k*`7R* S@PBz}&<@``7T6DPu>S?L$*LUy literal 15675 zcmZA8Q*dU%wgBL8GD#-3ZDV5Fe{9=MCbn%Se{9>fZB1;Och0#lx9)!J-Bn$!>Q(Do z1d%^cLH_f7Q-RPJNGLKINyxIvxO4tCWKm@_R{CwBsl>?!P*r7YUUL0-43k{wi>DAtR${yubzM9MC7#I!bee-Ad!!MPG)DLc1$r|bedALN zPo*ma+#)`m|9 zA@}Rucp9stN&PLUge?FJRz~N@^^rh^QA%K(hb{9<5{?y;3Cabnr95OjPJ~e8N{RA^ znbB}j{R{klL3ku^=6=V>mUi3X^I1AQy8agU#^RF9=*?(~TJAemkWwf06aR}#jNcaU z1}#e@4}l?&FMzBb#}}N$U9o$An^u$%1)f4}cuA2|i2Cy+efr5Np%V{kz(ykE06KW)te$BGF}msy3Ss7mfJ#y9)07`(Fng8XiT6Nx|DwiqW>J`n|7&h3`ZK3hPraDX?|U9H(1~=4d=K z;5qOXU}l$+T&#(ZJqt_*d4k%rl)2#-1!ccCB7{DYj#2gK2mT!Vkl=l?ANnlgg`fL?EzkoP6u<={^@2My^p2>y)bp4Y=^Q8jm%~xh)#$9@>m!~t z-~ZxJ|1UJAdc{o?g=(Zd^K~~*N){WQB4RxNYr=zcL_oTip6&bxubPba^+@F;Am>8| z7gPYIIak#Q#4x9jZgtc8LPF|An2VgQlt^aS#6LVY+#}KOH7jxqNH(lGF-AqDR$L{d zLVViMNTCe<Z#2_Raf?xt*>W8TN}pgNMFb`JDaEM zTkGk>Z~bs672*XCEuiKNW2a8cw*_MXcc{#j6|C zL0-KE2|+*Id$shB)bi0D-t6bkBilbH&%~_$90LCI4)mfd_~RCE@QG&Q#%nHZfKG<6 z=9On&lBCr!CK+}a3$oU}XDh~gyp?42!JGfAp^wp$AK;@2x&c57H0|%B^Gj0R7z+@S z&w}N$fnb2)FDZ@J4dIKn0uqxR(*cSea-_hDmz#j;2D_Lo@uk8n&a;}ZbL#pTnA62M=Jfax z8Q5lfRWF14YX@vC-<$a%NDL-mprA>>_wt!oeE`xD8Ua#YA>ZilSI?Z^8o+GXBVf!906!g|P*uv+(} zTr@FM5A)=TWl@Fo>yy??qiQdXClrW_=ksCCabb-$Rf`0RhPS1_vPxl@c#~P`oz4Mx zsF3-2MA~o_|Up-bf%2C`zL<1^f!& zl@hdYDEF93L9?1|B1IT;cugx*Y=b?~&e9!C*oKz<+WKcbaqiNP~C&<9Z-VUAJY2dJ_SXAuGDaHP^K`U=(0jjrW0>Sf(5$YiJ`upKbIrTHCs*dh_1EF7HX=VCAP4VOgdkgLC3_`@PgNZQZnXY66!PW>=dS zH;`iHS9dvqf*El>z}H!XSDD_7;n9gO@|DlG>-^#JCJNE8uwswbk9&geID+r%Z}5Y7 z`$@^0q#)8e3$R+T`J@+N?0>t$ zv{zF|lCU1IGjKmKaSzKUNtQUbu8U-e)vOr{gTnL(y4=|8<_!P+5$h`;Qo;)Af#)>V z4W1&;4|lA>Xy=zjL}P}L4EyZy?~k2tD33vcIZD6wP4a>yu|5yBi{sH)QXRO^-_{lP z`LJQy@3I(ju|O~s52hcj+W-V07PBXr2t#ZK9U^P;uK}4%idJr)*cwuV_^`6iaM9~h zAdLAn5G0&9hnhhei8NL*24y7*EbsT~c zhf^u$?Cr8J7nuofBb-GsnHe6koXyycp_(7^9D$@YiDWP`ZbR0*e3FHcucA;(64^vp z1MfR)=60pT7pco-#|`L4$1MbCln+C1+(n{E8O zdYa0{L;drUPo1v=p}uUCI;|)*vQ!M)%%5O!zm!+xAzu$Lt?l9cM^(Pfcj2>GO~#A| z($E0VWJg8)A1kR~NN71&=V8SxIZ^7YH)0+AMz}r|`WEz|e*(mrBtrp~1YJzBk^+i* z8V&0LA5&njnL)3aBW_*n;Q@>r%KS@rY`>_MqZqMnQTKviu#0+8b`1zuZsJ4;$qYJ5 z;#?eq#Q2~5`y=8Zl8}Db5RH1A2g?p$?jI?rMW}260@`1N3{~0d556VLzr#0yUD0SS zp3Au5`}Xj*1lq9a^Wti`#k(+6>206dW#lY?ziddXb3VZvv&xi<$x5Pz6|mbYs zj}Qj=hJH;DXVbIbapzjJD#TeAb`oPr)YP8o^!gzBK3tfr){1z+gw1^GTg?0%vRTzYK&ZtI- zv9Z-pt9)9~D%pHL^1s^iC5*n0!!@4k?sK2rlvPx1!jCB`y`kS~hXA8g!9S&6%*u}#Ex!q$ihgBrWPR$vR!At8Ht!E{nj@GZ+&$%kXuj&D>>?w6FYdS}%nR|2%JgLLcNn=3tb(Od< zU*f2t!Il#*iKcwyk55YxSOyG*D$W=bfOpnq5Y|R2GgjN}VhtxenMf&u__%Fa4@b#9 zhBJIoOAUl?VP{H0xV(|{S$d9s>3|9(XapSqH zcUFrxD(3#Sfacj90GFl4%-vrCh|#{Qg5)kmWpE*?(fk^mJDtO+%582RRTQ0S8pBIU z1Lox7E6E!*Mzn1^MlrvxWsKX!6fx~6Sut%Twh!PcGAHyq0H^gQ^TX?QHimyALnwwS z7$meFjV9H~&#%s&$rcBvp^Hk*hmUqx<3MY}F2xe`b;ujW{K@G0e4qj^gxIJgVHx36 zp5tCiC|OaIAjuPKJe)mGqo8u;#;A#X;#Lzs26SsRAdQYWLWxBDlo;P&i%5>mIV&&G zD%o2Z*5lQN0je(Jogr{mVk*xK&_3R)c75r@Y)i52oW5I+YgMz(IL`FKjEm4XLT8DZ z&_owX3#z702x=v`L!=AiEHfvrwI4gDE5}dO|s0cP-h2?LY z$CEsY0Y!R^u*>wTb^FZ%$O%ofw!SyCg!5-9N57KZexHK_^e^dyu%k}K-?kzW;?*@~ z+Qu&+l<@{w5+9YM2T*h)&=An82jY+*wT>};|0IMETU)I`5;_}g~Ng8H`#u>Q;U zccFm{%HN_}3~m_L$giHRwmO~VZvs0T?}hK4;rm;o&l$O6E^>uju%yv6>`Yo}xt#ms z_H7QZbu*-3w3);r)!wO{0?`Gfk+4Jh6bDWXX72c#KN5+O2LsdOUt_~tl07rk217bj zl4bCF$#_1@bPp5;9HGxB$n|^$pm7|_)oJX?eZzNU)`Er%h54e4Ny?6*6Ha;XIE>go z#z*n%nWUrXfY9paQ!H{g@pYTyA~K&YGn{9EY!ozvYn%*+%YA=J&&q2x8r4yV$nwIK z6_GYz62@yp>oqkyUegp5F*M#j>64a)GC$tAO}4xppYtXiCf{oOP=nHc&Gb)r5@S%% zO1;1LI_1(S~=^~nXFQ)ExQ2Cj4`8ar>Sq|vM7rX09Vw9k?8Y!F(F1}+(lqhIZ0ALn#V}QLLy|tFkm8ID077kX_NrKo#?}cYzkskQ-rt6T5fktQ`fo$%LeiTYPk7E@6G>qlI*HV{=2=AW?EVse+@`radjG(0?2^t998Ef_y z9c%2Fj?%;TdUVR){yFtuB?z~Sc(Bi+iUFJX-!{K9GRZ#ejW(Zi_T)SFq*j$z_?W=!D2UJ4!~0)fIHcnI*21ECOKHC9XDJwr+eD8a>5w#b~Uws@h3(& zF2MT_l>#X4ic5v~opv`8RrLG{Pgc}n^Vsko%q1=C&I$F2>|equvw`0I;N{*qwzns_ z;O?zm)N!-VDAe+9>uvCt+d@d1DKVqY z`WqXW5uWrGeG?_mkajfP(`^HbY$Ba7bL9Fs#uh7e<*=njacER%Vi9120HYXjcJM-ro zkE{{2&T@Amr+~(vWdpjsGQk-zEDD}OJ_Iru)^t)Qmk4W70&=afOqGz0&@wuQ560lb zhl^aNB~I_H0L`o${eV1hsTbd69~Uoo7av!LwSaZg0)GwS^<#0hnWCE-?j-h*vM7#l=+Ln&kV*!`a2&*~v#t`{IB~VF|n1 z*uB$VXfJsSbQ8j$zvd0=j4ZW>x zb6i(>`SQFNhNCu`rJk$Y279wby?%NQz7C)7_*lNFjXk^;IpMnO+VWn`Gga%u>8qx)McsMntb^u~vZpn@qk_5i)YouT zg{fxxrU`F)N?V5#Kv(5+k4kq8-!MrXz45Lf2dAphf$YuwM_r}rP(2kT>h#}ql!U6y za6x59KA9Y=PNtfWbRem#h?n1`Y(W@X^rV<@PNWxmWHwASL=IFeJV}~S`L0;BPHuK{ zbXpQ*;b!Z)$gPWyurH0HIB2-krEII)mRp+~)NAqa_h4ycZ%(R%ZCqZdJU@0*+iLJ! z4%pwECc;_$jdT^EUFGOBLH0M}GX;xHHd7i9IiwL+SbNlU;l@Dg(&CA4QGXOYzFcyD zzk97Oe+$!NgN4sIV%gm-OAw~t$w|$aPS7u=c2sZHtjAM399t}o9m@S6?nF!Ub`o8h zbu%7um@-SGzt4MEo)1RvX>MU-f53^{E~Zmz-n#7O?1+;_ql2%QikAH>>-g?;nrCa6 z9q)DbS?=QLJaJA{orW28m9{b6fzLtDqh`i7TP2Q%ffnug70kwt!ySoQo`H@Mf7?zx zR}Pc8pzj_`OjU7KDpS%vJhpK)v0o9{&@i!)QNNIlPEF9rumRZE;{IJiMR5AsX^mOF zyNeaitU+VZk5aMgOKrK47F}aji4zvCq#lN3Z^9~z2H2%? zeo$ZOS-Q8+s!ORZc;5NYM#T1X{OjJ>?30sk{W{B)J5r8N3u+97>MX_A$7w(}>-c@K zNblb*TwL6isWK>h}IgbRCw~E&Kt?$0+qI%9#gahGWGpf&i2m6U%BNm zGKmyCBj>oLCrybqrl)P7{Pa#=d{s6DoQ9w*|Ei0}G;DDI&p;hdPt$^>KH)3wjf4s7 zJW6ymHmQefA9306C|0IKf2ei~O??bf{Z*K`5=}i`M)0c~>)APX>nb7fp%vQr{sz|bz?!7Qy}Olx zKIZx$n5J!&HUtiMX;2~Xm#DjG^jycu{6)qeTaQgx)t`DJCczwrvJ zx#JOOqzV4RqaD{lW?M+OyoFj&r+v_n{m?wA=J@d4hkl9SRld?Qj*cdxcO=!ivB%%S zHu2nZY3-x+t#{lv`dm;nwwOCpeSdNEsF?7J#sPTDaSVMO>}-9Rgm^FD2k4(2SE-xa z`Po2pAL_0fMMW~r2RP}oXh|b6qB{Z&${I<~DrK2^g+zHXZWtB1YJw<95afm?`;spK z*2q{IiKlwT+(+rOgxrw!-QjEuHAxY|2YIOP5+o~if?1U@?FX+xU<;IMh1{DTS3^RefYa)+2=6E|xPMkh9sqm;y z>lB8V$NFQGkR}-V+e7w)H48kJ5`ss^_n=hxb!i`zXKo$IKvzn%eUFnOk0EO64*boz(a#TR~Xk$su(L{ne7ios{xP+n%#P$ouj47k?4eMmeo^`jxy2J4pg31}XtKZm zLyPU!QO16KvObWZ#T7rZVu}F!P`qSBYq3N2Wo;GvM5s7%EDb(PIh5X1LC@NlP z=sK$)OQKES241E=N2nZHH-}GxkxiPY{!GYyUkIH{WX{+J*`9)@l=AZwaDHA(%SD-} zOB1vkOTe;fE?z4ug20sv!+&1NePhw4x$QjZA!ZifM{MfZ)PwwDSG)+PJ3v!)sM&ECEB z{o#Ti=}^73JIa8+Ps@4j&|JE8n3tE5e*GqRn^GZ-+ut^Wr+R&Wqod;tj|26={1XyT zR#vn1rvAr5b|T#B%p3kHnN+sr?s~dwZ7K^KG#PCGTpHX*Z_?gwx3!F0=i|ZZLFw&#X=F^>wUjjwhH7mutcGp z0o!HYo>_km<+l@YLOoR%^RH()zGjOnk`C6re1pJ4G#`uz<+n*t)hKv_;&L1kavC~J z1eNlk&Rp?m(#VV8~Ln97L0_`$=5#?+9$X)rN zuX0oODs-*Zw6BddAN|Dl#zt&U_V*k04EUjo35jQJZ8dnZtg8}Qi26?iD~p-$yM&>e zda^_5kxJFSOA00xED?8dR#xD7%BjSYvXr+fQDcUZTPYue8y{wzi+t55S@Sg12Nk#o+Mgxs z*|2pXXyK*ff+6gsdS|vx+$Xvz77VHFv`)EI5vQpwpvaICT3VS)xk>&{PlK8h5wzR= zs?D+tUEfSAxR+;3PrJdU(Q$@W;fmCY_UK;PN*p8uLLk9$C|nEjQoE^I)`YnBB9x6u-Nw zlW8Zd$HkcoknzDq;g~Ptz$D;me*D<^n=QN}3yn|800_VHcH>Ov_Zckz_r`H7kN_#F zQ+ND3ytUrCAo7;#Ou`Kj@Q3^`ZGd)y5q$%uG2lvguq()Z~3HI}&_ltoHGIkM0qaK!K>iwz^f}J0% z{#C{($aV@|F5^UkWZKFi58;R{lCTyo8=$ilHWOU4IrrU@tcup=G{K;O?;bj5ju1TK zWa~3&dOWlJ_eUTS-LIZK6`4Q{Q_R4R< zrUCDDw4b)cZhfU`sNed>`{X$|WwtC>5AF;i#Uh$;g846)#?li+v6VV=LMmlJw1%@Q zCL)=D<6n}}eA#pO;YLo`HcMeC$$U2V-sP=k6U%g3kio?n!Nl*AElp#s;wW8z_)DeN zOeSpq+8$az@kX(%PL@qprZ81|0+m=Yj#ebs%r!l0dnQ3BH3#jUSq>i;8{86Lq&IJA zleyQ?^yW2`>gm@zK5X!lwmNVz`%mv{nmfOa-O4Y&nGiOELLVvyzgaW64?pao(Nb>$Qm2D8 zC&3kHzA8h#a&=`b<{MxU%q^3Xu`3=?>`)thXyS)FkY?l1b!GNIq-inlt|gjFXkpY@ zTa!Ibc2vlZxNU?Ix4F+sGU6a(1G>cr#?~rQQ0m!R;E@o@j+U2S81P(JqS$8-c3w)C ze8R;oJw{|tPDg1rtUjYKK3d81C<~ky5_|)I21Kb6A z4e=9{f3nkd`v_nfU@=MKS^B@OTH1Qz)V9-hjVECC&!}Eeue7;e;Y6AFbs?M=*>_}S zcncWkH2v6(DWfbGIxG)7yox$aNNej5n@Zk4N)el;i_O+T=53+%x$;MH_N~Nh=f6{; z`wnM_etT1z*g5E_xm~^6(P4O=u=5%`ryY>jTX8ku80hzCgoJ1?o#1j@ zDR*+ZkizoFx}i$!J$#aU@4ttXo=1z$y^1tY%-M4N3~_+oX|tRBuz0oa~)@#7r#p2 z@FUd4_nF`@CCm1vDrVi+A=x_=)bP4r>K6`{b@DmvJlLmjTnt?h?Z!Dt>2EQ*CPm8z@q={Xyq$pKv&@+mWFgJ6_?D2gQ#_>D-#)mQM1 z`+N}lIzRH3o+&+@*WOg9-{pI&e|=7fJ{K#{$)@;Aj!QJZGUphaA8>$L2R+%*RhL8WzTIQKdWWyxSKqG; z4xckoe6xt|a~9WndytSvhQOK5MG7c$oeQUjHH`NIeeRNfN&WlC0^8%Wmx~+g(`*)P|$=Fb~G_6>DEzH`S66Z9I<~T@J%<@- zIBBB;SA-MiJMV1uoo5QqP^IWOy*^**IfKVn9EQr8@h<|DmacKW%q=yhvxIK;qv&O;9IjdK&V-Yl zjF*fDR?VX@_|jxBxwR-N9~_t(LLe*FT0zyFj9Nf08?xOYvDSG0+?HsdVA@75e(aks z_;!k)es9Nx7_o)93HgSy+0K3AY-E~z`Wkt@Ykkb9xvL6#{(>mPT||{{* zbtgIWJ_@Kf6y9GqhyEP}eit5ec}2A$l&|UA;{IdMs&Ay16wPmp?594-5ge!8qY}-aSSgZ1BiQu@2cTSW6@xhERw&bHc z{moPSKQhM&A@dEB_P*p0r$own6i~#IE}Y`~+(z5T0BbOB)m33ufVnO_H!T+q2?;-|U=s%Vasfi|3M5}1<;JS_ zGaNN2o`lY?25J-I9C^>L7`cnI$p5(2o-uYb?KPJN+uqhagead?Ky|%9KdOK>fD=ec zj_{Ci@$_m11rj)o6}wEf_>|_gi{zZ+V$kCWA=tkNiGihwjOPqMrVXcfKap6Rvj;9y z1dsCW5L^9pJ=>)H7}ARM55q>c5yTd+cs0XG<&eLNlEXyn2|S?}eaF>6vKaaQ zzOCZPZODj)q`=n1^d9f0iL*+P8GodqF>}rvOD2=x?)3I4sVl`uAy=CfRUy`O2DrBs z#whD(y+OsL`F9Hq(H*ecwXM$7ZJ{N0^3zB`BVo}#N)v2OYq4Nd9vuE~fHBTn`LQgY;HoQ|T1(}oR@WM{mJ%fS@v-F8D++admqV8N3vb za7i^y=AL*KdRMdn5_fs7rPZCNU-N5|Cb8@@VyHLK+Q6$spPQa?p@vjp=YooLN0C(F zfvt*M7?|LkAiwph7Ei9{z?I&jp|(YtNglHq@xcn=Vh)Q=k&r=!%mu^bn3(K&8EHGs zl!LrAUv+jmha@yCuUUk9y%P2>mM{UFVSafAjgs6|@CNVal7;T-}QU$Ik3XvKYf>lz<#*R-^fM&Q4UibG3xm`oC}HKB&~ zCviFXXd6c%v~*onC6O8Tc~K?dh_;mUzcY>#2$LUJ06qfhS6l+sdmJCvg!j)MfgoiQ z#cgYAA(}`E4x{PW zv@~IQibCu4PiQ%nYOvQ5uCJP5h&D1d4BEyK6RYtIGV-plJ+2>qa0^?X`y}@FL%GK* zcIzNd+!LxX4f}mmK;HR;U*oE@^;lFfnPFu!Z%!8$?icmRPOZMxd}m?UWQA~Ii#gY( zQEWUXrQ~EXjl)JJ{>+;1A3ryeci`uuVHxUeg~i87)JGGQKGTno9MxGTaTVzqCT4W9 zxNG?fze-1H=nfQy1Cg@9kBC5M76Q+pu%J5#nj6hrj^Hi@wRBzraleFiY)H8mhRJnj zIXj2R+s~HG7LmXX-W<~p@0=whk=>;>_dbE-aC(b?!y(K(8ly z8JRah7N^OWT=#?Iu(HRP>%lE&b&w%iJE3kWp#SyRj1Bot;%p*pf;J+(BFQV$2`| zX#hZ>;g)iMb{9jm2yNvam*vgENsHL(3rhD!2iJ4*7Bg$BW!<9{4}I=9`yT%)c*_et zlMeaXcWU@7d3Ed1;QMY{a{GA6{5-besj$zT4mxkEtX`Oq>2iCY|Bt@kI37zYbbKDb z)Dc&G5KfTL;W2Oo#q#DPrxd8CJRHA@7sc?1!3)(GeLbJJoN~w_>nnCcaH*^B_Frc* z*ruB-GJ>xxzpjn=UYx7Q4tAiK@=*EA#3OQ2wl!=zA^<%X9^zDY1N*T|z5QHoh`wkkcd85RGP>9f90cw37wGDffjY{vg0&>@ zh&slI-~f3-BUIUu4XeVl)52s8@4lYT;kqMVg<21Y9wu_aWmaHn9M99^g(v4JJgWeg z|8-_5Xk+)s)9z18UB}$2dF#L>U*!I<(L7F9?9=u_VI5B4*L0Gt?GMs*qkj=;9{2#M zq!)e>YkyUfDp<8^9Qq>s%u~m)uR~y++xv&tGXLjcXUiP0c4dZ5uXD}k)#u^m(lhFk zQY2Dxu-P?ZgWGs!%huMWRZEN8)AssScjpqayGNYh`sH)vQ?pKY`KSY9`)cC*k;se3 z+m+F|CNNQ_K6ze^;rVl|&-iA-$?m)LJ%z_7V~JhCl!M@=Fbt1#IY6`Enmsd#^?d`U zk8O*v!#}oa1G3?W-L-{1Aljz~@WvetSKrXo)VA?FrW*L<0q1Mgv9_^pb9G^}tlT|f z=$D?8FtmbYUa1&EZY4PNlh<_aW^ij`ZEJJG%J2XahF^Oc7~MXttUv?SFXuRK-3c5X zbAET6CA|h-URQA)L=*LM8ce zuipw-b7Ho8cAm(oMT!kf?TNxFA)Ahn_$69QYv8AKd7k%AE+f4i-#pw}A5+=?9(4eL zdP!%-t64m}SNFi37C<%oadc`X0HMXlM@nuVVJh|FaV?EMTTYG=;N$Kj+aLZN(X<1_ z;N#wX`{aRKSku4o2k&C)(Pm3BqzgfE_Zso3n@B7(6LzbO{<(zPa-kvUaUimrpr`HX z^WzB|rxUdh=;h|}@NsI;rnsCpmw7dp^;j+P?6qr4&{CuO^yfLl%l0r|@o=ZiZaFB8+uhCjQ)!<6Sj$ zfCeJjMxA2s!mFN3h0P=Lo1Z7Y`_2`#+}_Jde9w~pXv6_=&vfFqM#^`OyTNmQNel)l zPRr9d674F`iE2fRuTo=)F{=w8M?3lv{o!OD-}&U{f8ZHb>1w83jxW-b$4TT27dyKz zAd*bOJR<F9*q8 zU!HcIa;TgwN4KTqiw?T@k#dr_eI&N9wYI(G+~WF%b7i|@*UsI6yY;i!bH$;aG6pa$k`3YDNAt60@qarQe8@ZL6d z(XPq?OU16sM^1Gwi8;-JGM{wXArJCn75to-X)A#-Czs$kR?mfj8-w5fyj*Ra?fzgk zmSyr8QYmGff{S`X8_p(M$x09|_WrEF?kteBob%mON7rWV9O}?)gtYX30X?JXWqdlw zUaUXqxPZ~I%kOE^&=*Y0QmV`{d(!xOnJ?g^h%`EJ9nA|VUi;MY)qZsJKLZ`x!j7{+ z2W#nVR6%etn;p{8g~8+6;!${g1-UV}RS-R;->`B%7p-F)Ahio6YnoBGu9e0SnXaof zOalO%Rwkc%xPGY(XjMdor?`)fDV?FeWmUv3nUZ}NyKWIA&&ggH@VmdX@L}T2HQFY& zeib}QCo^=6#&CRdF48mP)0>TFsqz}cO@yU>sZ z($NzJ-Ou=bjPQTo65M3XFi&_9*gRPkS+OjNXsn=hU-(*bp5q`sM0_0ce-ZJ2?R=NW zE{|kE0HT%PmZP3Uu0TpcXDq>9Xvb|u%@l3}oWcg%jjCG$!5+x|q(gyNL6iB9@_F0s zXxYjTiDpISYpl$H z$fs`9EOs;X3d6l~)^kXz4K%`0Ty&m*5wG|x1TXBD^okrg#?u}=+@upVs0lsXwQeZl zUwp{txBGp1GPZz73@(z763e9jy!=F=DUyRGjcttGh!VQh{BaVzN$~0CR?Ldk@Ka;! z&|zhl{2Biu#?=>wvYfj{mSM zZq-u6h98^^>r_b8W#N56A!pD1n?S>In~N6iJN zJ9J35{8J8$WA`hJ++JXa@~}=95A1dqiIp9HUzYfPx%@-#LT^Lsn(x?meUX*d5OGl* zV?}fNd)(!x;rE_EZw6)^CV=x4GtFAf4Pp_;%_QRc0iwAxdgQ#yt934V1#JH>fjpH5 zq^UiVRkyde*K0nQbA5_N#>C(3T?Lu>zlrPOGq~)xl^QmLU#9*avi%=ZMxEQ4B7$i) z-%UjLEtUfBOf#tY2xqWPn?T;>QZkIjh`dQI}ld*`&B;D{}2xq~a|oO-(OL!TYN zhHGqvm3))reNs63KC!9pUTZj!#td+_dfU?(OA)xRrqUGF9zQvCfTW)alqQrtlCz@0 zJc0m-C9PdJ5RT?GRAQWjN5^Fy$AA8C&|K6CRtu2g5vO$}laTxfhUT>K*w`T%(M*f4 z6)Vny1OwxXRK|=aH5>g{Tt`<(X3nFW%SG5Ub94*wA*Kj9Ym6u_zwk6UP|`52^@y+P zq8}<1ETTQTNsogM<7Zd1UxamxNLtaCwH;(BOMCIc{a5-V)P6-5wkxGlUxP1P5pEn# z`D%p7e-*4!pnwwT!mIpMZ;V5|<+Y8__L`NA-;->_dW@15PpRU7WEnV(SFrq}GB*=W zl*aJ$4BD`WdK^k!I`>Lu+90LE{{K68`Pn`Poc>-z>{sQh;kF44&yptHP$s9moBxO4 z-P6kcOW*}vH37XD>t$eEI%>c5R7QU&?l?Pv3eE$J`ibfO%$biP^Lu_{ z@d5mj7Cu0T>^G^Gb)=vCOdn;}GgJ^Y%a`#XwR0;X8(^x)>RHChNFzUk`#c76l1CfE`Br!_gIabeMS|Qzw0yE1> zjMc|j)t*KR7nK9v(Yf{Tyn$7`l1EO<=$SnAjL=il3X})y0ZTY7`ZDhdOFm?i`D~3? z Date: Wed, 13 May 2026 13:43:34 +0530 Subject: [PATCH 37/38] Add aiio services --- .../templates/roost-ai-code-analyzer.yaml | 179 ++++++++++++++++++ charts/roost/templates/roost-nginx.yaml | 27 ++- charts/roost/values.yaml | 20 +- 3 files changed, 224 insertions(+), 2 deletions(-) create mode 100644 charts/roost/templates/roost-ai-code-analyzer.yaml diff --git a/charts/roost/templates/roost-ai-code-analyzer.yaml b/charts/roost/templates/roost-ai-code-analyzer.yaml new file mode 100644 index 0000000..69cba9a --- /dev/null +++ b/charts/roost/templates/roost-ai-code-analyzer.yaml @@ -0,0 +1,179 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: roost-ai-code-analyzer-config + namespace: {{ .Release.Namespace }} +data: + DATABASE_URL: 'postgresql://{{ .Values.aiCodeAnalyzer.db.user }}:{{ .Values.aiCodeAnalyzer.db.password }}@ai-code-analyzer-db-svc.{{ .Release.Namespace }}.svc.{{ .Values.clusterDomain }}:5432/{{ .Values.aiCodeAnalyzer.db.database }}' + POSTGRES_DB: '{{ .Values.aiCodeAnalyzer.db.database }}' + POSTGRES_USER: '{{ .Values.aiCodeAnalyzer.db.user }}' + POSTGRES_PASSWORD: '{{ .Values.aiCodeAnalyzer.db.password }}' + +--- +apiVersion: v1 +kind: Service +metadata: + name: ai-code-analyzer-svc + namespace: {{ .Release.Namespace }} +spec: + selector: + app: ai-code-analyzer + ports: + - protocol: TCP + port: 5060 + targetPort: 5060 + +--- +apiVersion: v1 +kind: Service +metadata: + name: ai-code-analyzer-db-svc + namespace: {{ .Release.Namespace }} +spec: + selector: + app: ai-code-analyzer-db + ports: + - protocol: TCP + port: 5432 + targetPort: 5432 + +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: ai-code-analyzer-pvc-{{ .Release.Namespace }} + namespace: {{ .Release.Namespace }} +spec: + accessModes: + - ReadWriteMany + resources: + requests: + storage: {{ .Values.aiCodeAnalyzer.storage.size }} +{{- include "cluster.storageClassName" . | indent 2 }} + +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: ai-code-analyzer-db-pvc-{{ .Release.Namespace }} + namespace: {{ .Release.Namespace }} +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: {{ .Values.aiCodeAnalyzer.db.storage.size }} +{{- include "cluster.storageClassName" . | indent 2 }} + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: ai-code-analyzer-db + namespace: {{ .Release.Namespace }} +spec: + replicas: 1 + selector: + matchLabels: + app: ai-code-analyzer-db + template: + metadata: + labels: + app: ai-code-analyzer-db + spec: + containers: + - name: ai-code-analyzer-db + image: postgres:18-alpine + envFrom: + - configMapRef: + name: roost-ai-code-analyzer-config + env: + - name: PGDATA + value: /var/lib/postgresql/data + ports: + - containerPort: 5432 + volumeMounts: + - mountPath: /var/lib/postgresql/data + name: ai-code-analyzer-db-storage + livenessProbe: + exec: + command: + - pg_isready + - -U + - {{ .Values.aiCodeAnalyzer.db.user }} + initialDelaySeconds: 30 + periodSeconds: 10 + readinessProbe: + exec: + command: + - pg_isready + - -U + - {{ .Values.aiCodeAnalyzer.db.user }} + initialDelaySeconds: 10 + periodSeconds: 5 + imagePullPolicy: Always + volumes: + - name: ai-code-analyzer-db-storage + persistentVolumeClaim: + claimName: ai-code-analyzer-db-pvc-{{ .Release.Namespace }} + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: ai-code-analyzer + namespace: {{ .Release.Namespace }} +spec: + replicas: {{ .Values.aiCodeAnalyzer.replicas }} + selector: + matchLabels: + app: ai-code-analyzer + template: + metadata: + labels: + app: ai-code-analyzer + annotations: + checksum/config: {{ toYaml (pick .Values "aiCodeAnalyzer") | sha256sum }} + spec: + securityContext: + runAsNonRoot: true + runAsUser: 10001 + runAsGroup: 10001 + fsGroup: 10001 + initContainers: + - name: wait-for-db + image: postgres:18-alpine + command: + - sh + - -c + - | + until pg_isready -h ai-code-analyzer-db-svc -p 5432 -U {{ .Values.aiCodeAnalyzer.db.user }}; + do + echo "Waiting for postgres..." + sleep 2 + done + containers: + - name: ai-code-analyzer + image: zbio/ai-io:{{ .Values.aiCodeAnalyzer.imageTag }} + envFrom: + - configMapRef: + name: roost-ai-code-analyzer-config + ports: + - containerPort: 5060 + volumeMounts: + - mountPath: /app/chroma_db + subPath: chroma_db + name: ai-code-analyzer-storage + - mountPath: /app/jobs + subPath: jobs + name: ai-code-analyzer-storage + - mountPath: /app/test_artifacts + subPath: test_artifacts + name: ai-code-analyzer-storage + imagePullPolicy: Always + volumes: + - name: ai-code-analyzer-storage + persistentVolumeClaim: + claimName: ai-code-analyzer-pvc-{{ .Release.Namespace }} + +--- \ No newline at end of file diff --git a/charts/roost/templates/roost-nginx.yaml b/charts/roost/templates/roost-nginx.yaml index 0918b6e..a42ed77 100644 --- a/charts/roost/templates/roost-nginx.yaml +++ b/charts/roost/templates/roost-nginx.yaml @@ -11,6 +11,11 @@ data: UI_SERVICE_NAME: roostai-react-app:4200 UI_SERVICE_PORT: '4200' K8S_MODE: 'true' + AI_CODE_ANALYZER_SERVICE_NAME: ai-code-analyzer-svc:5060 + AI_CODE_ANALYZER_SERVICE_PORT: '5060' + AI_CODE_ANALYZER_SUBDOMAIN: 'f{{ .Values.enterprise.domainURL }}' + AI_ANALYZER_DOMAIN: 'f{{ .Values.enterprise.domainURL }}' + MAIN_DOMAIN: '{{ .Values.enterprise.domainURL }}' --- apiVersion: v1 @@ -117,11 +122,31 @@ spec: namespace: {{ .Release.Namespace }} hostnames: - {{ .Values.enterprise.domainURL | quote }} + rules: + - matches: + - path: + type: PathPrefix + value: / + backendRefs: + - name: roost-nginx-svc + port: 80 + +--- +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute +metadata: + name: roost-ai-code-analyzer-route + namespace: {{ .Release.Namespace }} +spec: + parentRefs: + - name: roost-gateway + namespace: {{ .Release.Namespace }} + hostnames: + - {{ printf "f%s" .Values.enterprise.domainURL | quote }} rules: - backendRefs: - name: roost-nginx-svc port: 80 - --- {{- else }} diff --git a/charts/roost/values.yaml b/charts/roost/values.yaml index 64c18b4..dce581b 100644 --- a/charts/roost/values.yaml +++ b/charts/roost/values.yaml @@ -233,4 +233,22 @@ pvcs: eaasServerIp: '' eaasServerPemKey : '' -eaasServerUsername : 'roost' \ No newline at end of file +eaasServerUsername : 'roost' + +aiCodeAnalyzer: + enabled: true + + replicas: 1 + + imageTag: latest + + storage: + size: 20Gi + + db: + database: code_parser + user: postgres + password: '12345678' + + storage: + size: 20Gi \ No newline at end of file From 3061170a280f1f5925587160f4374c8ad77fbc31 Mon Sep 17 00:00:00 2001 From: mgdevstack <8110509+mgdevstack@users.noreply.github.com> Date: Wed, 13 May 2026 13:51:11 +0530 Subject: [PATCH 38/38] Add aiio services and update release --- releases/index.yaml | 6 +++--- releases/roost-1.0.0.tgz | Bin 15683 -> 16555 bytes 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/index.yaml b/releases/index.yaml index a7c610b..d1f8a9c 100644 --- a/releases/index.yaml +++ b/releases/index.yaml @@ -3,12 +3,12 @@ entries: roost: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-03-25T16:17:21.816689+05:30" + created: "2026-05-13T13:43:46.603176+05:30" description: Roost.ai, an End-to-End Testing platform using Generative AI. - digest: a56481164a691168c138d096020ac43f98350a84695c463d06e1d211552eaec6 + digest: d1626eade9a17698c2cda4e142597315366ae6a568440d8e2a61a855bb7b7f95 name: roost type: application urls: - https://roost-io.github.io/helm/releases/roost-1.0.0.tgz version: 1.0.0 -generated: "2026-03-25T16:17:21.815145+05:30" +generated: "2026-05-13T13:43:46.601318+05:30" diff --git a/releases/roost-1.0.0.tgz b/releases/roost-1.0.0.tgz index e06700542da5235c40b2890670642e89327a52f9..2e3c35e50d33503fee991c5c8eac403938423e07 100644 GIT binary patch literal 16555 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 S@PBz}&<@``7T6DPu>S?L$*LUy