From daa612ba61c6d423b174a9b344d58b0b81f29a1c Mon Sep 17 00:00:00 2001 From: sonicaj Date: Fri, 22 Sep 2023 10:46:52 +0000 Subject: [PATCH] Publish new changes in catalog --- community/logseq/1.0.0/Chart.lock | 6 + community/logseq/1.0.0/Chart.yaml | 25 +++ community/logseq/1.0.0/README.md | 7 + community/logseq/1.0.0/app-readme.md | 7 + .../logseq/1.0.0/charts/common-1.1.1.tgz | Bin 0 -> 61740 bytes community/logseq/1.0.0/ci/basic-values.yaml | 6 + community/logseq/1.0.0/ci/extra-values.yaml | 11 + community/logseq/1.0.0/ci/hostNet-values.yaml | 3 + community/logseq/1.0.0/ci/https-values.yaml | 89 ++++++++ community/logseq/1.0.0/ix_values.yaml | 25 +++ community/logseq/1.0.0/metadata.yaml | 8 + community/logseq/1.0.0/questions.yaml | 203 ++++++++++++++++++ community/logseq/1.0.0/templates/NOTES.txt | 1 + .../logseq/1.0.0/templates/_configuration.tpl | 30 +++ community/logseq/1.0.0/templates/_logseq.tpl | 45 ++++ .../logseq/1.0.0/templates/_persistence.tpl | 69 ++++++ community/logseq/1.0.0/templates/_portal.tpl | 16 ++ community/logseq/1.0.0/templates/_service.tpl | 15 ++ community/logseq/1.0.0/templates/common.yaml | 12 ++ .../logseq/1.0.0/upgrade_strategy_disabled | 31 +++ community/logseq/item.yaml | 7 + 21 files changed, 616 insertions(+) create mode 100644 community/logseq/1.0.0/Chart.lock create mode 100644 community/logseq/1.0.0/Chart.yaml create mode 100644 community/logseq/1.0.0/README.md create mode 100644 community/logseq/1.0.0/app-readme.md create mode 100644 community/logseq/1.0.0/charts/common-1.1.1.tgz create mode 100644 community/logseq/1.0.0/ci/basic-values.yaml create mode 100644 community/logseq/1.0.0/ci/extra-values.yaml create mode 100644 community/logseq/1.0.0/ci/hostNet-values.yaml create mode 100644 community/logseq/1.0.0/ci/https-values.yaml create mode 100644 community/logseq/1.0.0/ix_values.yaml create mode 100644 community/logseq/1.0.0/metadata.yaml create mode 100644 community/logseq/1.0.0/questions.yaml create mode 100644 community/logseq/1.0.0/templates/NOTES.txt create mode 100644 community/logseq/1.0.0/templates/_configuration.tpl create mode 100644 community/logseq/1.0.0/templates/_logseq.tpl create mode 100644 community/logseq/1.0.0/templates/_persistence.tpl create mode 100644 community/logseq/1.0.0/templates/_portal.tpl create mode 100644 community/logseq/1.0.0/templates/_service.tpl create mode 100644 community/logseq/1.0.0/templates/common.yaml create mode 100755 community/logseq/1.0.0/upgrade_strategy_disabled create mode 100644 community/logseq/item.yaml diff --git a/community/logseq/1.0.0/Chart.lock b/community/logseq/1.0.0/Chart.lock new file mode 100644 index 0000000000..fadb1a2c9b --- /dev/null +++ b/community/logseq/1.0.0/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: file://../../../common + version: 1.1.1 +digest: sha256:a7dbe3e4d42dbcd4325776e5e01a1d630c7f185f79e7ebf22b1b9cc80f56eed7 +generated: "2023-09-20T17:19:46.04612156+03:00" diff --git a/community/logseq/1.0.0/Chart.yaml b/community/logseq/1.0.0/Chart.yaml new file mode 100644 index 0000000000..d7b15e5b8b --- /dev/null +++ b/community/logseq/1.0.0/Chart.yaml @@ -0,0 +1,25 @@ +name: logseq +description: Logseq is a privacy-first, open-source platform for knowledge management and collaboration. +annotations: + title: Logseq +type: application +version: 1.0.0 +apiVersion: v2 +appVersion: latest +kubeVersion: '>=1.16.0-0' +maintainers: + - name: truenas + url: https://www.truenas.com/ + email: dev@ixsystems.com +dependencies: + - name: common + repository: file://../../../common + version: 1.1.1 +home: https://logseq.com/ +icon: https://user-images.githubusercontent.com/25513724/220608753-f33db466-af72-4611-b603-411440c15ed0.png +sources: + - https://github.com/logseq/logseq + - https://github.com/truenas/charts/tree/master/library/ix-dev/community/logseq +keywords: + - knowledge + - management diff --git a/community/logseq/1.0.0/README.md b/community/logseq/1.0.0/README.md new file mode 100644 index 0000000000..bbeaddbeb8 --- /dev/null +++ b/community/logseq/1.0.0/README.md @@ -0,0 +1,7 @@ +# Logseq + +[Logseq](https://logseq.com/) is a privacy-first, open-source platform for knowledge management and collaboration. + +HTTPS is **required** in order to use Logseq. + +Either by using the Certificate selection or with an external reverse proxy. diff --git a/community/logseq/1.0.0/app-readme.md b/community/logseq/1.0.0/app-readme.md new file mode 100644 index 0000000000..bbeaddbeb8 --- /dev/null +++ b/community/logseq/1.0.0/app-readme.md @@ -0,0 +1,7 @@ +# Logseq + +[Logseq](https://logseq.com/) is a privacy-first, open-source platform for knowledge management and collaboration. + +HTTPS is **required** in order to use Logseq. + +Either by using the Certificate selection or with an external reverse proxy. diff --git a/community/logseq/1.0.0/charts/common-1.1.1.tgz b/community/logseq/1.0.0/charts/common-1.1.1.tgz new file mode 100644 index 0000000000000000000000000000000000000000..28c16b1edeb9aaaa51b83142deb9f0af37626233 GIT binary patch literal 61740 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 z zx38k07puV<_xTL>N($C85o}{4SV_TJ_JC~+0xK!db@B~a4$2`tKgZrbSL{6NY(-MM zl&zT*{go6j%Rc*=Sa2jXeG9C{a(;k+H!(i!Q9GMJzP>eB1!fP`sgT%1v#l)New}v( zR~d1%dG&PZe4TzbbQlbEC|44T?v|?fw_^C1&Jlzt%KR=;_?U`D2JY`AOP>E@Za;5? z8{hdwPpn{*|Htv982{;bI^_S}OxXcywAV2BDeNCFlpIR5-r2;b3%B`PmOWw{@gL83VHzI%1#ssiq^Atr^<4>4abbfJvGzRAv_a|)(K59BbAR!1xr*kIfG|jDbr^Q34I&|g!9=bs+?L)9TC+rc|>->(7S{EznmN$9F)6N(-C=Y zaeiSlZ7U5tiq;)X0i<$|ik`M3rT1b7l5>^)QSk{@+Eo;dDw?9Z4a zLl_JAc=%!&ZmUb^V(~6drpAXv?6WAgkFyZ3ZbC#BpK$sGdco6a5G0TgNXnrY&M#(Q z^7hb~oH&OE&f#=w`+j~Kn*nVb)9)kQQJ*fa!r@2Fuk7yRz&SjiG#oh7BM})Ox9H5& zT41`%mn2!8T$wU`e}0LY0k(9Qjtx{mVGadOGOvF6N8uQuJRIgBF*Q^;fKV^vB%Oi3 z9B8%S6#F=wfkm3eh3YQE(|)2CNl=VV&4lZKb4w}FiF9=QZmA|6A7Ni+>zop(r(qFbu&pJ9}E#b#+blBMsJ94 zP~kxJ3Itn99Fujda5Iba*((|C=Z~Km=S}NBnPR7icQA>EB;L?)OqzL(S05jM28d zhFtKaqH}NUp>Az;X(~0@&&?@2I%iMnrBt)K7Vow;5;c`tz@#xL$7;>&O}&&lL8l@S zRQ7I5n^sd%cCO|Is%>ApeH81L8o;X3BxUcmHh?vi+8I`5s{2xK)dJQSF=exWl`V^3 z1hpE#YT}ECcUu}bmy4?m+l-hQ7kwUoM7=mx5^uXOB&D`$bQcwZvJOP2#928g>enU# z#6uS7sFEs?W$U?1-OOonXSJ9)HoISS7WLfBi81pn4N-Kb&!jQ9d6I!Lxr%5-VA1Dr zEr<#>UB`lgGq%!CGWt`jxit55oM)I}Lf5JK)6ySG^M{#xVR+;DcR~k2WJ<^j*~Itn zu3?5L3Py`GjmJ#qO2#1d<1ttT@vZ|#ry;={FfsEoe}BFVdQm{@xq*bg&n~cvfS0hx z?_rXP3`>4Yx99|d2*LmcwI|YzMj9(`8c{-g5&<;=hpSTWfa}q`y1r? zMT>UKzxMEM!S3;=OhL}`aj#O$5)kEI{fh5k#Ly&=!6X+;DJ>MfY~rxoYHYAl4B%rN zA|IvU6MG-=D%g~yl0wW>F~LZNs@nxO9%0(9bOBs>)w#-rvZKOpa2Z42sinEmBvU-i zEHk~937ubE2$@o7V@7HgL8iWgRnd=gHkR}PuT5PZOcvKHy8I_6dEW+r_442Jcrtlg zl>bhK_&-ZDv#x{H7h9D+?fn=6DrE9nQ1)W8CrZsp zX;y>Ay{aB`vfSXaUO`FC*X%X}eQ(Vb!9b;6(m07H8v93%!dwDo~O0!iv6X|0caN0Y1y z6!I-H08YaP?zj!EICG|=4EWZV&W3L0VPqQ>D{vi7n znrLgP$_9fJCQFfm@k8SI@B$_X2Qqv|)~hzgpA{3Jz9}{#CWi;R83s1A^??D!`ZPoy zsR>}y`V?!;qR#{1H4xWORZ9#U6j#yo%qE(p_Sht1;(?1|7I}iwN!kO_8Uy+LHRgGJ z_IdDEMF~&s4ZC8|9Rufz{!|*L&Ci1?HW9A*Oi*OG?GdrUAc#m~1h8%xRIH3ygKQNP z27teygeX5RxgNa#bO|oE2C&wBC9=oI#gEe%j)li6b zznA0(9fL;V>PtHe95&rxau1UZ>p=_tfLlJ)5?;n&AAHit8-4U1!PLffxH|^gZ(yfG zc@`e20t1V#cg27}FYypEiKT=8Gm8cnZY9&ilodfpiW99QWp zHh<1!z~FNwd9_t_!oVp@DX(H4a12088LA@&TrXCS!Di$}69#4K*2f^lAxtdviQRbR zDhX0+lyOQ|*SiJ`zFN@MGX@Th>CdwNcdy@q4dGhv|4e`@>2ks7=YOuea14HaL?pHG zgKUk#U4^km0fYbl|NieA-sw$&a0j1UCo}xOQTPNNn2lrx&;JH41IS$ygsPA2#X(?% zb%UWb2yi|(W{%#xprJ_rJ0fSWtWz^;D%I+E%WWQT$(|Xn* zy znlV_1Q`Dg-v_`3@k)Ca6dj<@gIbpfSix~9xEx5-ge`#QoBnBp0T9$P%I9qtpEfi{; zp4^h%&(Rl*(~pQOz0_Y+15v;rM~gaY$yZjzEOf%4oQ=L`t!fMD*+9#P(!l~A(|Os< zCUwK$iTG*ZwEx90FwoMntb;*Le%!p|=tj(KM27!iG;JOOooRdl3^;4JJ_uGAWU*N4 zXnG-QT}9leRiqfbDjN(?gwnGH99|5A9C4j+$VHUj+Ik0Eb;6+>rPS4$<8Bz&qd;xjL8owsGe?;6+bD1Hzh(0u}j8xvt%Y_{Iwz^mw-Ll2m@2 z(LD-~_oZ0*c*@4GeK~OF)Wg^?Q4K5!l-U zZUj>Y#rH=Jiho~4af0qq2ybEVdyJFxcV?;KW)6zEQ56nywA~OtK$1$Q#0wSzYJ?Nu z@@PU?-myBl^UAZHN-qx zYg)VU{JT|5a`)8!KFir5WOwt4Pyo!{acBh#Xx_ zHK@-8sd=3Vy}VWnS60q|(p75rN=m#Ln4YMaRNVc=G!~cleR_RMLYb3DGSY;4UkMWET|qWTCD}TUs9vv-gN%@C><621obO8{V=6{_Y4EbL-Qg)=zQ&;!ze`ns_waH#(Dfx7Fb>Qykt!;G3u1@P( zDxLkU>s1v*9Dx}TRvIdUg36SyuB3>{M-8iP%7k&X-yd4S|HhFO$(6YR^@EkK|EC;k zx2BO+#QHe$S4jdRzm#s)o>+zMFF3hDfosOM+|=ka4DrJle1UQ3`EU&Q`@8id&pi~v z;BWYb{1s7_^XXT#L@GXXU7Alrc1!@=N&b*oC%LAnRw$E|??Xc7tFTm8Cz7YtB-b?6 zj^xx!QWV|3hh7k(2x_OtT}UoAog=xrsa7QWm~z;3x%^nnGTAVfOC-CWaC9C8@DZxn zT$szbrbgmfX51`(@7j<|g%~`ao5rWp#5k^=7&T3GM7cCVeNT*B<4kWvi!-L9wucoP1Bzt~}?xFD`?t5a?G*u?q zDy^(id9u8+$_u`bSXTADKDBHQ8ZVw$R`Q_qieyjn5yz-VlEoSmOhGv)*;mOf$VW?? z@eHudnB6pQdoysz38~y+WkX5d&*q%Wy6AePa>Jt801J~Vl$Vj^eF z8mCQmyPzh_`G3wbf6pvP ztvMC<3-lA{rRF$P1(8S4Pzt*v>llMCI1EvA`z;Q z)(+J8$}2is*%Loo=%F}erwxF@nYz68nm{P<)<*uX$FraRWx@YV%kh7Y4u|ufjg%eG z_3X!<=hHa6_6%JY-mMGU)`2JMrlqy#ymHFf_G;Nq3fXoVETxBSuYv8Pd+n%SYp-nW zq-Jf2-Nb~Qm0q=zMztM-r4*^{Rj8emr+tj9mA3SU){{y#+K;GLWZ~rc;=v>kgVt~; XLmA3YI+p(l00960XPLMX00IaAp<{n+ literal 0 HcmV?d00001 diff --git a/community/logseq/1.0.0/ci/basic-values.yaml b/community/logseq/1.0.0/ci/basic-values.yaml new file mode 100644 index 0000000000..d8713431db --- /dev/null +++ b/community/logseq/1.0.0/ci/basic-values.yaml @@ -0,0 +1,6 @@ +logseqNetwork: + webPort: 31000 + +logseqRunAs: + user: 1000 + group: 1000 diff --git a/community/logseq/1.0.0/ci/extra-values.yaml b/community/logseq/1.0.0/ci/extra-values.yaml new file mode 100644 index 0000000000..cae37c6a61 --- /dev/null +++ b/community/logseq/1.0.0/ci/extra-values.yaml @@ -0,0 +1,11 @@ +logseqNetwork: + webPort: 31000 + +logseqStorage: + additionalStorages: + - type: hostPath + hostPath: /mnt/{{ .Release.Namespace }}/data1 + mountPath: /data1 + - type: hostPath + hostPath: /mnt/{{ .Release.Namespace }}/data2 + mountPath: /data2 diff --git a/community/logseq/1.0.0/ci/hostNet-values.yaml b/community/logseq/1.0.0/ci/hostNet-values.yaml new file mode 100644 index 0000000000..2b23670aee --- /dev/null +++ b/community/logseq/1.0.0/ci/hostNet-values.yaml @@ -0,0 +1,3 @@ +logseqNetwork: + webPort: 30000 + hostNetwork: true diff --git a/community/logseq/1.0.0/ci/https-values.yaml b/community/logseq/1.0.0/ci/https-values.yaml new file mode 100644 index 0000000000..02a4d50a4a --- /dev/null +++ b/community/logseq/1.0.0/ci/https-values.yaml @@ -0,0 +1,89 @@ +logseqNetwork: + webPort: 31000 + certificateID: 1 + +ixCertificates: + "1": + certificate: | + -----BEGIN CERTIFICATE----- + MIIEdjCCA16gAwIBAgIDYFMYMA0GCSqGSIb3DQEBCwUAMGwxDDAKBgNVBAMMA2Fz + ZDELMAkGA1UEBhMCVVMxDTALBgNVBAgMBGFzZGYxCzAJBgNVBAcMAmFmMQ0wCwYD + VQQKDARhc2RmMQwwCgYDVQQLDANhc2QxFjAUBgkqhkiG9w0BCQEWB2FAYS5jb20w + HhcNMjEwODMwMjMyMzU0WhcNMjMxMjAzMjMyMzU0WjBuMQswCQYDVQQDDAJhZDEL + MAkGA1UEBhMCVVMxDTALBgNVBAgMBGFzZGYxDTALBgNVBAcMBGFzZGYxDTALBgNV + BAoMBGFkc2YxDTALBgNVBAsMBGFzZGYxFjAUBgkqhkiG9w0BCQEWB2FAYS5jb20w + ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7+1xOHRQyOnQTHFcrdasX + Zl0gzutVlA890a1wiQpdD5dOtCLo7+eqVYjqVKo9W8RUIArXWmBu/AbkH7oVFWC1 + P973W1+ArF5sA70f7BZgqRKJTIisuIFIlRETgfnP2pfQmHRZtGaIJRZI4vQCdYgW + 2g0KOvvNcZJCVq1OrhKiNiY1bWCp66DGg0ic6OEkZFHTm745zUNQaf2dNgsxKU0H + PGjVLJI//yrRFAOSBUqgD4c50krnMF7fU/Fqh+UyOu8t6Y/HsySh3urB+Zie331t + AzV6QV39KKxRflNx/yuWrtIEslGTm+xHKoCYJEk/nZ3mX8Y5hG6wWAb7A/FuDVg3 + AgMBAAGjggEdMIIBGTAnBgNVHREEIDAehwTAqAADhwTAqAAFhwTAqAC2hwTAqACB + hwTAqACSMB0GA1UdDgQWBBQ4G2ff4tgZl4vmo4xCfqmJhdqShzAMBgNVHRMBAf8E + AjAAMIGYBgNVHSMEgZAwgY2AFLlYf9L99nxJDcpCM/LT3V5hQ/a3oXCkbjBsMQww + CgYDVQQDDANhc2QxCzAJBgNVBAYTAlVTMQ0wCwYDVQQIDARhc2RmMQswCQYDVQQH + DAJhZjENMAsGA1UECgwEYXNkZjEMMAoGA1UECwwDYXNkMRYwFAYJKoZIhvcNAQkB + FgdhQGEuY29tggNgUxcwFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwEwDgYDVR0PAQH/ + BAQDAgWgMA0GCSqGSIb3DQEBCwUAA4IBAQA6FpOInEHB5iVk3FP67GybJ29vHZTD + KQHbQgmg8s4L7qIsA1HQ+DMCbdylpA11x+t/eL/n48BvGw2FNXpN6uykhLHJjbKR + h8yITa2KeD3LjLYhScwIigXmTVYSP3km6s8jRL6UKT9zttnIHyXVpBDya6Q4WTMx + fmfC6O7t1PjQ5ZyVtzizIUP8ah9n4TKdXU4A3QIM6WsJXpHb+vqp1WDWJ7mKFtgj + x5TKv3wcPnktx0zMPfLb5BTSE9rc9djcBG0eIAsPT4FgiatCUChe7VhuMnqskxEz + MymJLoq8+mzucRwFkOkR2EIt1x+Irl2mJVMeBow63rVZfUQBD8h++LqB + -----END CERTIFICATE----- + -----BEGIN CERTIFICATE----- + MIIEhDCCA2ygAwIBAgIDYFMXMA0GCSqGSIb3DQEBCwUAMGwxDDAKBgNVBAMMA2Fz + ZDELMAkGA1UEBhMCVVMxDTALBgNVBAgMBGFzZGYxCzAJBgNVBAcMAmFmMQ0wCwYD + VQQKDARhc2RmMQwwCgYDVQQLDANhc2QxFjAUBgkqhkiG9w0BCQEWB2FAYS5jb20w + HhcNMjEwODMwMjMyMDQ1WhcNMzEwODI4MjMyMDQ1WjBsMQwwCgYDVQQDDANhc2Qx + CzAJBgNVBAYTAlVTMQ0wCwYDVQQIDARhc2RmMQswCQYDVQQHDAJhZjENMAsGA1UE + CgwEYXNkZjEMMAoGA1UECwwDYXNkMRYwFAYJKoZIhvcNAQkBFgdhQGEuY29tMIIB + IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq//c0hEEr83CS1pMgsHX50jt + 2MqIbcf63UUNJTiYpUUvUQSFJFc7m/dr+RTZvu97eDCnD5K2qkHHvTPaPZwY+Djf + iy7N641Sz6u/y3Yo3xxs1Aermsfedh48vusJpjbkT2XS44VjbkrpKcWDNVpp3Evd + M7oJotXeUsZ+imiyVCfr4YhoY5gbGh/r+KN9Wf9YKoUyfLLZGwdZkhtX2zIbidsL + Thqi9YTaUHttGinjiBBum234u/CfvKXsfG3yP2gvBGnlvZnM9ktv+lVffYNqlf7H + VmB1bKKk84HtzuW5X76SGAgOG8eHX4x5ZLI1WQUuoQOVRl1I0UCjBtbz8XhwvQID + AQABo4IBLTCCASkwLQYDVR0RBCYwJIcEwKgABYcEwKgAA4cEwKgAkocEwKgAtYcE + wKgAgYcEwKgAtjAdBgNVHQ4EFgQUuVh/0v32fEkNykIz8tPdXmFD9rcwDwYDVR0T + AQH/BAUwAwEB/zCBmAYDVR0jBIGQMIGNgBS5WH/S/fZ8SQ3KQjPy091eYUP2t6Fw + pG4wbDEMMAoGA1UEAwwDYXNkMQswCQYDVQQGEwJVUzENMAsGA1UECAwEYXNkZjEL + MAkGA1UEBwwCYWYxDTALBgNVBAoMBGFzZGYxDDAKBgNVBAsMA2FzZDEWMBQGCSqG + SIb3DQEJARYHYUBhLmNvbYIDYFMXMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEF + BQcDAjAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAKEocOmVuWlr + zegtKYMe8NhHIkFY9oVn5ym6RHNOJpPH4QF8XYC3Z5+iC5yGh4P/jVe/4I4SF6Ql + PtofU0jNq5vzapt/y+m008eXqPQFmoUOvu+JavoRVcRx2LIP5AgBA1mF56CSREsX + TkuJAA9IUQ8EjnmAoAeKINuPaKxGDuU8BGCMqr/qd564MKNf9XYL+Fb2rlkA0O2d + 2No34DQLgqSmST/LAvPM7Cbp6knYgnKmGr1nETCXasg1cueHLnWWTvps2HiPp2D/ + +Fq0uqcZLu4Mdo0CPs4e5sHRyldEnRSKh0DVLprq9zr/GMipmPLJUsT5Jed3sj0w + M7Y3vwxshpo= + -----END CERTIFICATE----- + privatekey: | + -----BEGIN PRIVATE KEY----- + MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC7+1xOHRQyOnQT + HFcrdasXZl0gzutVlA890a1wiQpdD5dOtCLo7+eqVYjqVKo9W8RUIArXWmBu/Abk + H7oVFWC1P973W1+ArF5sA70f7BZgqRKJTIisuIFIlRETgfnP2pfQmHRZtGaIJRZI + 4vQCdYgW2g0KOvvNcZJCVq1OrhKiNiY1bWCp66DGg0ic6OEkZFHTm745zUNQaf2d + NgsxKU0HPGjVLJI//yrRFAOSBUqgD4c50krnMF7fU/Fqh+UyOu8t6Y/HsySh3urB + +Zie331tAzV6QV39KKxRflNx/yuWrtIEslGTm+xHKoCYJEk/nZ3mX8Y5hG6wWAb7 + A/FuDVg3AgMBAAECggEAapt30rj9DitGTtxAt13pJMEhyYxvvD3WkvmJwguF/Bbu + eW0Ba1c668fMeRCA54FWi1sMqusPS4HUqqUvk+tmyAOsAF4qgD/A4MMSC7uJSVI5 + N/JWhJWyhCY94/FPakiO1nbPbVw41bcqtzU2qvparpME2CtxSCbDiqm7aaag3Kqe + EF0fGSUdZ+TYl9JM05+eIyiX+UY19Fg0OjTHMn8nGpxcNTfDBdQ68TKvdo/dtIKL + PLKzJUNNdM8odC4CvQtfGMqaslwZwXkiOl5VJcW21ncj/Y0ngEMKeD/i65ZoqGdR + 0FKCQYEAGtM2FvJcZQ92Wsw7yj2bK2MSegVUyLK32QKBgQDe8syVCepPzRsfjfxA + 6TZlWcGuTZLhwIx97Ktw3VcQ1f4rLoEYlv0xC2VWBORpzIsJo4I/OLmgp8a+Ga8z + FkVRnq90dV3t4NP9uJlHgcODHnOardC2UUka4olBSCG6zmK4Jxi34lOxhGRkshOo + L4IBeOIB5g+ZrEEXkzfYJHESRQKBgQDX2YhFhGIrT8BAnC5BbXbhm8h6Bhjz8DYL + d+qhVJjef7L/aJxViU0hX9Ba2O8CLK3FZeREFE3hJPiJ4TZSlN4evxs5p+bbNDcA + 0mhRI/o3X4ac6IxdRebyYnCOB/Cu94/MzppcZcotlCekKNike7eorCcX4Qavm7Pu + MUuQ+ifmSwKBgEnchoqZzlbBzMqXb4rRuIO7SL9GU/MWp3TQg7vQmJerTZlgvsQ2 + wYsOC3SECmhCq4117iCj2luvOdihCboTFsQDnn0mpQe6BIF6Ns3J38wAuqv0CcFd + DKsrge1uyD3rQilgSoAhKzkUc24o0PpXQurZ8YZPgbuXpbj5vPaOnCdBAoGACYc7 + wb3XS4wos3FxhUfcwJbM4b4VKeeHqzfu7pI6cU/3ydiHVitKcVe2bdw3qMPqI9Wc + nvi6e17Tbdq4OCsEJx1OiVwFD9YdO3cOTc6lw/3+hjypvZBRYo+/4jUthbu96E+S + dtOzehGZMmDvN0uSzupSi3ZOgkAAUFpyuIKickMCgYAId0PCRjonO2thn/R0rZ7P + //L852uyzYhXKw5/fjFGhQ6LbaLgIRFaCZ0L2809u0HFnNvJjHv4AKP6j+vFQYYY + qQ+66XnfsA9G/bu4MDS9AX83iahD9IdLXQAy8I19prAbpVumKegPbMnNYNB/TYEc + 3G15AKCXo7jjOUtHY01DCQ== + -----END PRIVATE KEY----- diff --git a/community/logseq/1.0.0/ix_values.yaml b/community/logseq/1.0.0/ix_values.yaml new file mode 100644 index 0000000000..b4be79d564 --- /dev/null +++ b/community/logseq/1.0.0/ix_values.yaml @@ -0,0 +1,25 @@ +image: + repository: ghcr.io/logseq/logseq-webapp + pullPolicy: IfNotPresent + # No versioned tags provided + tag: latest + +resources: + limits: + cpu: 4000m + memory: 8Gi + +logseqConfig: + additionalEnvs: [] + +logseqNetwork: + webPort: 30079 + certificateID: + hostNetwork: false + +logseqRunAs: + user: 568 + group: 568 + +logseqStorage: + additionalStorages: [] diff --git a/community/logseq/1.0.0/metadata.yaml b/community/logseq/1.0.0/metadata.yaml new file mode 100644 index 0000000000..91033503ff --- /dev/null +++ b/community/logseq/1.0.0/metadata.yaml @@ -0,0 +1,8 @@ +runAsContext: + - userName: logseq + groupName: logseq + gid: 568 + uid: 568 + description: Logseq can run as any non-root user. +capabilities: [] +hostMounts: [] diff --git a/community/logseq/1.0.0/questions.yaml b/community/logseq/1.0.0/questions.yaml new file mode 100644 index 0000000000..06552e031b --- /dev/null +++ b/community/logseq/1.0.0/questions.yaml @@ -0,0 +1,203 @@ +groups: + - name: Logseq Configuration + description: Configure Logseq + - name: User and Group Configuration + description: Configure User and Group for Logseq + - name: Network Configuration + description: Configure Network for Logseq + - name: Storage Configuration + description: Configure Storage for Logseq + - name: Resources Configuration + description: Configure Resources for Logseq + +portals: + web_portal: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" + path: "$kubernetes-resource_configmap_portal_path" + +questions: + - variable: logseqConfig + label: "" + group: Logseq Configuration + schema: + type: dict + attrs: + - variable: additionalEnvs + label: Additional Environment Variables + description: Configure additional environment variables for Logseq. + schema: + type: list + default: [] + items: + - variable: env + label: Environment Variable + schema: + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + + - variable: logseqRunAs + label: "" + group: User and Group Configuration + schema: + type: dict + attrs: + - variable: user + label: User ID + description: The user id that Logseq will run as. + schema: + type: int + min: 2 + default: 568 + required: true + - variable: group + label: Group ID + description: The group id that Logseq will run as. + schema: + type: int + min: 2 + default: 568 + required: true + + - variable: logseqNetwork + label: "" + group: Network Configuration + schema: + type: dict + attrs: + - variable: webPort + label: Web Port + description: The port for the Logseq Web UI. + schema: + type: int + default: 30079 + min: 9000 + max: 65535 + required: true + - variable: certificateID + label: Certificate + description: The certificate to use for Logseq. + schema: + type: int + "null": true + $ref: + - "definitions/certificate" + - variable: hostNetwork + label: Host Network + description: | + Bind to the host network. It's recommended to keep this disabled.
+ schema: + type: boolean + default: false + + - variable: logseqStorage + label: "" + group: Storage Configuration + schema: + type: dict + attrs: + - variable: additionalStorages + label: Additional Storage + description: Additional storage for Logseq. + schema: + type: list + default: [] + items: + - variable: storageEntry + label: Storage Entry + schema: + type: dict + attrs: + - variable: type + label: Type + description: | + ixVolume: Is dataset created automatically by the system.
+ Host Path: Is a path that already exists on the system. + schema: + type: string + required: true + default: "ixVolume" + enum: + - value: "hostPath" + description: Host Path (Path that already exists on the system) + - value: "ixVolume" + description: ixVolume (Dataset created automatically by the system) + - variable: mountPath + label: Mount Path + description: The path inside the container to mount the storage. + schema: + type: path + required: true + - variable: hostPath + label: Host Path + description: The host path to use for storage. + schema: + type: hostpath + show_if: [["type", "=", "hostPath"]] + required: true + - variable: datasetName + label: Dataset Name + description: The name of the dataset to use for storage. + schema: + type: string + show_if: [["type", "=", "ixVolume"]] + required: true + immutable: true + default: "storage_entry" + $ref: + - "normalize/ixVolume" + + - variable: resources + group: Resources Configuration + label: "" + schema: + type: dict + attrs: + - variable: limits + label: Limits + schema: + type: dict + attrs: + - variable: cpu + label: CPU + description: CPU limit for Logseq. + schema: + type: string + max_length: 6 + valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$' + valid_chars_error: | + Valid CPU limit formats are
+ - Plain Integer - eg. 1
+ - Float - eg. 0.5
+ - Milicpu - eg. 500m + default: "4000m" + required: true + - variable: memory + label: Memory + description: Memory limit for Logseq. + schema: + type: string + max_length: 12 + valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$' + valid_chars_error: | + Valid Memory limit formats are
+ - Suffixed with E/P/T/G/M/K - eg. 1G
+ - Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi
+ - Plain Integer in bytes - eg. 1024
+ - Exponent - eg. 134e6 + default: "8Gi" + required: true diff --git a/community/logseq/1.0.0/templates/NOTES.txt b/community/logseq/1.0.0/templates/NOTES.txt new file mode 100644 index 0000000000..ba4e01146c --- /dev/null +++ b/community/logseq/1.0.0/templates/NOTES.txt @@ -0,0 +1 @@ +{{ include "ix.v1.common.lib.chart.notes" $ }} diff --git a/community/logseq/1.0.0/templates/_configuration.tpl b/community/logseq/1.0.0/templates/_configuration.tpl new file mode 100644 index 0000000000..e652abfd3e --- /dev/null +++ b/community/logseq/1.0.0/templates/_configuration.tpl @@ -0,0 +1,30 @@ +{{- define "logseq.configuration" -}} +configmap: + nginx-config: + enabled: true + data: + nginx.conf: | + server { + {{- if .Values.logseqNetwork.certificateID }} + listen {{ .Values.logseqNetwork.webPort }} ssl; + ssl_certificate /etc/nginx/certs/tls.crt; + ssl_certificate_key /etc/nginx/certs/tls.key; + {{- else }} + listen {{ .Values.logseqNetwork.webPort }}; + {{- end }} + + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html; + } + + location / { + root /usr/share/nginx/html; + index index.html index.htm; + } + + location /health { + return 200; + } + } +{{- end -}} diff --git a/community/logseq/1.0.0/templates/_logseq.tpl b/community/logseq/1.0.0/templates/_logseq.tpl new file mode 100644 index 0000000000..449aabf88d --- /dev/null +++ b/community/logseq/1.0.0/templates/_logseq.tpl @@ -0,0 +1,45 @@ +{{- define "logseq.workload" -}} +workload: + logseq: + enabled: true + primary: true + type: Deployment + podSpec: + hostNetwork: {{ .Values.logseqNetwork.hostNetwork }} + containers: + logseq: + enabled: true + primary: true + imageSelector: image + securityContext: + runAsUser: {{ .Values.logseqRunAs.user }} + runAsGroup: {{ .Values.logseqRunAs.group }} + readOnlyRootFilesystem: false + {{ with .Values.logseqConfig.additionalEnvs }} + envList: + {{ range $env := . }} + - name: {{ $env.name }} + value: {{ $env.value }} + {{ end }} + {{ end }} + probes: + {{- $protocol := "http" -}} + {{- if .Values.logseqNetwork.certificateID -}} + {{- $protocol = "https" -}} + {{- end }} + liveness: + enabled: true + type: {{ $protocol }} + port: {{ .Values.logseqNetwork.webPort }} + path: /health + readiness: + enabled: true + type: {{ $protocol }} + port: {{ .Values.logseqNetwork.webPort }} + path: /health + startup: + enabled: true + type: {{ $protocol }} + port: {{ .Values.logseqNetwork.webPort }} + path: /health +{{- end -}} diff --git a/community/logseq/1.0.0/templates/_persistence.tpl b/community/logseq/1.0.0/templates/_persistence.tpl new file mode 100644 index 0000000000..6012cfe7a7 --- /dev/null +++ b/community/logseq/1.0.0/templates/_persistence.tpl @@ -0,0 +1,69 @@ +{{- define "logseq.persistence" -}} +persistence: + nginx: + enabled: true + type: configmap + objectName: nginx-config + defaultMode: "0600" + targetSelector: + logseq: + logseq: + mountPath: /etc/nginx/conf.d/default.conf + subPath: nginx.conf + readOnly: true + tmp: + enabled: true + type: emptyDir + targetSelector: + logseq: + logseq: + mountPath: /tmp + varcache: + enabled: true + type: emptyDir + targetSelector: + logseq: + logseq: + mountPath: /var/cache/nginx + varrun: + enabled: true + type: emptyDir + targetSelector: + logseq: + logseq: + mountPath: /var/run + {{- range $idx, $storage := .Values.logseqStorage.additionalStorages }} + {{ printf "logseq-%v" (int $idx) }}: + enabled: true + type: {{ $storage.type }} + datasetName: {{ $storage.datasetName | default "" }} + hostPath: {{ $storage.hostPath | default "" }} + targetSelector: + logseq: + logseq: + mountPath: {{ $storage.mountPath }} + {{- end -}} + + {{- if .Values.logseqNetwork.certificateID }} + cert: + enabled: true + type: secret + objectName: logseq-cert + defaultMode: "0600" + items: + - key: tls.key + path: tls.key + - key: tls.crt + path: tls.crt + targetSelector: + logseq: + logseq: + mountPath: /etc/nginx/certs + readOnly: true + +scaleCertificate: + logseq-cert: + enabled: true + id: {{ .Values.logseqNetwork.certificateID }} + {{- end -}} +{{- end -}} diff --git a/community/logseq/1.0.0/templates/_portal.tpl b/community/logseq/1.0.0/templates/_portal.tpl new file mode 100644 index 0000000000..ba18a50e76 --- /dev/null +++ b/community/logseq/1.0.0/templates/_portal.tpl @@ -0,0 +1,16 @@ +{{- define "logseq.portal" -}} +{{- $protocol := "http" -}} +{{- if .Values.logseqNetwork.certificateID -}} + {{- $protocol = "https" -}} +{{- end }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: portal +data: + path: "/" + port: {{ .Values.logseqNetwork.webPort | quote }} + protocol: {{ $protocol }} + host: $node_ip +{{- end -}} diff --git a/community/logseq/1.0.0/templates/_service.tpl b/community/logseq/1.0.0/templates/_service.tpl new file mode 100644 index 0000000000..257640f10d --- /dev/null +++ b/community/logseq/1.0.0/templates/_service.tpl @@ -0,0 +1,15 @@ +{{- define "logseq.service" -}} +service: + logseq: + enabled: true + primary: true + type: NodePort + targetSelector: logseq + ports: + webui: + enabled: true + primary: true + port: {{ .Values.logseqNetwork.webPort }} + nodePort: {{ .Values.logseqNetwork.webPort }} + targetSelector: logseq +{{- end -}} diff --git a/community/logseq/1.0.0/templates/common.yaml b/community/logseq/1.0.0/templates/common.yaml new file mode 100644 index 0000000000..0ddc907798 --- /dev/null +++ b/community/logseq/1.0.0/templates/common.yaml @@ -0,0 +1,12 @@ +{{- include "ix.v1.common.loader.init" . -}} + +{{/* Merge the templates with Values */}} +{{- $_ := mustMergeOverwrite .Values (include "logseq.configuration" $ | fromYaml) -}} +{{- $_ := mustMergeOverwrite .Values (include "logseq.persistence" $ | fromYaml) -}} +{{- $_ := mustMergeOverwrite .Values (include "logseq.service" $ | fromYaml) -}} +{{- $_ := mustMergeOverwrite .Values (include "logseq.workload" $ | fromYaml) -}} + +{{/* Create the configmap for portal manually*/}} +{{- include "logseq.portal" $ -}} + +{{- include "ix.v1.common.loader.apply" . -}} diff --git a/community/logseq/1.0.0/upgrade_strategy_disabled b/community/logseq/1.0.0/upgrade_strategy_disabled new file mode 100755 index 0000000000..c55ab4bc7d --- /dev/null +++ b/community/logseq/1.0.0/upgrade_strategy_disabled @@ -0,0 +1,31 @@ +#!/usr/bin/python3 +import json +import re +import sys + +from catalog_update.upgrade_strategy import semantic_versioning + + +RE_STABLE_VERSION = re.compile(r'\d+\.\d+\.\d+\.\d+') + + +def newer_mapping(image_tags): + key = list(image_tags.keys())[0] + tags = {t: t for t in image_tags[key] if RE_STABLE_VERSION.fullmatch(t)} + version = semantic_versioning(list(tags)) + if not version: + return {} + + return { + 'tags': {key: tags[version]}, + 'app_version': version, + } + + +if __name__ == '__main__': + try: + versions_json = json.loads(sys.stdin.read()) + except ValueError: + raise ValueError('Invalid json specified') + + print(json.dumps(newer_mapping(versions_json))) diff --git a/community/logseq/item.yaml b/community/logseq/item.yaml new file mode 100644 index 0000000000..12d8c9ac99 --- /dev/null +++ b/community/logseq/item.yaml @@ -0,0 +1,7 @@ +icon_url: https://user-images.githubusercontent.com/25513724/220608753-f33db466-af72-4611-b603-411440c15ed0.png +categories: + - productivity +screenshots: [] +tags: + - knowledge + - management