From fe81c3e2947add5b4726a56b28df869957385da3 Mon Sep 17 00:00:00 2001 From: RayBB Date: Fri, 1 Nov 2024 18:26:33 -0500 Subject: [PATCH 01/48] add readeck service template --- public/svgs/readeck.svg | 9 +++++++++ templates/compose/readeck.yaml | 24 ++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 public/svgs/readeck.svg create mode 100644 templates/compose/readeck.yaml diff --git a/public/svgs/readeck.svg b/public/svgs/readeck.svg new file mode 100644 index 000000000..07f6e6157 --- /dev/null +++ b/public/svgs/readeck.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/templates/compose/readeck.yaml b/templates/compose/readeck.yaml new file mode 100644 index 000000000..2a4907974 --- /dev/null +++ b/templates/compose/readeck.yaml @@ -0,0 +1,24 @@ +# documentation: https://readeck.org/en/docs/ +# slogan: Simple web application that lets you save the precious readable content of web pages you like and want to keep forever. +# tags: read-it-later,pocket-alternative,omnivore-alternative,instapaper-alternative +# logo: svgs/readeck.svg +# port: 8000 + +services: + readeck: + image: 'codeberg.org/readeck/readeck:latest' + environment: + - SERVICE_FQDN_READECK + - READECK_USE_X_FORWARDED=true + volumes: + - 'readeck-data:/readeck' + healthcheck: + test: + - CMD + - /bin/readeck + - healthcheck + - '-config' + - config.toml + interval: 30s + timeout: 2s + retries: 3 From e1d55717f35ffe255916f286407cfdccb0c0b22d Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:07:47 +0400 Subject: [PATCH 02/48] Add apprise-api.yaml Adding Apprise-api template --- templates/compose/apprise-api.yaml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 templates/compose/apprise-api.yaml diff --git a/templates/compose/apprise-api.yaml b/templates/compose/apprise-api.yaml new file mode 100644 index 000000000..e13450de1 --- /dev/null +++ b/templates/compose/apprise-api.yaml @@ -0,0 +1,15 @@ +services: + apprise-api: + image: 'linuxserver/apprise-api:latest' + environment: + - SERVICE_FQDN_APPRISE_8000 + - PUID=1000 + - PGID=1000 + - TZ=UTC + volumes: + - '/apprise-api/config:/config' + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8000/"] + interval: 5s + timeout: 20s + retries: 10 From 0b958cea71913abfbea0322eaa68b16d902a2a25 Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:09:20 +0400 Subject: [PATCH 03/48] Add cyberchef-x86.yaml Better than it-tools all in one Dev Tool ( works only on x86 platform) --- templates/compose/cyberchef-x86.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 templates/compose/cyberchef-x86.yaml diff --git a/templates/compose/cyberchef-x86.yaml b/templates/compose/cyberchef-x86.yaml new file mode 100644 index 000000000..47dcc2aea --- /dev/null +++ b/templates/compose/cyberchef-x86.yaml @@ -0,0 +1,16 @@ +services: + cyberchef: + image: 'ghcr.io/gchq/cyberchef:latest' + environment: + - SERVICE_FQDN_CYBERCHEF_80 + volumes: + - 'cyberchef-data:/app/data' + healthcheck: + test: + - CMD + - curl + - '-f' + - 'http://127.0.0.1:80' + interval: 30s + timeout: 10s + retries: 3 From 79799468335efc787813ee5e6e095f515fb4a120 Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:10:12 +0400 Subject: [PATCH 04/48] Add dashy.yaml Add Dashy Dashboard Template. --- templates/compose/dashy.yaml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 templates/compose/dashy.yaml diff --git a/templates/compose/dashy.yaml b/templates/compose/dashy.yaml new file mode 100644 index 000000000..368f184db --- /dev/null +++ b/templates/compose/dashy.yaml @@ -0,0 +1,15 @@ +services: + dashy: + image: lissy93/dashy + environment: + - SERVICE_FQDN_DASHY_8080 + - PUID=1000 + - PGID=1000 + - TZ=UTC + volumes: + - '/Config/Dashy/conf.yml:/app/public/conf.yml' + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8080/"] + interval: 5s + timeout: 20s + retries: 10 From d807eb245db5501a0f808ff7789460b7cc1a15ca Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:11:32 +0400 Subject: [PATCH 05/48] Create faraday.yaml https://github.com/infobyte/faraday Open Source Vulnerability Management Platform Healthchecks works too --- templates/compose/faraday.yaml | 54 ++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 templates/compose/faraday.yaml diff --git a/templates/compose/faraday.yaml b/templates/compose/faraday.yaml new file mode 100644 index 000000000..c342272c3 --- /dev/null +++ b/templates/compose/faraday.yaml @@ -0,0 +1,54 @@ +services: + postgresql: + image: 'postgres:latest' + restart: unless-stopped + healthcheck: + test: + - CMD-SHELL + - 'pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}' + interval: 15s + timeout: 10s + retries: 15 + volumes: + - 'faraday-db:/var/lib/postgresql/data' + environment: + - 'POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}' + - 'POSTGRES_USER=${SERVICE_USER_POSTGRESQL}' + - 'POSTGRES_DB=${POSTGRES_DB:-faraday}' + redis: + image: 'redis:alpine' + command: '--save 60 1 --loglevel warning' + restart: unless-stopped + healthcheck: + test: + - CMD-SHELL + - 'redis-cli ping | grep PONG' + interval: 15s + timeout: 10s + retries: 15 + volumes: + - 'redis:/data' + faraday: + image: 'faradaysec/faraday:latest' + restart: always + entrypoint: /entrypoint.sh + environment: + - SERVICE_FQDN_FARADAY_5985 + - 'AUTHENTIK_POSTGRESQL__PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}' + - 'PGSQL_USER=${SERVICE_USER_POSTGRESQL}' + - 'PGSQL_PASSWD=${SERVICE_PASSWORD_POSTGRESQL}' + - 'PGSQL_DBNAME=${POSTGRES_DB}' + - PGSQL_HOST=postgresql + - REDIS_SERVER=redis + volumes: + - '/faraday:/home/faraday/.faraday:rw' + depends_on: + postgresql: + condition: service_healthy + redis: + condition: service_healthy + healthcheck: + test: ["CMD", "nc", "-z", "localhost", "5985"] + interval: 30s + timeout: 10s + retries: 3 From 9eb0a27af5dc9433c3abf6cadbd37d2a505a258b Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:12:30 +0400 Subject: [PATCH 06/48] Update firefly.yaml Add healthcheck to Cron --- templates/compose/firefly.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/templates/compose/firefly.yaml b/templates/compose/firefly.yaml index 1b1c6bf65..3312baf06 100644 --- a/templates/compose/firefly.yaml +++ b/templates/compose/firefly.yaml @@ -68,3 +68,9 @@ services: crond -f -L /dev/stdout environment: - STATIC_CRON_TOKEN=$SERVICE_BASE64_CRONTOKEN + healthcheck: + test: ["CMD-SHELL", "ls /entrypoint.sh || exit 1"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 40s From 35b9c360359e09d2c936e4769b4b9fe7287f8bab Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:14:02 +0400 Subject: [PATCH 07/48] Create hoppscotch.yaml https://github.com/hoppscotch/hoppscotch Open source API development ecosystem - https://hoppscotch.io (open-source alternative to Postman, Insomnia) Healthchecks works too --- templates/compose/hoppscotch.yaml | 88 +++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 templates/compose/hoppscotch.yaml diff --git a/templates/compose/hoppscotch.yaml b/templates/compose/hoppscotch.yaml new file mode 100644 index 000000000..0f5cfdd9c --- /dev/null +++ b/templates/compose/hoppscotch.yaml @@ -0,0 +1,88 @@ +services: + backend: + image: 'hoppscotch/hoppscotch:latest' + environment: + - SERVICE_FQDN_HOPPSCOTCH_80 + - SERVICE_URL_HOPPSCOTCH + - 'VITE_ALLOWED_AUTH_PROVIDERS=${VITE_ALLOWED_AUTH_PROVIDERS:-GOOGLE,GITHUB,MICROSOFT,EMAIL}' + - 'DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@hoppscotch-db:5432/${POSTGRES_DB}' + - 'JWT_SECRET=${SERVICE_PASSWORD_JWT}' + - 'TOKEN_SALT_COMPLEXITY=${TOKEN_SALT_COMPLEXITY:-10}' + - 'MAGIC_LINK_TOKEN_VALIDITY=${MAGIC_LINK_TOKEN_VALIDITY:-3}' + - 'REFRESH_TOKEN_VALIDITY=${REFRESH_TOKEN_VALIDITY:-604800000}' + - 'ACCESS_TOKEN_VALIDITY=${ACCESS_TOKEN_VALIDITY:-86400000}' + - 'SESSION_SECRET=${SERVICE_PASSWORD_SECRET}' + - 'ALLOW_SECURE_COOKIES=${ALLOW_SECURE_COOKIES:-true}' + - 'DATA_ENCRYPTION_KEY=${DATA_ENCRYPTION_KEY:-mustbeexactry32characterlikethat}' + - 'REDIRECT_URL=${SERVICE_FQDN_HOPPSCOTCH}' + - 'WHITELISTED_ORIGINS=${SERVICE_FQDN_HOPPSCOTCH}/backend,${SERVICE_FQDN_HOPPSCOTCH},${SERVICE_FQDN_HOPPSCOTCH}/admin' + - 'GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID:-*****}' + - 'GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET:-*****}' + - 'GOOGLE_CALLBACK_URL=${SERVICE_FQDN_HOPPSCOTCH}/backend/v1/auth/google/callback' + - 'GOOGLE_SCOPE=email,profile' + - 'GITHUB_CLIENT_ID=${GITHUB_CLIENT_ID:-*****}' + - 'GITHUB_CLIENT_SECRET=${GITHUB_CLIENT_SECRET:-*****}' + - 'GITHUB_CALLBACK_URL=${SERVICE_FQDN_HOPPSCOTCH}/backend/v1/auth/github/callback' + - 'GITHUB_SCOPE=user:email' + - 'MICROSOFT_CLIENT_ID=${MICROSOFT_CLIENT_ID:-*****}' + - 'MICROSOFT_CLIENT_SECRET=${MICROSOFT_CLIENT_SECRET:-*****}' + - 'MICROSOFT_CALLBACK_URL=${SERVICE_FQDN_HOPPSCOTCH}/backend/v1/auth/microsoft/callback' + - 'MICROSOFT_SCOPE=user.read' + - 'MICROSOFT_TENANT=common' + - 'MAILER_SMTP_ENABLE=${MAILER_SMTP_ENABLE:-false}' + - 'MAILER_USE_CUSTOM_CONFIGS=${MAILER_USE_CUSTOM_CONFIGS:-true}' + - 'MAILER_ADDRESS_FROM=${MAILER_ADDRESS_FROM:-samirqlvdev@example.com}' + - 'MAILER_SMTP_URL=${MAILER_SMTP_URL:-smtps_url}' + - 'MAILER_SMTP_HOST=${MAILER_SMTP_HOST:-smtp.example.com}' + - 'MAILER_SMTP_PORT=${MAILER_SMTP_PORT:-465}' + - 'MAILER_SMTP_SECURE=${MAILER_SMTP_SECURE:-true}' + - 'MAILER_SMTP_USER=${MAILER_SMTP_USER:-user@example.com}' + - 'MAILER_SMTP_PASSWORD=${MAILER_SMTP_PASSWORD:-mailpass}' + - 'MAILER_TLS_REJECT_UNAUTHORIZED=${MAILER_TLS_REJECT_UNAUTHORIZED:-false}' + - 'RATE_LIMIT_TTL=${RATE_LIMIT_TTL:-60}' + - 'RATE_LIMIT_MAX=${RATE_LIMIT_MAX:-100}' + - 'VITE_BASE_URL=${SERVICE_FQDN_HOPPSCOTCH}' + - 'VITE_SHORTCODE_BASE_URL=${SERVICE_FQDN_HOPPSCOTCH}' + - 'VITE_ADMIN_URL=${SERVICE_FQDN_HOPPSCOTCH}/admin' + - 'VITE_BACKEND_GQL_URL=${SERVICE_FQDN_HOPPSCOTCH}/backend/graphql' + - 'VITE_BACKEND_WS_URL=wss://${SERVICE_URL_HOPPSCOTCH}/backend/graphql' + - 'VITE_BACKEND_API_URL=${SERVICE_FQDN_HOPPSCOTCH}/backend/v1' + - 'VITE_APP_TOS_LINK=https://docs.hoppscotch.io/support/terms' + - 'VITE_APP_PRIVACY_POLICY_LINK=https://docs.hoppscotch.io/support/privacy' + - ENABLE_SUBPATH_BASED_ACCESS=true + depends_on: + db-migration: + condition: service_completed_successfully + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:80/"] + interval: 5s + timeout: 20s + retries: 10 + hoppscotch-db: + image: 'postgres:latest' + volumes: + - 'pg_data:/var/lib/postgresql/data' + environment: + - 'POSTGRES_USER=${SERVICE_USER_POSTGRES}' + - 'POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES}' + - 'POSTGRES_DB=${POSTGRES_DB:-hoppscotch}' + healthcheck: + test: + - CMD-SHELL + - 'pg_isready -h localhost -U $${POSTGRES_USER} -d $${POSTGRES_DB}' + interval: 5s + timeout: 10s + retries: 10 + db-migration: + exclude_from_hc: true + image: 'hoppscotch/hoppscotch:latest' + depends_on: + hoppscotch-db: + condition: service_healthy + command: 'pnpx prisma migrate deploy' + restart: on-failure + environment: + - 'POSTGRES_USER=${SERVICE_USER_POSTGRES}' + - 'POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES}' + - 'POSTGRES_DB=${POSTGRES_DB:-hoppscotch}' + - 'DATABASE_URL=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@hoppscotch-db:5432/${POSTGRES_DB:-hoppscotch}' From f0e4cfa75ab44e31ad70a89e6dbd220e0d201817 Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:14:59 +0400 Subject: [PATCH 08/48] Create jupyter-notebook.yaml Add jupyter-notebook Everything works well --- templates/compose/jupyter-notebook.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 templates/compose/jupyter-notebook.yaml diff --git a/templates/compose/jupyter-notebook.yaml b/templates/compose/jupyter-notebook.yaml new file mode 100644 index 000000000..92313d087 --- /dev/null +++ b/templates/compose/jupyter-notebook.yaml @@ -0,0 +1,13 @@ +services: + jupyter-notebook: + image: 'quay.io/jupyter/base-notebook:latest' + environment: + - SERVICE_FQDN_JUPYTER_8888 + volumes: + - '/jupyter:/home/jovyan/work' + command: start-notebook.sh + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8888/"] + interval: 30s + timeout: 20s + retries: 10 From c468ed4728982e1399fb94ade87704f404331f11 Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:17:30 +0400 Subject: [PATCH 09/48] Add healthchecks syncthing.yaml Add healthchecks --- templates/compose/syncthing.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/templates/compose/syncthing.yaml b/templates/compose/syncthing.yaml index b6c896294..930bd048d 100644 --- a/templates/compose/syncthing.yaml +++ b/templates/compose/syncthing.yaml @@ -20,3 +20,8 @@ services: - '22000:22000/tcp' - '22000:22000/udp' - '21027:21027/udp' + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8384/"] + interval: 5s + timeout: 20s + retries: 10 From 1b137972366c3c9d7153870a788ddeabdc3bad6d Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:18:24 +0400 Subject: [PATCH 10/48] Create web-check MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/Lissy93/web-check 🕵️‍♂️ All-in-one OSINT tool for analysing any website Healthchecks works... --- templates/compose/web-check | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 templates/compose/web-check diff --git a/templates/compose/web-check b/templates/compose/web-check new file mode 100644 index 000000000..09c9d0e0f --- /dev/null +++ b/templates/compose/web-check @@ -0,0 +1,12 @@ +services: + web-check: + image: lissy93/web-check + environment: + - SERVICE_FQDN_WEBCHECK_3000 + healthcheck: + test: + - CMD-SHELL + - 'wget -qO- http://127.0.0.1:3000/' + interval: 5s + timeout: 20s + retries: 10 From 113196c5692d5808a8c5d3ab481f14c3f4fa2358 Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:19:06 +0400 Subject: [PATCH 11/48] Rename web-check to web-check.yaml --- templates/compose/{web-check => web-check.yaml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename templates/compose/{web-check => web-check.yaml} (100%) diff --git a/templates/compose/web-check b/templates/compose/web-check.yaml similarity index 100% rename from templates/compose/web-check rename to templates/compose/web-check.yaml From dba43a6c773a446d36b7de5a1e2ee4928c88e136 Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:46:33 +0400 Subject: [PATCH 12/48] Update postiz.yaml By default only frontend of Postiz app works on port 4200 but on 5000 a whole service, if use 4200 signup will be impossible due strict CORS between resources /frontend and /api also add healthchecks to main app --- templates/compose/postiz.yaml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/templates/compose/postiz.yaml b/templates/compose/postiz.yaml index 8d199fde9..05a51e42d 100644 --- a/templates/compose/postiz.yaml +++ b/templates/compose/postiz.yaml @@ -3,16 +3,16 @@ # slogan: # tags: # logo: -# port: 4200 +# port: 5000 services: postiz: image: "ghcr.io/gitroomhq/postiz-app:latest" environment: - - SERVICE_FQDN_POSTIZ_4200 + - SERVICE_FQDN_POSTIZ_5000 - MAIN_URL=${SERVICE_FQDN_POSTIZ} - FRONTEND_URL=${SERVICE_FQDN_POSTIZ} - - NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZAPI_3000} + - NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZ}/api - JWT_SECRET=${SERVICE_REALBASE64_JWTSECRET} - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB:-postiz}?schema=public - REDIS_URL=redis://redis:6379 @@ -33,7 +33,13 @@ services: redis: condition: service_started volumes: - - "postiz_config:/config" + - 'postiz_config:/config' + - 'postiz_uploads:/uploads' + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:5000/"] + interval: 5s + timeout: 20s + retries: 10 postgres: image: "postgres:latest" environment: From 3b0d95d391afc5bc7477d8f07cfed84c6730cb21 Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sat, 2 Nov 2024 23:48:01 +0400 Subject: [PATCH 13/48] Create portainer.yaml New app portainer similar to Coolify, all tested, healthchecks works... --- templates/compose/portainer.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 templates/compose/portainer.yaml diff --git a/templates/compose/portainer.yaml b/templates/compose/portainer.yaml new file mode 100644 index 000000000..e12cb2111 --- /dev/null +++ b/templates/compose/portainer.yaml @@ -0,0 +1,13 @@ +services: + portainer: + image: 'portainer/portainer-ce:alpine' + environment: + - SERVICE_FQDN_PORTAINER_9000 + volumes: + - '/var/run/docker.sock:/var/run/docker.sock' + - 'portainer_data:/data' + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:9000/"] + interval: 20s + timeout: 20s + retries: 10 From c4eaef4295c556857af779b4efa73893c3a21eaa Mon Sep 17 00:00:00 2001 From: che0one <167894882+che0one@users.noreply.github.com> Date: Sun, 3 Nov 2024 00:08:51 +0400 Subject: [PATCH 14/48] Update hoppscotch.yaml username expose fixed --- templates/compose/hoppscotch.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/compose/hoppscotch.yaml b/templates/compose/hoppscotch.yaml index 0f5cfdd9c..2b27fcefd 100644 --- a/templates/compose/hoppscotch.yaml +++ b/templates/compose/hoppscotch.yaml @@ -31,7 +31,7 @@ services: - 'MICROSOFT_TENANT=common' - 'MAILER_SMTP_ENABLE=${MAILER_SMTP_ENABLE:-false}' - 'MAILER_USE_CUSTOM_CONFIGS=${MAILER_USE_CUSTOM_CONFIGS:-true}' - - 'MAILER_ADDRESS_FROM=${MAILER_ADDRESS_FROM:-samirqlvdev@example.com}' + - 'MAILER_ADDRESS_FROM=${MAILER_ADDRESS_FROM:-user@example.com}' - 'MAILER_SMTP_URL=${MAILER_SMTP_URL:-smtps_url}' - 'MAILER_SMTP_HOST=${MAILER_SMTP_HOST:-smtp.example.com}' - 'MAILER_SMTP_PORT=${MAILER_SMTP_PORT:-465}' From bd8218932e61258f34fa6cd723d3861e8e422f8a Mon Sep 17 00:00:00 2001 From: RayBB Date: Sun, 3 Nov 2024 14:27:40 -0500 Subject: [PATCH 15/48] add hoarder service --- public/svgs/hoarder.svg | 1 + templates/compose/hoarder.yaml | 40 ++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 public/svgs/hoarder.svg create mode 100644 templates/compose/hoarder.yaml diff --git a/public/svgs/hoarder.svg b/public/svgs/hoarder.svg new file mode 100644 index 000000000..6215461d2 --- /dev/null +++ b/public/svgs/hoarder.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/templates/compose/hoarder.yaml b/templates/compose/hoarder.yaml new file mode 100644 index 000000000..c58b8a82e --- /dev/null +++ b/templates/compose/hoarder.yaml @@ -0,0 +1,40 @@ +# documentation: https://docs.hoarder.app/ +# slogan: an open source "Bookmark Everything" app that uses AI for automatically tagging the content you throw at it. +# tags: media,read-it-later,pocket-alternative,omnivore-alternative,instapaper-alternative +# logo: svgs/hoarder.svg +# port: 3000 + +services: + web: + image: 'ghcr.io/hoarder-app/hoarder:release' + restart: unless-stopped + volumes: + - 'data:/data' + environment: + - SERVICE_FQDN_HOARDER + - NEXTAUTH_SECRET=${SERVICE_PASSWORD_HOARDERNEXTAUTH} + - MEILI_MASTER_KEY=${SERVICE_PASSWORD_MEILI} + - NEXTAUTH_URL=${SERVICE_FQDN_HOARDER} + - MEILI_ADDR=http://meilisearch:7700 + - BROWSER_WEB_URL=http://chrome:9222 + - DATA_DIR=/data + chrome: + image: 'gcr.io/zenika-hub/alpine-chrome:124' + restart: unless-stopped + command: + - '--no-sandbox' + - '--disable-gpu' + - '--disable-dev-shm-usage' + - '--remote-debugging-address=0.0.0.0' + - '--remote-debugging-port=9222' + - '--hide-scrollbars' + meilisearch: + image: 'getmeili/meilisearch:v1.6' + restart: unless-stopped + environment: + - MEILI_NO_ANALYTICS=true + - NEXTAUTH_SECRET=${SERVICE_PASSWORD_HOARDERNEXTAUTH} + - MEILI_MASTER_KEY=${SERVICE_PASSWORD_MEILI} + - NEXTAUTH_URL=${SERVICE_FQDN_HOARDER} + volumes: + - 'meilisearch:/meili_data' From c6d0abc0964e6932abf00f8be55857b043c35a71 Mon Sep 17 00:00:00 2001 From: barredterra <14891507+barredterra@users.noreply.github.com> Date: Wed, 6 Nov 2024 00:21:40 +0100 Subject: [PATCH 16/48] feat: add template for Wiki.js --- public/svgs/wikijs.svg | 119 ++++++++++++++++++++++++++++++++++ templates/compose/wikijs.yaml | 43 ++++++++++++ 2 files changed, 162 insertions(+) create mode 100644 public/svgs/wikijs.svg create mode 100644 templates/compose/wikijs.yaml diff --git a/public/svgs/wikijs.svg b/public/svgs/wikijs.svg new file mode 100644 index 000000000..52c4a790b --- /dev/null +++ b/public/svgs/wikijs.svg @@ -0,0 +1,119 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/templates/compose/wikijs.yaml b/templates/compose/wikijs.yaml new file mode 100644 index 000000000..d6d41d334 --- /dev/null +++ b/templates/compose/wikijs.yaml @@ -0,0 +1,43 @@ +# documentation: https://docs.requarks.io +# slogan: The most powerful and extensible open source Wiki software. +# tags: wiki, collaboration, documentation +# logo: svgs/wikijs.svg +# port: 80 + +version: "3" +services: + db: + image: postgres:15-alpine + environment: + POSTGRES_DB: wiki + POSTGRES_PASSWORD: ${SERVICE_PASSWORD_POSTGRES} + POSTGRES_USER: ${SERVICE_USER_POSTGRES} + healthcheck: + test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] + interval: 5s + timeout: 20s + retries: 10 + logging: + driver: "none" + restart: unless-stopped + volumes: + - db-data:/var/lib/postgresql/data + + wiki: + image: ghcr.io/requarks/wiki:2 + depends_on: + - db + environment: + DB_TYPE: postgres + DB_HOST: db + DB_PORT: 5432 + DB_USER: ${SERVICE_USER_POSTGRES} + DB_PASS: ${SERVICE_PASSWORD_POSTGRES} + DB_NAME: wiki + SERVICE_FQDN_WIKI_3000: + healthcheck: + test: curl --fail http://localhost:3000 || exit 1 + restart: unless-stopped + +volumes: + db-data: From addc72040923f1677e156d7a7a69da9115f9ee9a Mon Sep 17 00:00:00 2001 From: Alex Serban Date: Fri, 8 Nov 2024 00:18:54 +0200 Subject: [PATCH 17/48] Listmonk v4.1 doesnt need hardcoded admin password anymore. It notifies user to remove them --- templates/compose/listmonk.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/templates/compose/listmonk.yaml b/templates/compose/listmonk.yaml index faa70fce5..b5b285131 100644 --- a/templates/compose/listmonk.yaml +++ b/templates/compose/listmonk.yaml @@ -15,8 +15,6 @@ services: - LISTMONK_db__user=$SERVICE_USER_POSTGRES - LISTMONK_db__password=$SERVICE_PASSWORD_POSTGRES - LISTMONK_db__port=5432 - - LISTMONK_app__admin_username=admin - - LISTMONK_app__admin_password=$SERVICE_PASSWORD_ADMIN - TZ=Etc/UTC volumes: - "listmonk-data:/listmonk/uploads" From af057f9e0ebc9d7262c6bd53e41a72276223346c Mon Sep 17 00:00:00 2001 From: "Alexandru (The) Serban" Date: Fri, 8 Nov 2024 05:27:05 +0200 Subject: [PATCH 18/48] Postiz One click app The one click setup for open source social media scheduler postiz --- public/svgs/postiz.svg | 13 +++ templates/compose/postiz.yaml | 164 ++++++++++++++++++++++++---------- 2 files changed, 130 insertions(+), 47 deletions(-) create mode 100644 public/svgs/postiz.svg diff --git a/public/svgs/postiz.svg b/public/svgs/postiz.svg new file mode 100644 index 000000000..6e3baa813 --- /dev/null +++ b/public/svgs/postiz.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/templates/compose/postiz.yaml b/templates/compose/postiz.yaml index 8d199fde9..94e18891d 100644 --- a/templates/compose/postiz.yaml +++ b/templates/compose/postiz.yaml @@ -1,59 +1,129 @@ -# ignore: true -# documentation: https://docs.postiz.com/introduction -# slogan: -# tags: -# logo: -# port: 4200 +# documentation: https://docs.postiz.com +# slogan: Social media scheduling tool. +# tags: post everywhere, social media, planning +# logo: svgs/postiz.svg +version: "3.8" services: postiz: image: "ghcr.io/gitroomhq/postiz-app:latest" + container_name: postiz + restart: always environment: - - SERVICE_FQDN_POSTIZ_4200 - - MAIN_URL=${SERVICE_FQDN_POSTIZ} - - FRONTEND_URL=${SERVICE_FQDN_POSTIZ} - - NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZAPI_3000} - - JWT_SECRET=${SERVICE_REALBASE64_JWTSECRET} - - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB:-postiz}?schema=public - - REDIS_URL=redis://redis:6379 - - BACKEND_INTERNAL_URL=http://localhost:3000/ + - SERVICE_FQDN_POSTIZ_5000 + - "MAIN_URL=${SERVICE_FQDN_POSTIZ}" + - "FRONTEND_URL=${SERVICE_FQDN_POSTIZ}" + - "NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZ}/api" + - "JWT_SECRET=${SERVICE_PASSWORD_JWTSECRET}" + - "DATABASE_URL=postgresql://postiz-user:postiz-password@postiz-postgres:5432/postiz-db-local" + - "REDIS_URL=redis://postiz-redis:6379" + - "BACKEND_INTERNAL_URL=http://localhost:3000" - IS_GENERAL=true - - CLOUDFLARE_ACCOUNT_ID=${CLOUDFLARE_ACCOUNT_ID} - - CLOUDFLARE_ACCESS_KEY=${CLOUDFLARE_ACCESS_KEY} - - CLOUDFLARE_SECRET_ACCESS_KEY=${CLOUDFLARE_SECRET_ACCESS_KEY} - - CLOUDFLARE_BUCKETNAME=${CLOUDFLARE_BUCKETNAME} - - CLOUDFLARE_BUCKET_URL=${CLOUDFLARE_BUCKET_URL} - - CLOUDFLARE_REGION=${CLOUDFLARE_REGION} - - RESEND_API_KEY=${RESEND_API_KEY} - - EMAIL_FROM_ADDRESS=${EMAIL_FROM_ADDRESS} - - EMAIL_FROM_NAME=${EMAIL_FROM_NAME} + - STORAGE_PROVIDER=local + - UPLOAD_DIRECTORY=/uploads + - NEXT_PUBLIC_UPLOAD_DIRECTORY=/uploads + - "X_API_KEY=${SERVICE_X_API}" + - "X_API_SECRET=${SERVICE_X_SECRET}" + - "REDDIT_CLIENT_ID=${SERVICE_REDDIT_API}" + - "REDDIT_CLIENT_SECRET=${SERVICE_REDDIT_SECRET}" + - "TIKTOK_CLIENT_ID=${SERVICE_TIKTOK_ID}" + - "TIKTOK_CLIENT_SECRET=${SERVICE_TIKTOK_SECRET}" + - "SLACK_ID=${SERVICE_SLACK_ID}" + - "SLACK_SECRET=${SERVICE_SLACK_SECRET}" + - "PINTEREST_CLIENT_ID=${SERVICE_PINTEREST_ID}" + - "PINTEREST_CLIENT_SECRET=${SERVICE_PINTEREST_SECRET}" + - "DRIBBLE_CLIENT_ID=${SERVICE_DRIBBLE_ID}" + - "DRIBBLE_CLIENT_SECRET=${SERVICE_DRIBBLE_SECRET}" + - "DISCORD_CLIENT_ID=${SERVICE_DISCORD_ID}" + - "DISCORD_CLIENT_SECRET=${SERVICE_DISCORD_SECRET}" + - "DISCORD_BOT_TOKEN_ID=${SERVICE_DISCORD_TOKEN}" + - "YOUTUBE_CLIENT_ID=${SERVICE_YOUTUBE_ID}" + - "YOUTUBE_CLIENT_SECRET=${SERVICE_YOUTUBE_SECRET}" + - "MASTODON_CLIENT_ID=${SERVICE_MASTODON_ID}" + - "MASTODON_CLIENT_SECRET=${SERVICE_MASTODON_SECRET}" + - "LINKEDIN_CLIENT_ID=${SERVICE_LINKEDIN_ID}" + - "LINKEDIN_CLIENT_SECRET=${SERVICE_LINKEDIN_SECRET}" + - "INSTAGRAM_APP_ID=${SERVICE_INSTAGRAM_ID}" + - "INSTAGRAM_APP_SECRET=${SERVICE_INSTAGRAM_SECRET}" + - "FACEBOOK_APP_ID=${SERVICE_FACEBOOK_ID}" + - "FACEBOOK_APP_SECRET=${SERVICE_FACEBOOK_SECRET}" + - "THREADS_APP_ID=${SERVICE_THREADS_ID}" + - "THREADS_APP_SECRET=${SERVICE_THREADS_SECRET}" + - "GITHUB_CLIENT_ID=${SERVICE_GITHUB_ID}" + - "GITHUB_CLIENT_SECRET=${SERVICE_GITHUB_SECRET}" + - "BEEHIIVE_API_KEY=${SERVICE_BEEHIIVE_KEY}" + - "BEEHIIVE_PUBLICATION_ID=${SERVICE_BEEHIIVE_PUBID}" + - "OPENAI_API_KEY=${SERVICE_OPENAI_KEY}" + + volumes: + - "postiz-config:/config/" + - "postiz-uploads:/uploads/" + ports: + - "5000:5000" + networks: + - postiz-network + labels: + - traefik.enable=true + - "traefik.http.routers.postiz.rule=Host(your.url) && PathPrefix(/)" + - traefik.http.routers.postiz.entryPoints=http + - traefik.http.routers.postiz.tls=true + - traefik.http.routers.postiz.tls.certresolver=letsencrypt + - traefik.http.services.postiz.loadbalancer.server.port=5000 depends_on: - postgres: - condition: service_healthy - redis: - condition: service_started - volumes: - - "postiz_config:/config" - postgres: - image: "postgres:latest" + - postiz-postgres + - postiz-redis + postiz-postgres: + image: "postgres:14.5" + container_name: postiz-postgres + restart: always environment: - - POSTGRES_DB=${POSTGRES_DB:-postiz} - - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES} - - POSTGRES_USER=${SERVICE_USER_POSTGRES} - - POSTGRES_PORT=${POSTGRES_PORT:-5432} + - POSTGRES_PASSWORD=postiz-password + - POSTGRES_USER=postiz-user + - POSTGRES_DB=postiz-db-local volumes: - - "pg-data:/var/lib/postgresql/data" + - "postgres-volume:/var/lib/postgresql/data" + ports: + - "5432:5432" + networks: + - postiz-network healthcheck: - test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] - interval: 5s - timeout: 20s - retries: 10 - redis: + test: + - CMD + - pg_isready + - "-U" + - postiz-user + - "-d" + - postiz-db-local + interval: 10s + timeout: 3s + retries: 3 + postiz-redis: image: "redis:7.2" - volumes: - - "redis_data:/data" + container_name: postiz-redis + restart: always + ports: + - "6379:6379" healthcheck: - test: ["CMD", "redis-cli", "ping"] - interval: 5s - timeout: 20s - retries: 10 + test: + - CMD + - redis-cli + - ping + interval: 10s + timeout: 3s + retries: 3 + volumes: + - "postiz-redis-data:/data" + networks: + - postiz-network +volumes: + postgres-volume: + external: false + postiz-redis-data: + external: false + postiz-config: + external: false + postiz-uploads: + external: false +networks: + postiz-network: + external: false From 5307f3b9d2e6b71a6f6eb5672cd14df63694ea64 Mon Sep 17 00:00:00 2001 From: "Alexandru (The) Serban" Date: Fri, 8 Nov 2024 05:39:47 +0200 Subject: [PATCH 19/48] Postiz One Click Made Postiz work, added logo and informations about it. It requires https:// --- public/svgs/postiz.svg | 13 +++ templates/compose/postiz.yaml | 163 ++++++++++++++++++++++++---------- 2 files changed, 129 insertions(+), 47 deletions(-) create mode 100644 public/svgs/postiz.svg diff --git a/public/svgs/postiz.svg b/public/svgs/postiz.svg new file mode 100644 index 000000000..6e3baa813 --- /dev/null +++ b/public/svgs/postiz.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/templates/compose/postiz.yaml b/templates/compose/postiz.yaml index 8d199fde9..e79ba0023 100644 --- a/templates/compose/postiz.yaml +++ b/templates/compose/postiz.yaml @@ -1,59 +1,128 @@ -# ignore: true -# documentation: https://docs.postiz.com/introduction -# slogan: -# tags: -# logo: -# port: 4200 +# documentation: https://docs.postiz.com +# slogan: Open source social media scheduling tool. +# tags: post everywhere, social media, planning +# logo: svgs/postiz.svg +version: "3.8" services: postiz: image: "ghcr.io/gitroomhq/postiz-app:latest" + container_name: postiz + restart: always environment: - - SERVICE_FQDN_POSTIZ_4200 - - MAIN_URL=${SERVICE_FQDN_POSTIZ} - - FRONTEND_URL=${SERVICE_FQDN_POSTIZ} - - NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZAPI_3000} - - JWT_SECRET=${SERVICE_REALBASE64_JWTSECRET} - - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB:-postiz}?schema=public - - REDIS_URL=redis://redis:6379 - - BACKEND_INTERNAL_URL=http://localhost:3000/ + - SERVICE_FQDN_POSTIZ_5000 + - "MAIN_URL=${SERVICE_FQDN_POSTIZ}" + - "FRONTEND_URL=${SERVICE_FQDN_POSTIZ}" + - "NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZ}/api" + - "JWT_SECRET=${SERVICE_PASSWORD_JWTSECRET}" + - "DATABASE_URL=postgresql://postiz-user:postiz-password@postiz-postgres:5432/postiz-db-local" + - "REDIS_URL=redis://postiz-redis:6379" + - "BACKEND_INTERNAL_URL=http://localhost:3000" - IS_GENERAL=true - - CLOUDFLARE_ACCOUNT_ID=${CLOUDFLARE_ACCOUNT_ID} - - CLOUDFLARE_ACCESS_KEY=${CLOUDFLARE_ACCESS_KEY} - - CLOUDFLARE_SECRET_ACCESS_KEY=${CLOUDFLARE_SECRET_ACCESS_KEY} - - CLOUDFLARE_BUCKETNAME=${CLOUDFLARE_BUCKETNAME} - - CLOUDFLARE_BUCKET_URL=${CLOUDFLARE_BUCKET_URL} - - CLOUDFLARE_REGION=${CLOUDFLARE_REGION} - - RESEND_API_KEY=${RESEND_API_KEY} - - EMAIL_FROM_ADDRESS=${EMAIL_FROM_ADDRESS} - - EMAIL_FROM_NAME=${EMAIL_FROM_NAME} + - STORAGE_PROVIDER=local + - UPLOAD_DIRECTORY=/uploads + - NEXT_PUBLIC_UPLOAD_DIRECTORY=/uploads + - "X_API_KEY=${SERVICE_X_API}" + - "X_API_SECRET=${SERVICE_X_SECRET}" + - "REDDIT_CLIENT_ID=${SERVICE_REDDIT_API}" + - "REDDIT_CLIENT_SECRET=${SERVICE_REDDIT_SECRET}" + - "TIKTOK_CLIENT_ID=${SERVICE_TIKTOK_ID}" + - "TIKTOK_CLIENT_SECRET=${SERVICE_TIKTOK_SECRET}" + - "SLACK_ID=${SERVICE_SLACK_ID}" + - "SLACK_SECRET=${SERVICE_SLACK_SECRET}" + - "PINTEREST_CLIENT_ID=${SERVICE_PINTEREST_ID}" + - "PINTEREST_CLIENT_SECRET=${SERVICE_PINTEREST_SECRET}" + - "DRIBBLE_CLIENT_ID=${SERVICE_DRIBBLE_ID}" + - "DRIBBLE_CLIENT_SECRET=${SERVICE_DRIBBLE_SECRET}" + - "DISCORD_CLIENT_ID=${SERVICE_DISCORD_ID}" + - "DISCORD_CLIENT_SECRET=${SERVICE_DISCORD_SECRET}" + - "DISCORD_BOT_TOKEN_ID=${SERVICE_DISCORD_TOKEN}" + - "YOUTUBE_CLIENT_ID=${SERVICE_YOUTUBE_ID}" + - "YOUTUBE_CLIENT_SECRET=${SERVICE_YOUTUBE_SECRET}" + - "MASTODON_CLIENT_ID=${SERVICE_MASTODON_ID}" + - "MASTODON_CLIENT_SECRET=${SERVICE_MASTODON_SECRET}" + - "LINKEDIN_CLIENT_ID=${SERVICE_LINKEDIN_ID}" + - "LINKEDIN_CLIENT_SECRET=${SERVICE_LINKEDIN_SECRET}" + - "INSTAGRAM_APP_ID=${SERVICE_INSTAGRAM_ID}" + - "INSTAGRAM_APP_SECRET=${SERVICE_INSTAGRAM_SECRET}" + - "FACEBOOK_APP_ID=${SERVICE_FACEBOOK_ID}" + - "FACEBOOK_APP_SECRET=${SERVICE_FACEBOOK_SECRET}" + - "THREADS_APP_ID=${SERVICE_THREADS_ID}" + - "THREADS_APP_SECRET=${SERVICE_THREADS_SECRET}" + - "GITHUB_CLIENT_ID=${SERVICE_GITHUB_ID}" + - "GITHUB_CLIENT_SECRET=${SERVICE_GITHUB_SECRET}" + - "BEEHIIVE_API_KEY=${SERVICE_BEEHIIVE_KEY}" + - "BEEHIIVE_PUBLICATION_ID=${SERVICE_BEEHIIVE_PUBID}" + - "OPENAI_API_KEY=${SERVICE_OPENAI_KEY}" + volumes: + - "postiz-config:/config/" + - "postiz-uploads:/uploads/" + ports: + - "5000:5000" + networks: + - postiz-network + labels: + - traefik.enable=true + - "traefik.http.routers.postiz.rule=Host(your.url) && PathPrefix(/)" + - traefik.http.routers.postiz.entryPoints=http + - traefik.http.routers.postiz.tls=true + - traefik.http.routers.postiz.tls.certresolver=letsencrypt + - traefik.http.services.postiz.loadbalancer.server.port=5000 depends_on: - postgres: - condition: service_healthy - redis: - condition: service_started - volumes: - - "postiz_config:/config" - postgres: - image: "postgres:latest" + - postiz-postgres + - postiz-redis + postiz-postgres: + image: "postgres:14.5" + container_name: postiz-postgres + restart: always environment: - - POSTGRES_DB=${POSTGRES_DB:-postiz} - - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES} - - POSTGRES_USER=${SERVICE_USER_POSTGRES} - - POSTGRES_PORT=${POSTGRES_PORT:-5432} + - POSTGRES_PASSWORD=postiz-password + - POSTGRES_USER=postiz-user + - POSTGRES_DB=postiz-db-local volumes: - - "pg-data:/var/lib/postgresql/data" + - "postgres-volume:/var/lib/postgresql/data" + ports: + - "5432:5432" + networks: + - postiz-network healthcheck: - test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] - interval: 5s - timeout: 20s - retries: 10 - redis: + test: + - CMD + - pg_isready + - "-U" + - postiz-user + - "-d" + - postiz-db-local + interval: 10s + timeout: 3s + retries: 3 + postiz-redis: image: "redis:7.2" - volumes: - - "redis_data:/data" + container_name: postiz-redis + restart: always + ports: + - "6379:6379" healthcheck: - test: ["CMD", "redis-cli", "ping"] - interval: 5s - timeout: 20s - retries: 10 + test: + - CMD + - redis-cli + - ping + interval: 10s + timeout: 3s + retries: 3 + volumes: + - "postiz-redis-data:/data" + networks: + - postiz-network +volumes: + postgres-volume: + external: false + postiz-redis-data: + external: false + postiz-config: + external: false + postiz-uploads: + external: false +networks: + postiz-network: + external: false From bbaba5f998e9147197eedc099348e7e01054f9d0 Mon Sep 17 00:00:00 2001 From: Adrian Barrio Date: Fri, 8 Nov 2024 08:11:31 +0100 Subject: [PATCH 20/48] feat: add Firefox template --- public/svgs/firefox.svg | 1 + templates/compose/firefox.yaml | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 public/svgs/firefox.svg create mode 100644 templates/compose/firefox.yaml diff --git a/public/svgs/firefox.svg b/public/svgs/firefox.svg new file mode 100644 index 000000000..9a6371d47 --- /dev/null +++ b/public/svgs/firefox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/templates/compose/firefox.yaml b/templates/compose/firefox.yaml new file mode 100644 index 000000000..1213c439d --- /dev/null +++ b/templates/compose/firefox.yaml @@ -0,0 +1,23 @@ +# documentation: https://github.com/jlesage/docker-firefox +# slogan: Fast, private, and self-hosted secure browser for browsing without limits. +# tags: browser, web, privacy +# logo: svgs/firefox.svg +# port: 5800 + +services: + firefox: + image: jlesage/firefox + environment: + - SERVICE_FQDN_FIREFOX_5800 + volumes: + - config:/config + healthcheck: + test: + - CMD + - wget + - "-q" + - "--spider" + - "http://127.0.0.1:5800/" + interval: 5s + timeout: 20s + retries: 10 From a844999e238893ad4085716af8d8eb6508045b93 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 11:24:26 +0100 Subject: [PATCH 21/48] fix readeck --- templates/compose/readeck.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/compose/readeck.yaml b/templates/compose/readeck.yaml index 2a4907974..0d65b9ced 100644 --- a/templates/compose/readeck.yaml +++ b/templates/compose/readeck.yaml @@ -6,12 +6,12 @@ services: readeck: - image: 'codeberg.org/readeck/readeck:latest' + image: codeberg.org/readeck/readeck:latest environment: - SERVICE_FQDN_READECK - - READECK_USE_X_FORWARDED=true + - READECK_USE_X_FORWARDED=${READECK_USE_X_FORWARDED:-true} volumes: - - 'readeck-data:/readeck' + - readeck_data:/readeck healthcheck: test: - CMD From a6a8fd144ad94ec89c5a2dd0887e6188b43dc610 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 13:37:13 +0100 Subject: [PATCH 22/48] fix firefox --- templates/compose/firefox.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/compose/firefox.yaml b/templates/compose/firefox.yaml index 1213c439d..ac6498726 100644 --- a/templates/compose/firefox.yaml +++ b/templates/compose/firefox.yaml @@ -10,7 +10,7 @@ services: environment: - SERVICE_FQDN_FIREFOX_5800 volumes: - - config:/config + - firefox_config:/config healthcheck: test: - CMD From 6854ed42a1deffe9576eaa1414f8fa7df71b7f4c Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:07:01 +0100 Subject: [PATCH 23/48] fix postiz --- templates/compose/postiz.yaml | 180 ++++++++++++++-------------------- 1 file changed, 73 insertions(+), 107 deletions(-) diff --git a/templates/compose/postiz.yaml b/templates/compose/postiz.yaml index e79ba0023..53d504832 100644 --- a/templates/compose/postiz.yaml +++ b/templates/compose/postiz.yaml @@ -2,127 +2,93 @@ # slogan: Open source social media scheduling tool. # tags: post everywhere, social media, planning # logo: svgs/postiz.svg +# port: 5000 -version: "3.8" services: postiz: - image: "ghcr.io/gitroomhq/postiz-app:latest" - container_name: postiz - restart: always + image: ghcr.io/gitroomhq/postiz-app:latest environment: - SERVICE_FQDN_POSTIZ_5000 - - "MAIN_URL=${SERVICE_FQDN_POSTIZ}" - - "FRONTEND_URL=${SERVICE_FQDN_POSTIZ}" - - "NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZ}/api" - - "JWT_SECRET=${SERVICE_PASSWORD_JWTSECRET}" - - "DATABASE_URL=postgresql://postiz-user:postiz-password@postiz-postgres:5432/postiz-db-local" - - "REDIS_URL=redis://postiz-redis:6379" - - "BACKEND_INTERNAL_URL=http://localhost:3000" + - MAIN_URL=${SERVICE_FQDN_POSTIZ_5000} + - FRONTEND_URL=${SERVICE_FQDN_POSTIZ_5000} + - NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZ_5000}/api + - JWT_SECRET=${SERVICE_PASSWORD_JWTSECRET} + - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRESQL}:${SERVICE_PASSWORD_POSTGRESQL}@postgresql:5432/${POSTGRESQL_DATABASE:-postiz-db} + - REDIS_URL=redis://postiz-redis:6379 + - BACKEND_INTERNAL_URL=http://localhost:3000 - IS_GENERAL=true - STORAGE_PROVIDER=local - UPLOAD_DIRECTORY=/uploads - NEXT_PUBLIC_UPLOAD_DIRECTORY=/uploads - - "X_API_KEY=${SERVICE_X_API}" - - "X_API_SECRET=${SERVICE_X_SECRET}" - - "REDDIT_CLIENT_ID=${SERVICE_REDDIT_API}" - - "REDDIT_CLIENT_SECRET=${SERVICE_REDDIT_SECRET}" - - "TIKTOK_CLIENT_ID=${SERVICE_TIKTOK_ID}" - - "TIKTOK_CLIENT_SECRET=${SERVICE_TIKTOK_SECRET}" - - "SLACK_ID=${SERVICE_SLACK_ID}" - - "SLACK_SECRET=${SERVICE_SLACK_SECRET}" - - "PINTEREST_CLIENT_ID=${SERVICE_PINTEREST_ID}" - - "PINTEREST_CLIENT_SECRET=${SERVICE_PINTEREST_SECRET}" - - "DRIBBLE_CLIENT_ID=${SERVICE_DRIBBLE_ID}" - - "DRIBBLE_CLIENT_SECRET=${SERVICE_DRIBBLE_SECRET}" - - "DISCORD_CLIENT_ID=${SERVICE_DISCORD_ID}" - - "DISCORD_CLIENT_SECRET=${SERVICE_DISCORD_SECRET}" - - "DISCORD_BOT_TOKEN_ID=${SERVICE_DISCORD_TOKEN}" - - "YOUTUBE_CLIENT_ID=${SERVICE_YOUTUBE_ID}" - - "YOUTUBE_CLIENT_SECRET=${SERVICE_YOUTUBE_SECRET}" - - "MASTODON_CLIENT_ID=${SERVICE_MASTODON_ID}" - - "MASTODON_CLIENT_SECRET=${SERVICE_MASTODON_SECRET}" - - "LINKEDIN_CLIENT_ID=${SERVICE_LINKEDIN_ID}" - - "LINKEDIN_CLIENT_SECRET=${SERVICE_LINKEDIN_SECRET}" - - "INSTAGRAM_APP_ID=${SERVICE_INSTAGRAM_ID}" - - "INSTAGRAM_APP_SECRET=${SERVICE_INSTAGRAM_SECRET}" - - "FACEBOOK_APP_ID=${SERVICE_FACEBOOK_ID}" - - "FACEBOOK_APP_SECRET=${SERVICE_FACEBOOK_SECRET}" - - "THREADS_APP_ID=${SERVICE_THREADS_ID}" - - "THREADS_APP_SECRET=${SERVICE_THREADS_SECRET}" - - "GITHUB_CLIENT_ID=${SERVICE_GITHUB_ID}" - - "GITHUB_CLIENT_SECRET=${SERVICE_GITHUB_SECRET}" - - "BEEHIIVE_API_KEY=${SERVICE_BEEHIIVE_KEY}" - - "BEEHIIVE_PUBLICATION_ID=${SERVICE_BEEHIIVE_PUBID}" - - "OPENAI_API_KEY=${SERVICE_OPENAI_KEY}" + - X_API_KEY=${SERVICE_X_API} + - X_API_SECRET=${SERVICE_X_SECRET} + - REDDIT_CLIENT_ID=${SERVICE_REDDIT_API} + - REDDIT_CLIENT_SECRET=${SERVICE_REDDIT_SECRET} + - TIKTOK_CLIENT_ID=${SERVICE_TIKTOK_ID} + - TIKTOK_CLIENT_SECRET=${SERVICE_TIKTOK_SECRET} + - SLACK_ID=${SERVICE_SLACK_ID} + - SLACK_SECRET=${SERVICE_SLACK_SECRET} + - PINTEREST_CLIENT_ID=${SERVICE_PINTEREST_ID} + - PINTEREST_CLIENT_SECRET=${SERVICE_PINTEREST_SECRET} + - DRIBBLE_CLIENT_ID=${SERVICE_DRIBBLE_ID} + - DRIBBLE_CLIENT_SECRET=${SERVICE_DRIBBLE_SECRET} + - DISCORD_CLIENT_ID=${SERVICE_DISCORD_ID} + - DISCORD_CLIENT_SECRET=${SERVICE_DISCORD_SECRET} + - DISCORD_BOT_TOKEN_ID=${SERVICE_DISCORD_TOKEN} + - YOUTUBE_CLIENT_ID=${SERVICE_YOUTUBE_ID} + - YOUTUBE_CLIENT_SECRET=${SERVICE_YOUTUBE_SECRET} + - MASTODON_CLIENT_ID=${SERVICE_MASTODON_ID} + - MASTODON_CLIENT_SECRET=${SERVICE_MASTODON_SECRET} + - LINKEDIN_CLIENT_ID=${SERVICE_LINKEDIN_ID} + - LINKEDIN_CLIENT_SECRET=${SERVICE_LINKEDIN_SECRET} + - INSTAGRAM_APP_ID=${SERVICE_INSTAGRAM_ID} + - INSTAGRAM_APP_SECRET=${SERVICE_INSTAGRAM_SECRET} + - FACEBOOK_APP_ID=${SERVICE_FACEBOOK_ID} + - FACEBOOK_APP_SECRET=${SERVICE_FACEBOOK_SECRET} + - THREADS_APP_ID=${SERVICE_THREADS_ID} + - THREADS_APP_SECRET=${SERVICE_THREADS_SECRET} + - GITHUB_CLIENT_ID=${SERVICE_GITHUB_ID} + - GITHUB_CLIENT_SECRET=${SERVICE_GITHUB_SECRET} + - BEEHIIVE_API_KEY=${SERVICE_BEEHIIVE_KEY} + - BEEHIIVE_PUBLICATION_ID=${SERVICE_BEEHIIVE_PUBID} + - OPENAI_API_KEY=${SERVICE_OPENAI_KEY} volumes: - - "postiz-config:/config/" - - "postiz-uploads:/uploads/" - ports: - - "5000:5000" - networks: - - postiz-network - labels: - - traefik.enable=true - - "traefik.http.routers.postiz.rule=Host(your.url) && PathPrefix(/)" - - traefik.http.routers.postiz.entryPoints=http - - traefik.http.routers.postiz.tls=true - - traefik.http.routers.postiz.tls.certresolver=letsencrypt - - traefik.http.services.postiz.loadbalancer.server.port=5000 + - postiz-config:/config/ + - postiz-uploads:/uploads/ depends_on: - - postiz-postgres - - postiz-redis - postiz-postgres: - image: "postgres:14.5" - container_name: postiz-postgres - restart: always - environment: - - POSTGRES_PASSWORD=postiz-password - - POSTGRES_USER=postiz-user - - POSTGRES_DB=postiz-db-local - volumes: - - "postgres-volume:/var/lib/postgresql/data" - ports: - - "5432:5432" - networks: - - postiz-network + postiz-postgres: + condition: service_healthy + postiz-redis: + condition: service_healthy healthcheck: - test: - - CMD - - pg_isready - - "-U" - - postiz-user - - "-d" - - postiz-db-local - interval: 10s - timeout: 3s - retries: 3 + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:5000/"] + interval: 5s + timeout: 20s + retries: 10 + + postiz-postgres: + image: postgres:14.5 + volumes: + - postiz-postgresql-data:/var/lib/postgresql/data + environment: + - POSTGRES_USER=${SERVICE_USER_POSTGRESQL} + - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL} + - POSTGRES_DB=${POSTGRESQL_DATABASE:-postiz-db} + healthcheck: + test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] + interval: 5s + timeout: 20s + retries: 10 + postiz-redis: - image: "redis:7.2" - container_name: postiz-redis - restart: always - ports: - - "6379:6379" + image: redis:7.2 + volumes: + - postiz-redis-data:/data healthcheck: test: - CMD - redis-cli - - ping - interval: 10s - timeout: 3s - retries: 3 - volumes: - - "postiz-redis-data:/data" - networks: - - postiz-network -volumes: - postgres-volume: - external: false - postiz-redis-data: - external: false - postiz-config: - external: false - postiz-uploads: - external: false -networks: - postiz-network: - external: false + - PING + interval: 5s + timeout: 10s + retries: 20 From 0e1e2f905e6a6e684f443d893316179798a2c27c Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:11:33 +0100 Subject: [PATCH 24/48] disable postiz still not working --- templates/compose/postiz.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/templates/compose/postiz.yaml b/templates/compose/postiz.yaml index 53d504832..0fb93c187 100644 --- a/templates/compose/postiz.yaml +++ b/templates/compose/postiz.yaml @@ -1,3 +1,4 @@ +# ignore: true # documentation: https://docs.postiz.com # slogan: Open source social media scheduling tool. # tags: post everywhere, social media, planning From 84e889627f4d2fd0ab9b1a4f724353fa5e9c327b Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:29:39 +0100 Subject: [PATCH 25/48] fix wikijs --- templates/compose/wikijs.yaml | 50 +++++++++++++++-------------------- 1 file changed, 22 insertions(+), 28 deletions(-) diff --git a/templates/compose/wikijs.yaml b/templates/compose/wikijs.yaml index d6d41d334..e59ace74d 100644 --- a/templates/compose/wikijs.yaml +++ b/templates/compose/wikijs.yaml @@ -4,40 +4,34 @@ # logo: svgs/wikijs.svg # port: 80 -version: "3" services: - db: - image: postgres:15-alpine + wikijs: + image: ghcr.io/requarks/wiki:2 + depends_on: + - postgres environment: - POSTGRES_DB: wiki - POSTGRES_PASSWORD: ${SERVICE_PASSWORD_POSTGRES} - POSTGRES_USER: ${SERVICE_USER_POSTGRES} + - SERVICE_FQDN_WIKIJS_3000 + - DB_TYPE=postgres + - DB_HOST=postgres + - DB_PORT=5432 + - DB_USER=${SERVICE_USER_POSTGRES} + - DB_PASS=${SERVICE_PASSWORD_POSTGRES} + - DB_NAME=${POSTGRESQL_DATABASE:-wiki-db} + healthcheck: + test: curl --fail http://localhost:3000 || exit 1 + + postgres: + image: postgres:16-alpine + environment: + - POSTGRES_DB=${POSTGRESQL_DATABASE:-wiki-db} + - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES} + - POSTGRES_USER=${SERVICE_USER_POSTGRES} healthcheck: test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] interval: 5s timeout: 20s retries: 10 logging: - driver: "none" - restart: unless-stopped + driver: none volumes: - - db-data:/var/lib/postgresql/data - - wiki: - image: ghcr.io/requarks/wiki:2 - depends_on: - - db - environment: - DB_TYPE: postgres - DB_HOST: db - DB_PORT: 5432 - DB_USER: ${SERVICE_USER_POSTGRES} - DB_PASS: ${SERVICE_PASSWORD_POSTGRES} - DB_NAME: wiki - SERVICE_FQDN_WIKI_3000: - healthcheck: - test: curl --fail http://localhost:3000 || exit 1 - restart: unless-stopped - -volumes: - db-data: + - wikijs-postgresql-data:/var/lib/postgresql/data From 47215ef96ae40fa8caa4f21c3ac67f5cd9e251ed Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:44:57 +0100 Subject: [PATCH 26/48] fix hoader --- templates/compose/hoarder.yaml | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/templates/compose/hoarder.yaml b/templates/compose/hoarder.yaml index c58b8a82e..89002d759 100644 --- a/templates/compose/hoarder.yaml +++ b/templates/compose/hoarder.yaml @@ -6,10 +6,9 @@ services: web: - image: 'ghcr.io/hoarder-app/hoarder:release' - restart: unless-stopped + image: ghcr.io/hoarder-app/hoarder:release volumes: - - 'data:/data' + - hoarder-data:/data environment: - SERVICE_FQDN_HOARDER - NEXTAUTH_SECRET=${SERVICE_PASSWORD_HOARDERNEXTAUTH} @@ -18,9 +17,9 @@ services: - MEILI_ADDR=http://meilisearch:7700 - BROWSER_WEB_URL=http://chrome:9222 - DATA_DIR=/data + chrome: - image: 'gcr.io/zenika-hub/alpine-chrome:124' - restart: unless-stopped + image: gcr.io/zenika-hub/alpine-chrome:124 command: - '--no-sandbox' - '--disable-gpu' @@ -28,13 +27,18 @@ services: - '--remote-debugging-address=0.0.0.0' - '--remote-debugging-port=9222' - '--hide-scrollbars' + meilisearch: - image: 'getmeili/meilisearch:v1.6' - restart: unless-stopped + image: getmeili/meilisearch:v1.6 environment: - - MEILI_NO_ANALYTICS=true + - MEILI_NO_ANALYTICS=${MEILI_NO_ANALYTICS:-true} - NEXTAUTH_SECRET=${SERVICE_PASSWORD_HOARDERNEXTAUTH} - MEILI_MASTER_KEY=${SERVICE_PASSWORD_MEILI} - NEXTAUTH_URL=${SERVICE_FQDN_HOARDER} volumes: - - 'meilisearch:/meili_data' + - hoarder-meilisearch:/meili_data + healthcheck: + test: ["CMD", "curl", "-f", "http://127.0.0.1:7700/health"] + interval: 2s + timeout: 10s + retries: 15 \ No newline at end of file From 689ec5117583165387f101b60a802f302a9fa1ce Mon Sep 17 00:00:00 2001 From: Markus Ende <19502754+Markus-Ende@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:56:51 +0100 Subject: [PATCH 27/48] fix: define separate volumes for mattermost service template see https://github.com/coollabsio/coolify/issues/4060 --- templates/compose/mattermost.yaml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/templates/compose/mattermost.yaml b/templates/compose/mattermost.yaml index f53e1b499..047be5b8d 100644 --- a/templates/compose/mattermost.yaml +++ b/templates/compose/mattermost.yaml @@ -9,7 +9,12 @@ services: image: mattermost/mattermost-team-edition:release-10 platform: linux/amd64 volumes: - - mattermost-data:/mattermost + - 'mattermost-data-config:/mattermost/config:rw' + - 'mattermost-data-data:/mattermost/data:rw' + - 'mattermost-data-logs:/mattermost/logs:rw' + - 'mattermost-data-plugins:/mattermost/plugins:rw' + - 'mattermost-data-client-plugins:/mattermost/client/plugins:rw' + - 'mattermost-data-bleve-indexes:/mattermost/bleve-indexes:rw' environment: - SERVICE_FQDN_MATTERMOST_8065 - MM_SERVICESETTINGS_SITEURL=${SERVICE_FQDN_MATTERMOST} From 36cea8e53b54071363e83ada25389f01bccc404d Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 18:00:51 +0100 Subject: [PATCH 28/48] fix immich port --- templates/compose/immich.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/compose/immich.yaml b/templates/compose/immich.yaml index b3525cc58..3b98384a2 100644 --- a/templates/compose/immich.yaml +++ b/templates/compose/immich.yaml @@ -14,7 +14,7 @@ services: - immich-uploads:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro environment: - - SERVICE_FQDN_IMMICH_3001 + - SERVICE_FQDN_IMMICH_2283 - UPLOAD_LOCATION=./library - DB_DATA_LOCATION=./postgres - DB_PASSWORD=$SERVICE_PASSWORD_POSTGRES From 4adb05fada6474a4246bbc4cb6002e7b7bc24201 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 20:37:05 +0100 Subject: [PATCH 29/48] fix apprise --- public/svgs/apprise.png | Bin 0 -> 160907 bytes templates/compose/apprise-api.yaml | 8 +++++++- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 public/svgs/apprise.png diff --git a/public/svgs/apprise.png b/public/svgs/apprise.png new file mode 100644 index 0000000000000000000000000000000000000000..aa6824bedb77227de0d7b3d714fc852fc0cdb25c GIT binary patch literal 160907 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

Y}~k!|NQv- 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 literal 0 HcmV?d00001 diff --git a/templates/compose/dashy.yaml b/templates/compose/dashy.yaml index 368f184db..471962b0d 100644 --- a/templates/compose/dashy.yaml +++ b/templates/compose/dashy.yaml @@ -1,3 +1,9 @@ +# documentation: https://dashy.to/docs +# slogan:A self-hostable personal dashboard built for you. Includes status-checking, widgets, themes, icon packs, a UI editor and tons more! +# tags: dashboard, personal, self-hostable +# logo: svgs/dashy.png +# port: 8080 + services: dashy: image: lissy93/dashy @@ -5,9 +11,9 @@ services: - SERVICE_FQDN_DASHY_8080 - PUID=1000 - PGID=1000 - - TZ=UTC + - TZ=${TIMEZONE:-UTC} volumes: - - '/Config/Dashy/conf.yml:/app/public/conf.yml' + - './dashy/conf.yml:/app/public/conf.yml' healthcheck: test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8080/"] interval: 5s From 007e4fcf4389ffbde0b95bf6f413806acf78a4ca Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 20:53:22 +0100 Subject: [PATCH 32/48] fix faraday --- public/svgs/faraday.png | Bin 0 -> 4015 bytes templates/compose/faraday.yaml | 42 ++++++++++++++++++--------------- 2 files changed, 23 insertions(+), 19 deletions(-) create mode 100644 public/svgs/faraday.png diff --git a/public/svgs/faraday.png b/public/svgs/faraday.png new file mode 100644 index 0000000000000000000000000000000000000000..0965efe8f3176e94ab8f6f87360355d458428f79 GIT binary patch literal 4015 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 DyT0{j literal 0 HcmV?d00001 diff --git a/templates/compose/faraday.yaml b/templates/compose/faraday.yaml index c342272c3..7055fc326 100644 --- a/templates/compose/faraday.yaml +++ b/templates/compose/faraday.yaml @@ -1,7 +1,18 @@ +# documentation: https://faradaysec.com/ +# slogan: Faraday is a powerful, open-source, web-based vulnerability management tool. +# tags: vulnerability, management, tool +# logo: svgs/faraday.png +# port: 5985 + services: postgresql: - image: 'postgres:latest' - restart: unless-stopped + image: postgres:latest + volumes: + - faraday-db:/var/lib/postgresql/data + environment: + - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL} + - POSTGRES_USER=${SERVICE_USER_POSTGRESQL} + - POSTGRES_DB=${POSTGRES_DB:-faraday} healthcheck: test: - CMD-SHELL @@ -9,16 +20,11 @@ services: interval: 15s timeout: 10s retries: 15 - volumes: - - 'faraday-db:/var/lib/postgresql/data' - environment: - - 'POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}' - - 'POSTGRES_USER=${SERVICE_USER_POSTGRESQL}' - - 'POSTGRES_DB=${POSTGRES_DB:-faraday}' redis: - image: 'redis:alpine' + image: redis:alpine command: '--save 60 1 --loglevel warning' - restart: unless-stopped + volumes: + - redis:/data healthcheck: test: - CMD-SHELL @@ -26,22 +32,20 @@ services: interval: 15s timeout: 10s retries: 15 - volumes: - - 'redis:/data' + faraday: - image: 'faradaysec/faraday:latest' - restart: always + image: faradaysec/faraday:latest entrypoint: /entrypoint.sh environment: - SERVICE_FQDN_FARADAY_5985 - - 'AUTHENTIK_POSTGRESQL__PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}' - - 'PGSQL_USER=${SERVICE_USER_POSTGRESQL}' - - 'PGSQL_PASSWD=${SERVICE_PASSWORD_POSTGRESQL}' - - 'PGSQL_DBNAME=${POSTGRES_DB}' + - AUTHENTIK_POSTGRESQL__PASSWORD=${SERVICE_PASSWORD_POSTGRESQL} + - PGSQL_USER=${SERVICE_USER_POSTGRESQL} + - PGSQL_PASSWD=${SERVICE_PASSWORD_POSTGRESQL} + - PGSQL_DBNAME=${POSTGRES_DB} - PGSQL_HOST=postgresql - REDIS_SERVER=redis volumes: - - '/faraday:/home/faraday/.faraday:rw' + - faraday:/home/faraday/.faraday:rw depends_on: postgresql: condition: service_healthy From f444a160837d21cf03daedee1baed387d54d40d5 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 20:56:08 +0100 Subject: [PATCH 33/48] fix hoppscotch --- public/svgs/hoppscotch.png | Bin 0 -> 133464 bytes templates/compose/hoppscotch.yaml | 121 ++++++++++++++++-------------- 2 files changed, 64 insertions(+), 57 deletions(-) create mode 100644 public/svgs/hoppscotch.png diff --git a/public/svgs/hoppscotch.png b/public/svgs/hoppscotch.png new file mode 100644 index 0000000000000000000000000000000000000000..84c72843704030c4bfcee076b903bc767012703b GIT binary patch literal 133464 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

sc;94=`^--Y9o6W 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 Date: Fri, 8 Nov 2024 21:00:22 +0100 Subject: [PATCH 34/48] fix portainer --- public/svgs/portainer.png | Bin 0 -> 6956 bytes templates/compose/portainer.yaml | 8 +++++++- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 public/svgs/portainer.png diff --git a/public/svgs/portainer.png b/public/svgs/portainer.png new file mode 100644 index 0000000000000000000000000000000000000000..2a4010f1710b6f5038589f409c22fa380fdddf60 GIT binary patch literal 6956 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 Date: Fri, 8 Nov 2024 21:06:54 +0100 Subject: [PATCH 35/48] fix syncthing --- templates/compose/syncthing.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/templates/compose/syncthing.yaml b/templates/compose/syncthing.yaml index 930bd048d..ad193422d 100644 --- a/templates/compose/syncthing.yaml +++ b/templates/compose/syncthing.yaml @@ -6,20 +6,20 @@ services: syncthing: - image: 'lscr.io/linuxserver/syncthing:latest' + image: lscr.io/linuxserver/syncthing:latest environment: - SERVICE_FQDN_SYNCTHING_8384 - PUID=1000 - PGID=1000 - - TZ=Etc/UTC + - TZ=${TZ:-Etc/UTC} volumes: - - 'syncthing-config:/config' - - 'syncthing-data1:/data1' - - 'syncthing-data2:/data2' + - syncthing_config:/config + - syncthing_data1:/data1 + - syncthing_data2:/data2 ports: - - '22000:22000/tcp' - - '22000:22000/udp' - - '21027:21027/udp' + - 22000:22000/tcp + - 22000:22000/udp + - 21027:21027/udp healthcheck: test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8384/"] interval: 5s From 5066c9f9e262cffa7fe35be0f474ef0010206a9f Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 21:11:18 +0100 Subject: [PATCH 36/48] fix postiz --- templates/compose/postiz.yaml | 37 ++++++++++++++--------------------- 1 file changed, 15 insertions(+), 22 deletions(-) diff --git a/templates/compose/postiz.yaml b/templates/compose/postiz.yaml index 01a61594f..34f268015 100644 --- a/templates/compose/postiz.yaml +++ b/templates/compose/postiz.yaml @@ -1,4 +1,3 @@ -# ignore: true # documentation: https://docs.postiz.com # slogan: Open source social media scheduling tool. # tags: post everywhere, social media, planning @@ -13,10 +12,10 @@ services: - MAIN_URL=${SERVICE_FQDN_POSTIZ} - FRONTEND_URL=${SERVICE_FQDN_POSTIZ} - NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZ}/api - - JWT_SECRET=${SERVICE_REALBASE64_JWTSECRET} - - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB:-postiz}?schema=public - - REDIS_URL=redis://redis:6379 - - BACKEND_INTERNAL_URL=http://localhost:3000/ + - JWT_SECRET=${SERVICE_PASSWORD_JWTSECRET} + - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRESQL}:${SERVICE_PASSWORD_POSTGRESQL}@postgresql:5432/${POSTGRESQL_DATABASE:-postiz-db} + - REDIS_URL=redis://${SERVICE_USER_REDIS}:${SERVICE_PASSWORD_REDIS}@redis:6379 + - BACKEND_INTERNAL_URL=http://localhost:3000 - IS_GENERAL=true - STORAGE_PROVIDER=local - UPLOAD_DIRECTORY=/uploads @@ -54,12 +53,12 @@ services: - BEEHIIVE_PUBLICATION_ID=${SERVICE_BEEHIIVE_PUBID} - OPENAI_API_KEY=${SERVICE_OPENAI_KEY} volumes: - - postiz-config:/config/ - - postiz-uploads:/uploads/ + - postiz_config:/config/ + - postiz_uploads:/uploads/ depends_on: - postiz-postgres: + postgres: condition: service_healthy - postiz-redis: + redis: condition: service_healthy healthcheck: test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:5000/"] @@ -67,19 +66,10 @@ services: timeout: 20s retries: 10 - postiz-postgres: + postgres: image: postgres:14.5 volumes: - - 'postiz_config:/config' - - 'postiz_uploads:/uploads' - healthcheck: - test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:5000/"] - interval: 5s - timeout: 20s - retries: 10 - postgres: - image: "postgres:latest" - - postiz-postgresql-data:/var/lib/postgresql/data + - postiz_postgresql_data:/var/lib/postgresql/data environment: - POSTGRES_USER=${SERVICE_USER_POSTGRESQL} - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL} @@ -90,10 +80,13 @@ services: timeout: 20s retries: 10 - postiz-redis: + redis: image: redis:7.2 volumes: - - postiz-redis-data:/data + - postiz_redis_data:/data + environment: + - REDIS_PASSWORD=${SERVICE_PASSWORD_REDIS} + - REDIS_USER=${SERVICE_USER_REDIS} healthcheck: test: - CMD From 0de18586c6aed549a645c8e63b7a02a737168ad9 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 21:14:11 +0100 Subject: [PATCH 37/48] fix web check --- public/svgs/web-check.png | Bin 0 -> 21984 bytes templates/compose/web-check.yaml | 6 ++++++ 2 files changed, 6 insertions(+) create mode 100644 public/svgs/web-check.png diff --git a/public/svgs/web-check.png b/public/svgs/web-check.png new file mode 100644 index 0000000000000000000000000000000000000000..5b1384764e4cbd8170ead436d562dd3baca4eccd GIT binary patch literal 21984 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 EbD{h-WbpGhBs3ksfW}GO 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 TkkB Date: Fri, 8 Nov 2024 21:18:21 +0100 Subject: [PATCH 38/48] fix jupyter --- public/svgs/jupyter.svg | 90 +++++++++++++++++++ .../compose/jupyter-notebook-python.yaml | 19 ++++ templates/compose/jupyter-notebook.yaml | 13 --- 3 files changed, 109 insertions(+), 13 deletions(-) create mode 100644 public/svgs/jupyter.svg create mode 100644 templates/compose/jupyter-notebook-python.yaml delete mode 100644 templates/compose/jupyter-notebook.yaml diff --git a/public/svgs/jupyter.svg b/public/svgs/jupyter.svg new file mode 100644 index 000000000..ab2550874 --- /dev/null +++ b/public/svgs/jupyter.svg @@ -0,0 +1,90 @@ + +Group.svg +Created using Figma 0.90 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/templates/compose/jupyter-notebook-python.yaml b/templates/compose/jupyter-notebook-python.yaml new file mode 100644 index 000000000..757136b25 --- /dev/null +++ b/templates/compose/jupyter-notebook-python.yaml @@ -0,0 +1,19 @@ +# documentation: https://jupyter.org/ +# slogan: Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations, and narrative text. +# tags: notebook, python, data, analysis +# logo: svgs/jupyter.svg +# port: 8888 + +services: + jupyter-notebook-python: + image: quay.io/jupyter/base-notebook:latest + environment: + - SERVICE_FQDN_JUPYTER_8888 + volumes: + - '/jupyter:/home/jovyan/work' + command: start-notebook.sh + healthcheck: + test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8888/"] + interval: 30s + timeout: 20s + retries: 10 diff --git a/templates/compose/jupyter-notebook.yaml b/templates/compose/jupyter-notebook.yaml deleted file mode 100644 index 92313d087..000000000 --- a/templates/compose/jupyter-notebook.yaml +++ /dev/null @@ -1,13 +0,0 @@ -services: - jupyter-notebook: - image: 'quay.io/jupyter/base-notebook:latest' - environment: - - SERVICE_FQDN_JUPYTER_8888 - volumes: - - '/jupyter:/home/jovyan/work' - command: start-notebook.sh - healthcheck: - test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8888/"] - interval: 30s - timeout: 20s - retries: 10 From 1039378feb3e5f2fa2bc5968d305bf2c2582bb59 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 21:18:33 +0100 Subject: [PATCH 39/48] Update service-templates.json --- templates/service-templates.json | 185 ++++++++++++++++++++++++++++++- 1 file changed, 180 insertions(+), 5 deletions(-) diff --git a/templates/service-templates.json b/templates/service-templates.json index ad71e0691..a39585682 100644 --- a/templates/service-templates.json +++ b/templates/service-templates.json @@ -50,6 +50,18 @@ "minversion": "0.0.0", "port": "3001" }, + "apprise-api": { + "documentation": "https://docs.linuxserver.io/images/docker-apprise-api/?utm_source=coolify.io", + "slogan": "Push Notifications API", + "compose": "c2VydmljZXM6CiAgYXBwcmlzZS1hcGk6CiAgICBpbWFnZTogJ2xpbnV4c2VydmVyL2FwcHJpc2UtYXBpOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9BUFBSSVNFXzgwMDAKICAgICAgLSBQVUlEPTEwMDAKICAgICAgLSBQR0lEPTEwMDAKICAgICAgLSBUWj1VVEMKICAgIHZvbHVtZXM6CiAgICAgIC0gJy9hcHByaXNlLWFwaS9jb25maWc6L2NvbmZpZycKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAnd2dldCAtcU8tIGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC8nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAK", + "tags": [ + "api", + "apprise" + ], + "logo": "svgs/apprise.png", + "minversion": "0.0.0", + "port": "8000" + }, "appsmith": { "documentation": "https://appsmith.com?utm_source=coolify.io", "slogan": "A low-code application platform for building internal tools.", @@ -423,6 +435,35 @@ "minversion": "0.0.0", "port": "8000" }, + "cyberchef": { + "documentation": "https://github.com/gchq/CyberChef?utm_source=coolify.io", + "slogan": "The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis", + "compose": "c2VydmljZXM6CiAgY3liZXJjaGVmOgogICAgaW1hZ2U6ICdnaGNyLmlvL2djaHEvY3liZXJjaGVmOmxhdGVzdCcKICAgIHBsYXRmb3JtOiBsaW51eC9hbWQ2NAogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gU0VSVklDRV9GUUROX0NZQkVSQ0hFRl84MAogICAgdm9sdW1lczoKICAgICAgLSAnY3liZXJjaGVmLWRhdGE6L2FwcC9kYXRhJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vMTI3LjAuMC4xOjgwJwogICAgICBpbnRlcnZhbDogMzBzCiAgICAgIHRpbWVvdXQ6IDEwcwogICAgICByZXRyaWVzOiAzCg==", + "tags": [ + "encryption", + "encoding", + "compression", + "data analysis", + "tools", + "development" + ], + "logo": "svgs/cyberchef.jpeg", + "minversion": "0.0.0", + "port": "80" + }, + "dashy": { + "documentation": "https://dashy.to/docs?utm_source=coolify.io", + "slogan": "A self-hostable personal dashboard built for you. Includes status-checking, widgets, themes, icon packs, a UI editor and tons more!", + "compose": "c2VydmljZXM6CiAgZGFzaHk6CiAgICBpbWFnZTogbGlzc3k5My9kYXNoeQogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gU0VSVklDRV9GUUROX0RBU0hZXzgwODAKICAgICAgLSBQVUlEPTEwMDAKICAgICAgLSBQR0lEPTEwMDAKICAgICAgLSAnVFo9JHtUSU1FWk9ORTotVVRDfScKICAgIHZvbHVtZXM6CiAgICAgIC0gJy4vZGFzaHkvY29uZi55bWw6L2FwcC9wdWJsaWMvY29uZi55bWwnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3dnZXQgLXFPLSBodHRwOi8vMTI3LjAuMC4xOjgwODAvJwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCg==", + "tags": [ + "dashboard", + "personal", + "self-hostable" + ], + "logo": "svgs/dashy.png", + "minversion": "0.0.0", + "port": "8080" + }, "directus-with-postgresql": { "documentation": "https://directus.io?utm_source=coolify.io", "slogan": "Directus wraps databases with a dynamic API, and provides an intuitive app for managing its content.", @@ -614,6 +655,19 @@ "minversion": "0.0.0", "port": "6555" }, + "faraday": { + "documentation": "https://faradaysec.com/?utm_source=coolify.io", + "slogan": "Faraday is a powerful, open-source, web-based vulnerability management tool.", + "compose": "c2VydmljZXM6CiAgcG9zdGdyZXNxbDoKICAgIGltYWdlOiAncG9zdGdyZXM6bGF0ZXN0JwogICAgdm9sdW1lczoKICAgICAgLSAnZmFyYWRheS1kYjovdmFyL2xpYi9wb3N0Z3Jlc3FsL2RhdGEnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnUE9TVEdSRVNfUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTUUx9JwogICAgICAtICdQT1NUR1JFU19VU0VSPSR7U0VSVklDRV9VU0VSX1BPU1RHUkVTUUx9JwogICAgICAtICdQT1NUR1JFU19EQj0ke1BPU1RHUkVTX0RCOi1mYXJhZGF5fScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtZCAkJHtQT1NUR1JFU19EQn0gLVUgJCR7UE9TVEdSRVNfVVNFUn0nCiAgICAgIGludGVydmFsOiAxNXMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDE1CiAgcmVkaXM6CiAgICBpbWFnZTogJ3JlZGlzOmFscGluZScKICAgIGNvbW1hbmQ6ICctLXNhdmUgNjAgMSAtLWxvZ2xldmVsIHdhcm5pbmcnCiAgICB2b2x1bWVzOgogICAgICAtICdyZWRpczovZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncmVkaXMtY2xpIHBpbmcgfCBncmVwIFBPTkcnCiAgICAgIGludGVydmFsOiAxNXMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDE1CiAgZmFyYWRheToKICAgIGltYWdlOiAnZmFyYWRheXNlYy9mYXJhZGF5OmxhdGVzdCcKICAgIGVudHJ5cG9pbnQ6IC9lbnRyeXBvaW50LnNoCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fRkFSQURBWV81OTg1CiAgICAgIC0gJ0FVVEhFTlRJS19QT1NUR1JFU1FMX19QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNRTH0nCiAgICAgIC0gJ1BHU1FMX1VTRVI9JHtTRVJWSUNFX1VTRVJfUE9TVEdSRVNRTH0nCiAgICAgIC0gJ1BHU1FMX1BBU1NXRD0ke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNRTH0nCiAgICAgIC0gJ1BHU1FMX0RCTkFNRT0ke1BPU1RHUkVTX0RCfScKICAgICAgLSBQR1NRTF9IT1NUPXBvc3RncmVzcWwKICAgICAgLSBSRURJU19TRVJWRVI9cmVkaXMKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2ZhcmFkYXk6L2hvbWUvZmFyYWRheS8uZmFyYWRheTpydycKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzcWw6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgcmVkaXM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBuYwogICAgICAgIC0gJy16JwogICAgICAgIC0gbG9jYWxob3N0CiAgICAgICAgLSAnNTk4NScKICAgICAgaW50ZXJ2YWw6IDMwcwogICAgICB0aW1lb3V0OiAxMHMKICAgICAgcmV0cmllczogMwo=", + "tags": [ + "vulnerability", + "management", + "tool" + ], + "logo": "svgs/faraday.png", + "minversion": "0.0.0", + "port": "5985" + }, "fider": { "documentation": "https://fider.io?utm_source=coolify.io", "slogan": "Fider is a feedback platform for collecting and managing user feedback.", @@ -644,7 +698,7 @@ "firefly": { "documentation": "https://firefly-iii.org?utm_source=coolify.io", "slogan": "A personal finances manager that can help you save money.", - "compose": "c2VydmljZXM6CiAgZmlyZWZseToKICAgIGltYWdlOiAnZmlyZWZseWlpaS9jb3JlOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9GSVJFRkxZXzgwODAKICAgICAgLSBBUFBfS0VZPSRTRVJWSUNFX0JBU0U2NF9BUFBLRVkKICAgICAgLSBEQl9IT1NUPW15c3FsCiAgICAgIC0gREJfUE9SVD0zMzA2CiAgICAgIC0gREJfQ09OTkVDVElPTj1teXNxbAogICAgICAtICdEQl9EQVRBQkFTRT0ke01ZU1FMX0RBVEFCQVNFOi1maXJlZmx5fScKICAgICAgLSBEQl9VU0VSTkFNRT0kU0VSVklDRV9VU0VSX01ZU1FMCiAgICAgIC0gREJfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfTVlTUUwKICAgICAgLSBTVEFUSUNfQ1JPTl9UT0tFTj0kU0VSVklDRV9CQVNFNjRfQ1JPTlRPS0VOCiAgICAgIC0gJ1RSVVNURURfUFJPWElFUz0qJwogICAgdm9sdW1lczoKICAgICAgLSAnZmlyZWZseS11cGxvYWQ6L3Zhci93d3cvaHRtbC9zdG9yYWdlL3VwbG9hZCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBjdXJsCiAgICAgICAgLSAnLWYnCiAgICAgICAgLSAnaHR0cDovLzEyNy4wLjAuMTo4MDgwJwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgICBkZXBlbmRzX29uOgogICAgICBteXNxbDoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogIG15c3FsOgogICAgaW1hZ2U6ICdtYXJpYWRiOjExJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ01ZU1FMX1VTRVI9JHtTRVJWSUNFX1VTRVJfTVlTUUx9JwogICAgICAtICdNWVNRTF9QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfTVlTUUx9JwogICAgICAtICdNWVNRTF9EQVRBQkFTRT0ke01ZU1FMX0RBVEFCQVNFOi1maXJlZmx5fScKICAgICAgLSAnTVlTUUxfUk9PVF9QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfTVlTUUxST09UfScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBtYXJpYWRiLWFkbWluCiAgICAgICAgLSBwaW5nCiAgICAgICAgLSAnLWgnCiAgICAgICAgLSAxMjcuMC4wLjEKICAgICAgICAtICctdXJvb3QnCiAgICAgICAgLSAnLXAke1NFUlZJQ0VfUEFTU1dPUkRfTVlTUUxST09UfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogICAgdm9sdW1lczoKICAgICAgLSAnZmlyZWZseS1teXNxbC1kYXRhOi92YXIvbGliL215c3FsJwogIGNyb246CiAgICBpbWFnZTogYWxwaW5lCiAgICBlbnRyeXBvaW50OgogICAgICAtIC9lbnRyeXBvaW50LnNoCiAgICB2b2x1bWVzOgogICAgICAtCiAgICAgICAgdHlwZTogYmluZAogICAgICAgIHNvdXJjZTogLi9lbnRyeXBvaW50LnNoCiAgICAgICAgdGFyZ2V0OiAvZW50cnlwb2ludC5zaAogICAgICAgIGNvbnRlbnQ6ICIjIS9iaW4vc2hcbiMgU3Vic3RpdHV0ZSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgaW50byB0aGUgY3JvbiBjb21tYW5kXG5DUk9OX0NPTU1BTkQ9XCIwIDMgKiAqICogd2dldCAtcU8tIGh0dHA6Ly9maXJlZmx5OjgwODAvYXBpL3YxL2Nyb24vJHtTVEFUSUNfQ1JPTl9UT0tFTn1cIlxuIyBBZGQgdGhlIGNyb24gY29tbWFuZCB0byB0aGUgY3JvbnRhYlxuZWNobyBcIiRDUk9OX0NPTU1BTkRcIiB8IGNyb250YWIgLVxuIyBTdGFydCB0aGUgY3JvbiBkYWVtb24gaW4gdGhlIGZvcmVncm91bmQgd2l0aCBsb2dnaW5nIHRvIHN0ZG91dFxuY3JvbmQgLWYgLUwgL2Rldi9zdGRvdXQiCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTVEFUSUNfQ1JPTl9UT0tFTj0kU0VSVklDRV9CQVNFNjRfQ1JPTlRPS0VOCg==", + "compose": "c2VydmljZXM6CiAgZmlyZWZseToKICAgIGltYWdlOiAnZmlyZWZseWlpaS9jb3JlOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9GSVJFRkxZXzgwODAKICAgICAgLSBBUFBfS0VZPSRTRVJWSUNFX0JBU0U2NF9BUFBLRVkKICAgICAgLSBEQl9IT1NUPW15c3FsCiAgICAgIC0gREJfUE9SVD0zMzA2CiAgICAgIC0gREJfQ09OTkVDVElPTj1teXNxbAogICAgICAtICdEQl9EQVRBQkFTRT0ke01ZU1FMX0RBVEFCQVNFOi1maXJlZmx5fScKICAgICAgLSBEQl9VU0VSTkFNRT0kU0VSVklDRV9VU0VSX01ZU1FMCiAgICAgIC0gREJfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfTVlTUUwKICAgICAgLSBTVEFUSUNfQ1JPTl9UT0tFTj0kU0VSVklDRV9CQVNFNjRfQ1JPTlRPS0VOCiAgICAgIC0gJ1RSVVNURURfUFJPWElFUz0qJwogICAgdm9sdW1lczoKICAgICAgLSAnZmlyZWZseS11cGxvYWQ6L3Zhci93d3cvaHRtbC9zdG9yYWdlL3VwbG9hZCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBjdXJsCiAgICAgICAgLSAnLWYnCiAgICAgICAgLSAnaHR0cDovLzEyNy4wLjAuMTo4MDgwJwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgICBkZXBlbmRzX29uOgogICAgICBteXNxbDoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogIG15c3FsOgogICAgaW1hZ2U6ICdtYXJpYWRiOjExJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ01ZU1FMX1VTRVI9JHtTRVJWSUNFX1VTRVJfTVlTUUx9JwogICAgICAtICdNWVNRTF9QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfTVlTUUx9JwogICAgICAtICdNWVNRTF9EQVRBQkFTRT0ke01ZU1FMX0RBVEFCQVNFOi1maXJlZmx5fScKICAgICAgLSAnTVlTUUxfUk9PVF9QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfTVlTUUxST09UfScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBtYXJpYWRiLWFkbWluCiAgICAgICAgLSBwaW5nCiAgICAgICAgLSAnLWgnCiAgICAgICAgLSAxMjcuMC4wLjEKICAgICAgICAtICctdXJvb3QnCiAgICAgICAgLSAnLXAke1NFUlZJQ0VfUEFTU1dPUkRfTVlTUUxST09UfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogICAgdm9sdW1lczoKICAgICAgLSAnZmlyZWZseS1teXNxbC1kYXRhOi92YXIvbGliL215c3FsJwogIGNyb246CiAgICBpbWFnZTogYWxwaW5lCiAgICBlbnRyeXBvaW50OgogICAgICAtIC9lbnRyeXBvaW50LnNoCiAgICB2b2x1bWVzOgogICAgICAtCiAgICAgICAgdHlwZTogYmluZAogICAgICAgIHNvdXJjZTogLi9lbnRyeXBvaW50LnNoCiAgICAgICAgdGFyZ2V0OiAvZW50cnlwb2ludC5zaAogICAgICAgIGNvbnRlbnQ6ICIjIS9iaW4vc2hcbiMgU3Vic3RpdHV0ZSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgaW50byB0aGUgY3JvbiBjb21tYW5kXG5DUk9OX0NPTU1BTkQ9XCIwIDMgKiAqICogd2dldCAtcU8tIGh0dHA6Ly9maXJlZmx5OjgwODAvYXBpL3YxL2Nyb24vJHtTVEFUSUNfQ1JPTl9UT0tFTn1cIlxuIyBBZGQgdGhlIGNyb24gY29tbWFuZCB0byB0aGUgY3JvbnRhYlxuZWNobyBcIiRDUk9OX0NPTU1BTkRcIiB8IGNyb250YWIgLVxuIyBTdGFydCB0aGUgY3JvbiBkYWVtb24gaW4gdGhlIGZvcmVncm91bmQgd2l0aCBsb2dnaW5nIHRvIHN0ZG91dFxuY3JvbmQgLWYgLUwgL2Rldi9zdGRvdXQiCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTVEFUSUNfQ1JPTl9UT0tFTj0kU0VSVklDRV9CQVNFNjRfQ1JPTlRPS0VOCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ2xzIC9lbnRyeXBvaW50LnNoIHx8IGV4aXQgMScKICAgICAgaW50ZXJ2YWw6IDMwcwogICAgICB0aW1lb3V0OiAxMHMKICAgICAgcmV0cmllczogMwogICAgICBzdGFydF9wZXJpb2Q6IDQwcwo=", "tags": [ "finance", "money", @@ -655,6 +709,19 @@ "minversion": "0.0.0", "port": "8080" }, + "firefox": { + "documentation": "https://github.com/jlesage/docker-firefox?utm_source=coolify.io", + "slogan": "Fast, private, and self-hosted secure browser for browsing without limits.", + "compose": "c2VydmljZXM6CiAgZmlyZWZveDoKICAgIGltYWdlOiBqbGVzYWdlL2ZpcmVmb3gKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9GSVJFRk9YXzU4MDAKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2ZpcmVmb3hfY29uZmlnOi9jb25maWcnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gd2dldAogICAgICAgIC0gJy1xJwogICAgICAgIC0gJy0tc3BpZGVyJwogICAgICAgIC0gJ2h0dHA6Ly8xMjcuMC4wLjE6NTgwMC8nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAK", + "tags": [ + "browser", + "web", + "privacy" + ], + "logo": "svgs/firefox.svg", + "minversion": "0.0.0", + "port": "5800" + }, "flowise-with-databases": { "documentation": "https://docs.flowiseai.com/?utm_source=coolify.io", "slogan": "Flowise is an open source low-code tool for developers to build customized LLM orchestration flows & AI agents. Also deploys Redis, Postgres and other services.", @@ -1079,6 +1146,21 @@ "minversion": "0.0.0", "port": "8000" }, + "hoarder": { + "documentation": "https://docs.hoarder.app/?utm_source=coolify.io", + "slogan": "an open source \"Bookmark Everything\" app that uses AI for automatically tagging the content you throw at it.", + "compose": "c2VydmljZXM6CiAgd2ViOgogICAgaW1hZ2U6ICdnaGNyLmlvL2hvYXJkZXItYXBwL2hvYXJkZXI6cmVsZWFzZScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2hvYXJkZXItZGF0YTovZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9IT0FSREVSCiAgICAgIC0gJ05FWFRBVVRIX1NFQ1JFVD0ke1NFUlZJQ0VfUEFTU1dPUkRfSE9BUkRFUk5FWFRBVVRIfScKICAgICAgLSAnTUVJTElfTUFTVEVSX0tFWT0ke1NFUlZJQ0VfUEFTU1dPUkRfTUVJTEl9JwogICAgICAtICdORVhUQVVUSF9VUkw9JHtTRVJWSUNFX0ZRRE5fSE9BUkRFUn0nCiAgICAgIC0gJ01FSUxJX0FERFI9aHR0cDovL21laWxpc2VhcmNoOjc3MDAnCiAgICAgIC0gJ0JST1dTRVJfV0VCX1VSTD1odHRwOi8vY2hyb21lOjkyMjInCiAgICAgIC0gREFUQV9ESVI9L2RhdGEKICBjaHJvbWU6CiAgICBpbWFnZTogJ2djci5pby96ZW5pa2EtaHViL2FscGluZS1jaHJvbWU6MTI0JwogICAgY29tbWFuZDoKICAgICAgLSAnLS1uby1zYW5kYm94JwogICAgICAtICctLWRpc2FibGUtZ3B1JwogICAgICAtICctLWRpc2FibGUtZGV2LXNobS11c2FnZScKICAgICAgLSAnLS1yZW1vdGUtZGVidWdnaW5nLWFkZHJlc3M9MC4wLjAuMCcKICAgICAgLSAnLS1yZW1vdGUtZGVidWdnaW5nLXBvcnQ9OTIyMicKICAgICAgLSAnLS1oaWRlLXNjcm9sbGJhcnMnCiAgbWVpbGlzZWFyY2g6CiAgICBpbWFnZTogJ2dldG1laWxpL21laWxpc2VhcmNoOnYxLjYnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnTUVJTElfTk9fQU5BTFlUSUNTPSR7TUVJTElfTk9fQU5BTFlUSUNTOi10cnVlfScKICAgICAgLSAnTkVYVEFVVEhfU0VDUkVUPSR7U0VSVklDRV9QQVNTV09SRF9IT0FSREVSTkVYVEFVVEh9JwogICAgICAtICdNRUlMSV9NQVNURVJfS0VZPSR7U0VSVklDRV9QQVNTV09SRF9NRUlMSX0nCiAgICAgIC0gJ05FWFRBVVRIX1VSTD0ke1NFUlZJQ0VfRlFETl9IT0FSREVSfScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2hvYXJkZXItbWVpbGlzZWFyY2g6L21laWxpX2RhdGEnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gY3VybAogICAgICAgIC0gJy1mJwogICAgICAgIC0gJ2h0dHA6Ly8xMjcuMC4wLjE6NzcwMC9oZWFsdGgnCiAgICAgIGludGVydmFsOiAycwogICAgICB0aW1lb3V0OiAxMHMKICAgICAgcmV0cmllczogMTUK", + "tags": [ + "media", + "read-it-later", + "pocket-alternative", + "omnivore-alternative", + "instapaper-alternative" + ], + "logo": "svgs/hoarder.svg", + "minversion": "0.0.0", + "port": "3000" + }, "homarr": { "documentation": "https://homarr.dev?utm_source=coolify.io", "slogan": "Homarr is a self-hosted homepage for your services.", @@ -1104,10 +1186,23 @@ "minversion": "0.0.0", "port": "3000" }, + "hoppscotch": { + "documentation": "https://docs.hoppscotch.io?utm_source=coolify.io", + "slogan": "The Open Source API Development Platform", + "compose": "c2VydmljZXM6CiAgYmFja2VuZDoKICAgIGltYWdlOiAnaG9wcHNjb3RjaC9ob3Bwc2NvdGNoOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9IT1BQU0NPVENIXzgwCiAgICAgIC0gJ1ZJVEVfQUxMT1dFRF9BVVRIX1BST1ZJREVSUz0ke1ZJVEVfQUxMT1dFRF9BVVRIX1BST1ZJREVSUzotR09PR0xFLEdJVEhVQixNSUNST1NPRlQsRU1BSUx9JwogICAgICAtICdEQVRBQkFTRV9VUkw9cG9zdGdyZXNxbDovLyR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfToke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVN9QGhvcHBzY290Y2gtZGI6NTQzMi8ke1BPU1RHUkVTX0RCfScKICAgICAgLSAnSldUX1NFQ1JFVD0ke1NFUlZJQ0VfUEFTU1dPUkRfSldUfScKICAgICAgLSAnVE9LRU5fU0FMVF9DT01QTEVYSVRZPSR7VE9LRU5fU0FMVF9DT01QTEVYSVRZOi0xMH0nCiAgICAgIC0gJ01BR0lDX0xJTktfVE9LRU5fVkFMSURJVFk9JHtNQUdJQ19MSU5LX1RPS0VOX1ZBTElESVRZOi0zfScKICAgICAgLSAnUkVGUkVTSF9UT0tFTl9WQUxJRElUWT0ke1JFRlJFU0hfVE9LRU5fVkFMSURJVFk6LTYwNDgwMDAwMH0nCiAgICAgIC0gJ0FDQ0VTU19UT0tFTl9WQUxJRElUWT0ke0FDQ0VTU19UT0tFTl9WQUxJRElUWTotODY0MDAwMDB9JwogICAgICAtICdTRVNTSU9OX1NFQ1JFVD0ke1NFUlZJQ0VfUEFTU1dPUkRfU0VDUkVUfScKICAgICAgLSAnQUxMT1dfU0VDVVJFX0NPT0tJRVM9JHtBTExPV19TRUNVUkVfQ09PS0lFUzotdHJ1ZX0nCiAgICAgIC0gJ0RBVEFfRU5DUllQVElPTl9LRVk9JHtEQVRBX0VOQ1JZUFRJT05fS0VZOi1tdXN0YmVleGFjdHJ5MzJjaGFyYWN0ZXJsaWtldGhhdH0nCiAgICAgIC0gJ1JFRElSRUNUX1VSTD0ke1NFUlZJQ0VfRlFETl9IT1BQU0NPVENIfScKICAgICAgLSAnV0hJVEVMSVNURURfT1JJR0lOUz0ke1NFUlZJQ0VfRlFETl9IT1BQU0NPVENIfS9iYWNrZW5kLCR7U0VSVklDRV9GUUROX0hPUFBTQ09UQ0h9LCR7U0VSVklDRV9GUUROX0hPUFBTQ09UQ0h9L2FkbWluJwogICAgICAtICdHT09HTEVfQ0xJRU5UX0lEPSR7R09PR0xFX0NMSUVOVF9JRDotKioqKip9JwogICAgICAtICdHT09HTEVfQ0xJRU5UX1NFQ1JFVD0ke0dPT0dMRV9DTElFTlRfU0VDUkVUOi0qKioqKn0nCiAgICAgIC0gJ0dPT0dMRV9DQUxMQkFDS19VUkw9JHtTRVJWSUNFX0ZRRE5fSE9QUFNDT1RDSH0vYmFja2VuZC92MS9hdXRoL2dvb2dsZS9jYWxsYmFjaycKICAgICAgLSAnR09PR0xFX1NDT1BFPWVtYWlsLHByb2ZpbGUnCiAgICAgIC0gJ0dJVEhVQl9DTElFTlRfSUQ9JHtHSVRIVUJfQ0xJRU5UX0lEOi0qKioqKn0nCiAgICAgIC0gJ0dJVEhVQl9DTElFTlRfU0VDUkVUPSR7R0lUSFVCX0NMSUVOVF9TRUNSRVQ6LSoqKioqfScKICAgICAgLSAnR0lUSFVCX0NBTExCQUNLX1VSTD0ke1NFUlZJQ0VfRlFETl9IT1BQU0NPVENIfS9iYWNrZW5kL3YxL2F1dGgvZ2l0aHViL2NhbGxiYWNrJwogICAgICAtICdHSVRIVUJfU0NPUEU9dXNlcjplbWFpbCcKICAgICAgLSAnTUlDUk9TT0ZUX0NMSUVOVF9JRD0ke01JQ1JPU09GVF9DTElFTlRfSUQ6LSoqKioqfScKICAgICAgLSAnTUlDUk9TT0ZUX0NMSUVOVF9TRUNSRVQ9JHtNSUNST1NPRlRfQ0xJRU5UX1NFQ1JFVDotKioqKip9JwogICAgICAtICdNSUNST1NPRlRfQ0FMTEJBQ0tfVVJMPSR7U0VSVklDRV9GUUROX0hPUFBTQ09UQ0h9L2JhY2tlbmQvdjEvYXV0aC9taWNyb3NvZnQvY2FsbGJhY2snCiAgICAgIC0gTUlDUk9TT0ZUX1NDT1BFPXVzZXIucmVhZAogICAgICAtIE1JQ1JPU09GVF9URU5BTlQ9Y29tbW9uCiAgICAgIC0gJ01BSUxFUl9TTVRQX0VOQUJMRT0ke01BSUxFUl9TTVRQX0VOQUJMRTotZmFsc2V9JwogICAgICAtICdNQUlMRVJfVVNFX0NVU1RPTV9DT05GSUdTPSR7TUFJTEVSX1VTRV9DVVNUT01fQ09ORklHUzotdHJ1ZX0nCiAgICAgIC0gJ01BSUxFUl9BRERSRVNTX0ZST009JHtNQUlMRVJfQUREUkVTU19GUk9NOi11c2VyQGV4YW1wbGUuY29tfScKICAgICAgLSAnTUFJTEVSX1NNVFBfVVJMPSR7TUFJTEVSX1NNVFBfVVJMOi1zbXRwc191cmx9JwogICAgICAtICdNQUlMRVJfU01UUF9IT1NUPSR7TUFJTEVSX1NNVFBfSE9TVDotc210cC5leGFtcGxlLmNvbX0nCiAgICAgIC0gJ01BSUxFUl9TTVRQX1BPUlQ9JHtNQUlMRVJfU01UUF9QT1JUOi00NjV9JwogICAgICAtICdNQUlMRVJfU01UUF9TRUNVUkU9JHtNQUlMRVJfU01UUF9TRUNVUkU6LXRydWV9JwogICAgICAtICdNQUlMRVJfU01UUF9VU0VSPSR7TUFJTEVSX1NNVFBfVVNFUjotdXNlckBleGFtcGxlLmNvbX0nCiAgICAgIC0gJ01BSUxFUl9TTVRQX1BBU1NXT1JEPSR7TUFJTEVSX1NNVFBfUEFTU1dPUkQ6LW1haWxwYXNzfScKICAgICAgLSAnTUFJTEVSX1RMU19SRUpFQ1RfVU5BVVRIT1JJWkVEPSR7TUFJTEVSX1RMU19SRUpFQ1RfVU5BVVRIT1JJWkVEOi1mYWxzZX0nCiAgICAgIC0gJ1JBVEVfTElNSVRfVFRMPSR7UkFURV9MSU1JVF9UVEw6LTYwfScKICAgICAgLSAnUkFURV9MSU1JVF9NQVg9JHtSQVRFX0xJTUlUX01BWDotMTAwfScKICAgICAgLSAnVklURV9CQVNFX1VSTD0ke1NFUlZJQ0VfRlFETl9IT1BQU0NPVENIfScKICAgICAgLSAnVklURV9TSE9SVENPREVfQkFTRV9VUkw9JHtTRVJWSUNFX0ZRRE5fSE9QUFNDT1RDSH0nCiAgICAgIC0gJ1ZJVEVfQURNSU5fVVJMPSR7U0VSVklDRV9GUUROX0hPUFBTQ09UQ0h9L2FkbWluJwogICAgICAtICdWSVRFX0JBQ0tFTkRfR1FMX1VSTD0ke1NFUlZJQ0VfRlFETl9IT1BQU0NPVENIfS9iYWNrZW5kL2dyYXBocWwnCiAgICAgIC0gJ1ZJVEVfQkFDS0VORF9XU19VUkw9d3NzOi8vJHtTRVJWSUNFX1VSTF9IT1BQU0NPVENIfS9iYWNrZW5kL2dyYXBocWwnCiAgICAgIC0gJ1ZJVEVfQkFDS0VORF9BUElfVVJMPSR7U0VSVklDRV9GUUROX0hPUFBTQ09UQ0h9L2JhY2tlbmQvdjEnCiAgICAgIC0gJ1ZJVEVfQVBQX1RPU19MSU5LPWh0dHBzOi8vZG9jcy5ob3Bwc2NvdGNoLmlvL3N1cHBvcnQvdGVybXMnCiAgICAgIC0gJ1ZJVEVfQVBQX1BSSVZBQ1lfUE9MSUNZX0xJTks9aHR0cHM6Ly9kb2NzLmhvcHBzY290Y2guaW8vc3VwcG9ydC9wcml2YWN5JwogICAgICAtIEVOQUJMRV9TVUJQQVRIX0JBU0VEX0FDQ0VTUz10cnVlCiAgICBkZXBlbmRzX29uOgogICAgICBkYi1taWdyYXRpb246CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2NvbXBsZXRlZF9zdWNjZXNzZnVsbHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAnd2dldCAtcU8tIGh0dHA6Ly8xMjcuMC4wLjE6ODAvJwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgaG9wcHNjb3RjaC1kYjoKICAgIGltYWdlOiAncG9zdGdyZXM6bGF0ZXN0JwogICAgdm9sdW1lczoKICAgICAgLSAncG9zdGdyZXNfZGF0YTovdmFyL2xpYi9wb3N0Z3Jlc3FsL2RhdGEnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnUE9TVEdSRVNfVVNFUj0ke1NFUlZJQ0VfVVNFUl9QT1NUR1JFU30nCiAgICAgIC0gJ1BPU1RHUkVTX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU30nCiAgICAgIC0gJ1BPU1RHUkVTX0RCPSR7UE9TVEdSRVNfREI6LWhvcHBzY290Y2h9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1oIGxvY2FsaG9zdCAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAxMHMKICAgICAgcmV0cmllczogMTAKICBkYi1taWdyYXRpb246CiAgICBleGNsdWRlX2Zyb21faGM6IHRydWUKICAgIGltYWdlOiAnaG9wcHNjb3RjaC9ob3Bwc2NvdGNoOmxhdGVzdCcKICAgIGRlcGVuZHNfb246CiAgICAgIGhvcHBzY290Y2gtZGI6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGNvbW1hbmQ6ICdwbnB4IHByaXNtYSBtaWdyYXRlIGRlcGxveScKICAgIHJlc3RhcnQ6IG9uLWZhaWx1cmUKICAgIGVudmlyb25tZW50OgogICAgICAtICdQT1NUR1JFU19VU0VSPSR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfScKICAgICAgLSAnUE9TVEdSRVNfUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTfScKICAgICAgLSAnUE9TVEdSRVNfREI9JHtQT1NUR1JFU19EQjotaG9wcHNjb3RjaH0nCiAgICAgIC0gJ0RBVEFCQVNFX1VSTD1wb3N0Z3JlczovLyR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfToke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVN9QGhvcHBzY290Y2gtZGI6NTQzMi8ke1BPU1RHUkVTX0RCOi1ob3Bwc2NvdGNofScK", + "tags": [ + "api", + "development", + "platform" + ], + "logo": "svgs/hoppscotch.png", + "minversion": "0.0.0", + "port": "80" + }, "immich": { "documentation": "https://immich.app/docs/overview/introduction?utm_source=coolify.io", "slogan": "Self-hosted photo and video management solution.", - "compose": "c2VydmljZXM6CiAgaW1taWNoOgogICAgaW1hZ2U6ICdnaGNyLmlvL2ltbWljaC1hcHAvaW1taWNoLXNlcnZlcjpyZWxlYXNlJwogICAgdm9sdW1lczoKICAgICAgLSAnaW1taWNoLXVwbG9hZHM6L3Vzci9zcmMvYXBwL3VwbG9hZCcKICAgICAgLSAnL2V0Yy9sb2NhbHRpbWU6L2V0Yy9sb2NhbHRpbWU6cm8nCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fSU1NSUNIXzMwMDEKICAgICAgLSBVUExPQURfTE9DQVRJT049Li9saWJyYXJ5CiAgICAgIC0gREJfREFUQV9MT0NBVElPTj0uL3Bvc3RncmVzCiAgICAgIC0gREJfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBEQl9VU0VSTkFNRT0kU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIC0gJ0RCX0RBVEFCQVNFX05BTUU9JHtEQl9EQVRBQkFTRV9OQU1FOi1pbW1pY2h9JwogICAgICAtICdUWj0ke1RaOi1FdGMvVVRDfScKICAgIGRlcGVuZHNfb246CiAgICAgIHJlZGlzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIGRhdGFiYXNlOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgZGlzYWJsZTogZmFsc2UKICBpbW1pY2gtbWFjaGluZS1sZWFybmluZzoKICAgIGNvbnRhaW5lcl9uYW1lOiBpbW1pY2hfbWFjaGluZV9sZWFybmluZwogICAgaW1hZ2U6ICdnaGNyLmlvL2ltbWljaC1hcHAvaW1taWNoLW1hY2hpbmUtbGVhcm5pbmc6cmVsZWFzZScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2ltbWljaC1tb2RlbC1jYWNoZTovY2FjaGUnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBVUExPQURfTE9DQVRJT049Li9saWJyYXJ5CiAgICAgIC0gREJfREFUQV9MT0NBVElPTj0uL3Bvc3RncmVzCiAgICAgIC0gREJfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBEQl9VU0VSTkFNRT0kU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIC0gJ0RCX0RBVEFCQVNFX05BTUU9JHtEQl9EQVRBQkFTRV9OQU1FOi1pbW1pY2h9JwogICAgICAtICdUWj0ke1RaOi1FdGMvVVRDfScKICAgIGhlYWx0aGNoZWNrOgogICAgICBkaXNhYmxlOiBmYWxzZQogIHJlZGlzOgogICAgaW1hZ2U6ICdyZWRpczo3LjQtYWxwaW5lJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIHJlZGlzLWNsaQogICAgICAgIC0gUElORwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDIwCiAgZGF0YWJhc2U6CiAgICBpbWFnZTogJ2RvY2tlci5pby90ZW5zb3JjaG9yZC9wZ3ZlY3RvLXJzOnBnMTQtdjAuMi4wQHNoYTI1Njo5MDcyNDE4NmYwYTM1MTdjZjY5MTQyOTViNWFiNDEwZGI5Y2UyMzE5MGEyZDlkMGI5ZGQ2NDYzZTNmYTI5OGYwJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAnJHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTfScKICAgICAgUE9TVEdSRVNfVVNFUjogJyR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfScKICAgICAgUE9TVEdSRVNfREI6ICcke0RCX0RBVEFCQVNFX05BTUU6LWltbWljaH0nCiAgICAgIFBPU1RHUkVTX0lOSVREQl9BUkdTOiAnLS1kYXRhLWNoZWNrc3VtcycKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2ltbWljaC1wb3N0Z3Jlcy1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAK", + "compose": "c2VydmljZXM6CiAgaW1taWNoOgogICAgaW1hZ2U6ICdnaGNyLmlvL2ltbWljaC1hcHAvaW1taWNoLXNlcnZlcjpyZWxlYXNlJwogICAgdm9sdW1lczoKICAgICAgLSAnaW1taWNoLXVwbG9hZHM6L3Vzci9zcmMvYXBwL3VwbG9hZCcKICAgICAgLSAnL2V0Yy9sb2NhbHRpbWU6L2V0Yy9sb2NhbHRpbWU6cm8nCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fSU1NSUNIXzIyODMKICAgICAgLSBVUExPQURfTE9DQVRJT049Li9saWJyYXJ5CiAgICAgIC0gREJfREFUQV9MT0NBVElPTj0uL3Bvc3RncmVzCiAgICAgIC0gREJfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBEQl9VU0VSTkFNRT0kU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIC0gJ0RCX0RBVEFCQVNFX05BTUU9JHtEQl9EQVRBQkFTRV9OQU1FOi1pbW1pY2h9JwogICAgICAtICdUWj0ke1RaOi1FdGMvVVRDfScKICAgIGRlcGVuZHNfb246CiAgICAgIHJlZGlzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIGRhdGFiYXNlOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgZGlzYWJsZTogZmFsc2UKICBpbW1pY2gtbWFjaGluZS1sZWFybmluZzoKICAgIGNvbnRhaW5lcl9uYW1lOiBpbW1pY2hfbWFjaGluZV9sZWFybmluZwogICAgaW1hZ2U6ICdnaGNyLmlvL2ltbWljaC1hcHAvaW1taWNoLW1hY2hpbmUtbGVhcm5pbmc6cmVsZWFzZScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2ltbWljaC1tb2RlbC1jYWNoZTovY2FjaGUnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBVUExPQURfTE9DQVRJT049Li9saWJyYXJ5CiAgICAgIC0gREJfREFUQV9MT0NBVElPTj0uL3Bvc3RncmVzCiAgICAgIC0gREJfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBEQl9VU0VSTkFNRT0kU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIC0gJ0RCX0RBVEFCQVNFX05BTUU9JHtEQl9EQVRBQkFTRV9OQU1FOi1pbW1pY2h9JwogICAgICAtICdUWj0ke1RaOi1FdGMvVVRDfScKICAgIGhlYWx0aGNoZWNrOgogICAgICBkaXNhYmxlOiBmYWxzZQogIHJlZGlzOgogICAgaW1hZ2U6ICdyZWRpczo3LjQtYWxwaW5lJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIHJlZGlzLWNsaQogICAgICAgIC0gUElORwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDIwCiAgZGF0YWJhc2U6CiAgICBpbWFnZTogJ2RvY2tlci5pby90ZW5zb3JjaG9yZC9wZ3ZlY3RvLXJzOnBnMTQtdjAuMi4wQHNoYTI1Njo5MDcyNDE4NmYwYTM1MTdjZjY5MTQyOTViNWFiNDEwZGI5Y2UyMzE5MGEyZDlkMGI5ZGQ2NDYzZTNmYTI5OGYwJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAnJHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTfScKICAgICAgUE9TVEdSRVNfVVNFUjogJyR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfScKICAgICAgUE9TVEdSRVNfREI6ICcke0RCX0RBVEFCQVNFX05BTUU6LWltbWljaH0nCiAgICAgIFBPU1RHUkVTX0lOSVREQl9BUkdTOiAnLS1kYXRhLWNoZWNrc3VtcycKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2ltbWljaC1wb3N0Z3Jlcy1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAK", "tags": [ "photo", "video", @@ -1226,6 +1321,20 @@ "minversion": "0.0.0", "port": "22300" }, + "jupyter-notebook-python": { + "documentation": "https://jupyter.org/?utm_source=coolify.io", + "slogan": "Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations, and narrative text.", + "compose": "c2VydmljZXM6CiAganVweXRlci1ub3RlYm9vay1weXRob246CiAgICBpbWFnZTogJ3F1YXkuaW8vanVweXRlci9iYXNlLW5vdGVib29rOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9KVVBZVEVSXzg4ODgKICAgIHZvbHVtZXM6CiAgICAgIC0gJy9qdXB5dGVyOi9ob21lL2pvdnlhbi93b3JrJwogICAgY29tbWFuZDogc3RhcnQtbm90ZWJvb2suc2gKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAnd2dldCAtcU8tIGh0dHA6Ly8xMjcuMC4wLjE6ODg4OC8nCiAgICAgIGludGVydmFsOiAzMHMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCg==", + "tags": [ + "notebook", + "python", + "data", + "analysis" + ], + "logo": "svgs/jupyter.svg", + "minversion": "0.0.0", + "port": "8888" + }, "keycloak-with-postgres": { "documentation": "https://www.keycloak.org?utm_source=coolify.io", "slogan": "Keycloak is an open-source Identity and Access Management tool.", @@ -1389,7 +1498,7 @@ "listmonk": { "documentation": "https://listmonk.app/?utm_source=coolify.io", "slogan": "Self-hosted newsletter and mailing list manager", - "compose": "c2VydmljZXM6CiAgbGlzdG1vbms6CiAgICBpbWFnZTogJ2xpc3Rtb25rL2xpc3Rtb25rOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9MSVNUTU9OS185MDAwCiAgICAgIC0gJ0xJU1RNT05LX2FwcF9fYWRkcmVzcz0wLjAuMC4wOjkwMDAnCiAgICAgIC0gTElTVE1PTktfZGJfX2hvc3Q9cG9zdGdyZXMKICAgICAgLSBMSVNUTU9OS19kYl9fbmFtZT1saXN0bW9uawogICAgICAtIExJU1RNT05LX2RiX191c2VyPSRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgLSBMSVNUTU9OS19kYl9fcGFzc3dvcmQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBMSVNUTU9OS19kYl9fcG9ydD01NDMyCiAgICAgIC0gTElTVE1PTktfYXBwX19hZG1pbl91c2VybmFtZT1hZG1pbgogICAgICAtIExJU1RNT05LX2FwcF9fYWRtaW5fcGFzc3dvcmQ9JFNFUlZJQ0VfUEFTU1dPUkRfQURNSU4KICAgICAgLSBUWj1FdGMvVVRDCiAgICB2b2x1bWVzOgogICAgICAtICdsaXN0bW9uay1kYXRhOi9saXN0bW9uay91cGxvYWRzJwogICAgZGVwZW5kc19vbjoKICAgICAgcG9zdGdyZXM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSB3Z2V0CiAgICAgICAgLSAnLXEnCiAgICAgICAgLSAnLS1zcGlkZXInCiAgICAgICAgLSAnaHR0cDovLzEyNy4wLjAuMTo5MDAwJwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgbGlzdG1vbmstaW5pdGlhbC1kYXRhYmFzZS1zZXR1cDoKICAgIGltYWdlOiAnbGlzdG1vbmsvbGlzdG1vbms6bGF0ZXN0JwogICAgY29tbWFuZDogJy4vbGlzdG1vbmsgLS1pbnN0YWxsIC0teWVzIC0taWRlbXBvdGVudCcKICAgIHJlc3RhcnQ6ICdubycKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBMSVNUTU9OS19kYl9faG9zdD1wb3N0Z3JlcwogICAgICAtIExJU1RNT05LX2RiX19uYW1lPWxpc3Rtb25rCiAgICAgIC0gTElTVE1PTktfZGJfX3VzZXI9JFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogICAgICAtIExJU1RNT05LX2RiX19wYXNzd29yZD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtIExJU1RNT05LX2RiX19wb3J0PTU0MzIKICBwb3N0Z3JlczoKICAgIGltYWdlOiAncG9zdGdyZXM6bGF0ZXN0JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gUE9TVEdSRVNfREI9bGlzdG1vbmsKICAgICAgLSBQT1NUR1JFU19QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtIFBPU1RHUkVTX1VTRVI9JFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogICAgdm9sdW1lczoKICAgICAgLSAncGctZGF0YTovdmFyL2xpYi9wb3N0Z3Jlc3FsL2RhdGEnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3BnX2lzcmVhZHkgLVUgJCR7UE9TVEdSRVNfVVNFUn0gLWQgJCR7UE9TVEdSRVNfREJ9JwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCg==", + "compose": "c2VydmljZXM6CiAgbGlzdG1vbms6CiAgICBpbWFnZTogJ2xpc3Rtb25rL2xpc3Rtb25rOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9MSVNUTU9OS185MDAwCiAgICAgIC0gJ0xJU1RNT05LX2FwcF9fYWRkcmVzcz0wLjAuMC4wOjkwMDAnCiAgICAgIC0gTElTVE1PTktfZGJfX2hvc3Q9cG9zdGdyZXMKICAgICAgLSBMSVNUTU9OS19kYl9fbmFtZT1saXN0bW9uawogICAgICAtIExJU1RNT05LX2RiX191c2VyPSRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgLSBMSVNUTU9OS19kYl9fcGFzc3dvcmQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBMSVNUTU9OS19kYl9fcG9ydD01NDMyCiAgICAgIC0gVFo9RXRjL1VUQwogICAgdm9sdW1lczoKICAgICAgLSAnbGlzdG1vbmstZGF0YTovbGlzdG1vbmsvdXBsb2FkcycKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gd2dldAogICAgICAgIC0gJy1xJwogICAgICAgIC0gJy0tc3BpZGVyJwogICAgICAgIC0gJ2h0dHA6Ly8xMjcuMC4wLjE6OTAwMCcKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogIGxpc3Rtb25rLWluaXRpYWwtZGF0YWJhc2Utc2V0dXA6CiAgICBpbWFnZTogJ2xpc3Rtb25rL2xpc3Rtb25rOmxhdGVzdCcKICAgIGNvbW1hbmQ6ICcuL2xpc3Rtb25rIC0taW5zdGFsbCAtLXllcyAtLWlkZW1wb3RlbnQnCiAgICByZXN0YXJ0OiAnbm8nCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3JlczoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gTElTVE1PTktfZGJfX2hvc3Q9cG9zdGdyZXMKICAgICAgLSBMSVNUTU9OS19kYl9fbmFtZT1saXN0bW9uawogICAgICAtIExJU1RNT05LX2RiX191c2VyPSRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgLSBMSVNUTU9OS19kYl9fcGFzc3dvcmQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBMSVNUTU9OS19kYl9fcG9ydD01NDMyCiAgcG9zdGdyZXM6CiAgICBpbWFnZTogJ3Bvc3RncmVzOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFBPU1RHUkVTX0RCPWxpc3Rtb25rCiAgICAgIC0gUE9TVEdSRVNfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSBQT1NUR1JFU19VU0VSPSRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3BnLWRhdGE6L3Zhci9saWIvcG9zdGdyZXNxbC9kYXRhJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAo=", "tags": [ "newsletter", "mailing list", @@ -1486,7 +1595,7 @@ "mattermost": { "documentation": "https://docs.mattermost.com?utm_source=coolify.io", "slogan": "Mattermost is an open source, self-hosted Slack-alternative.", - "compose": "c2VydmljZXM6CiAgbWF0dGVybW9zdDoKICAgIGltYWdlOiAnbWF0dGVybW9zdC9tYXR0ZXJtb3N0LXRlYW0tZWRpdGlvbjpyZWxlYXNlLTEwJwogICAgcGxhdGZvcm06IGxpbnV4L2FtZDY0CiAgICB2b2x1bWVzOgogICAgICAtICdtYXR0ZXJtb3N0LWRhdGE6L21hdHRlcm1vc3QnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fTUFUVEVSTU9TVF84MDY1CiAgICAgIC0gJ01NX1NFUlZJQ0VTRVRUSU5HU19TSVRFVVJMPSR7U0VSVklDRV9GUUROX01BVFRFUk1PU1R9JwogICAgICAtICdUWj0ke1RaOi1VVEN9JwogICAgICAtIE1NX1NRTFNFVFRJTkdTX0RSSVZFUk5BTUU9cG9zdGdyZXMKICAgICAgLSAnTU1fU1FMU0VUVElOR1NfREFUQVNPVVJDRT1wb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXM6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJmNvbm5lY3RfdGltZW91dD0xMCcKICAgICAgLSBNTV9CTEVWRVNFVFRJTkdTX0lOREVYRElSPS9tYXR0ZXJtb3N0L2JsZXZlLWluZGV4ZXMKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gY3VybAogICAgICAgIC0gJy1mJwogICAgICAgIC0gJ2h0dHA6Ly8xMjcuMC4wLjE6ODA2NScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogIHBvc3RncmVzOgogICAgaW1hZ2U6ICdwb3N0Z3JlczoxNi1hbHBpbmUnCiAgICB2b2x1bWVzOgogICAgICAtICdwb3N0Z3Jlc3FsLWRhdGE6L3Zhci9saWIvcG9zdGdyZXNxbC9kYXRhJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gUE9TVEdSRVNfVVNFUj0kU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIC0gUE9TVEdSRVNfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSAnUE9TVEdSRVNfREI9JHtQT1NUR1JFU19EQjotbWF0dGVybW9zdH0nCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3BnX2lzcmVhZHkgLVUgJCR7UE9TVEdSRVNfVVNFUn0gLWQgJCR7UE9TVEdSRVNfREJ9JwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCg==", + "compose": "c2VydmljZXM6CiAgbWF0dGVybW9zdDoKICAgIGltYWdlOiAnbWF0dGVybW9zdC9tYXR0ZXJtb3N0LXRlYW0tZWRpdGlvbjpyZWxlYXNlLTEwJwogICAgcGxhdGZvcm06IGxpbnV4L2FtZDY0CiAgICB2b2x1bWVzOgogICAgICAtICdtYXR0ZXJtb3N0LWRhdGEtY29uZmlnOi9tYXR0ZXJtb3N0L2NvbmZpZzpydycKICAgICAgLSAnbWF0dGVybW9zdC1kYXRhLWRhdGE6L21hdHRlcm1vc3QvZGF0YTpydycKICAgICAgLSAnbWF0dGVybW9zdC1kYXRhLWxvZ3M6L21hdHRlcm1vc3QvbG9nczpydycKICAgICAgLSAnbWF0dGVybW9zdC1kYXRhLXBsdWdpbnM6L21hdHRlcm1vc3QvcGx1Z2luczpydycKICAgICAgLSAnbWF0dGVybW9zdC1kYXRhLWNsaWVudC1wbHVnaW5zOi9tYXR0ZXJtb3N0L2NsaWVudC9wbHVnaW5zOnJ3JwogICAgICAtICdtYXR0ZXJtb3N0LWRhdGEtYmxldmUtaW5kZXhlczovbWF0dGVybW9zdC9ibGV2ZS1pbmRleGVzOnJ3JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gU0VSVklDRV9GUUROX01BVFRFUk1PU1RfODA2NQogICAgICAtICdNTV9TRVJWSUNFU0VUVElOR1NfU0lURVVSTD0ke1NFUlZJQ0VfRlFETl9NQVRURVJNT1NUfScKICAgICAgLSAnVFo9JHtUWjotVVRDfScKICAgICAgLSBNTV9TUUxTRVRUSU5HU19EUklWRVJOQU1FPXBvc3RncmVzCiAgICAgIC0gJ01NX1NRTFNFVFRJTkdTX0RBVEFTT1VSQ0U9cG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZSZjb25uZWN0X3RpbWVvdXQ9MTAnCiAgICAgIC0gTU1fQkxFVkVTRVRUSU5HU19JTkRFWERJUj0vbWF0dGVybW9zdC9ibGV2ZS1pbmRleGVzCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3JlczoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vMTI3LjAuMC4xOjgwNjUnCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAKICBwb3N0Z3JlczoKICAgIGltYWdlOiAncG9zdGdyZXM6MTYtYWxwaW5lJwogICAgdm9sdW1lczoKICAgICAgLSAncG9zdGdyZXNxbC1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICAtIFBPU1RHUkVTX1VTRVI9JFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogICAgICAtIFBPU1RHUkVTX1BBU1NXT1JEPSRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIC0gJ1BPU1RHUkVTX0RCPSR7UE9TVEdSRVNfREI6LW1hdHRlcm1vc3R9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAo=", "tags": [ "mattermost", "slack", @@ -2044,6 +2153,19 @@ "minversion": "0.0.0", "port": "8080" }, + "portainer": { + "documentation": "https://docs.portainer.io?utm_source=coolify.io", + "slogan": "Portainer is a lightweight management UI for Docker", + "compose": "c2VydmljZXM6CiAgcG9ydGFpbmVyOgogICAgaW1hZ2U6ICdwb3J0YWluZXIvcG9ydGFpbmVyLWNlOmFscGluZScKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9QT1JUQUlORVJfOTAwMAogICAgdm9sdW1lczoKICAgICAgLSAnL3Zhci9ydW4vZG9ja2VyLnNvY2s6L3Zhci9ydW4vZG9ja2VyLnNvY2snCiAgICAgIC0gJ3BvcnRhaW5lcl9kYXRhOi9kYXRhJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICd3Z2V0IC1xTy0gaHR0cDovLzEyNy4wLjAuMTo5MDAwLycKICAgICAgaW50ZXJ2YWw6IDIwcwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAK", + "tags": [ + "docker", + "management", + "ui" + ], + "logo": "svgs/portainer.png", + "minversion": "0.0.0", + "port": "9000" + }, "posthog": { "documentation": "https://posthog.com?utm_source=coolify.io", "slogan": "The single platform to analyze, test, observe, and deploy new features", @@ -2059,6 +2181,19 @@ "logo": "svgs/posthog.svg", "minversion": "4.0.0-beta.222" }, + "postiz": { + "documentation": "https://docs.postiz.com?utm_source=coolify.io", + "slogan": "Open source social media scheduling tool.", + "compose": "c2VydmljZXM6CiAgcG9zdGl6OgogICAgaW1hZ2U6ICdnaGNyLmlvL2dpdHJvb21ocS9wb3N0aXotYXBwOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9QT1NUSVpfNTAwMAogICAgICAtICdNQUlOX1VSTD0ke1NFUlZJQ0VfRlFETl9QT1NUSVp9JwogICAgICAtICdGUk9OVEVORF9VUkw9JHtTRVJWSUNFX0ZRRE5fUE9TVElafScKICAgICAgLSAnTkVYVF9QVUJMSUNfQkFDS0VORF9VUkw9JHtTRVJWSUNFX0ZRRE5fUE9TVElafS9hcGknCiAgICAgIC0gJ0pXVF9TRUNSRVQ9JHtTRVJWSUNFX1BBU1NXT1JEX0pXVFNFQ1JFVH0nCiAgICAgIC0gJ0RBVEFCQVNFX1VSTD1wb3N0Z3Jlc3FsOi8vJHtTRVJWSUNFX1VTRVJfUE9TVEdSRVNRTH06JHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTUUx9QHBvc3RncmVzcWw6NTQzMi8ke1BPU1RHUkVTUUxfREFUQUJBU0U6LXBvc3Rpei1kYn0nCiAgICAgIC0gJ1JFRElTX1VSTD1yZWRpczovLyR7U0VSVklDRV9VU0VSX1JFRElTfToke1NFUlZJQ0VfUEFTU1dPUkRfUkVESVN9QHJlZGlzOjYzNzknCiAgICAgIC0gJ0JBQ0tFTkRfSU5URVJOQUxfVVJMPWh0dHA6Ly9sb2NhbGhvc3Q6MzAwMCcKICAgICAgLSBJU19HRU5FUkFMPXRydWUKICAgICAgLSBTVE9SQUdFX1BST1ZJREVSPWxvY2FsCiAgICAgIC0gVVBMT0FEX0RJUkVDVE9SWT0vdXBsb2FkcwogICAgICAtIE5FWFRfUFVCTElDX1VQTE9BRF9ESVJFQ1RPUlk9L3VwbG9hZHMKICAgICAgLSAnWF9BUElfS0VZPSR7U0VSVklDRV9YX0FQSX0nCiAgICAgIC0gJ1hfQVBJX1NFQ1JFVD0ke1NFUlZJQ0VfWF9TRUNSRVR9JwogICAgICAtICdSRURESVRfQ0xJRU5UX0lEPSR7U0VSVklDRV9SRURESVRfQVBJfScKICAgICAgLSAnUkVERElUX0NMSUVOVF9TRUNSRVQ9JHtTRVJWSUNFX1JFRERJVF9TRUNSRVR9JwogICAgICAtICdUSUtUT0tfQ0xJRU5UX0lEPSR7U0VSVklDRV9USUtUT0tfSUR9JwogICAgICAtICdUSUtUT0tfQ0xJRU5UX1NFQ1JFVD0ke1NFUlZJQ0VfVElLVE9LX1NFQ1JFVH0nCiAgICAgIC0gJ1NMQUNLX0lEPSR7U0VSVklDRV9TTEFDS19JRH0nCiAgICAgIC0gJ1NMQUNLX1NFQ1JFVD0ke1NFUlZJQ0VfU0xBQ0tfU0VDUkVUfScKICAgICAgLSAnUElOVEVSRVNUX0NMSUVOVF9JRD0ke1NFUlZJQ0VfUElOVEVSRVNUX0lEfScKICAgICAgLSAnUElOVEVSRVNUX0NMSUVOVF9TRUNSRVQ9JHtTRVJWSUNFX1BJTlRFUkVTVF9TRUNSRVR9JwogICAgICAtICdEUklCQkxFX0NMSUVOVF9JRD0ke1NFUlZJQ0VfRFJJQkJMRV9JRH0nCiAgICAgIC0gJ0RSSUJCTEVfQ0xJRU5UX1NFQ1JFVD0ke1NFUlZJQ0VfRFJJQkJMRV9TRUNSRVR9JwogICAgICAtICdESVNDT1JEX0NMSUVOVF9JRD0ke1NFUlZJQ0VfRElTQ09SRF9JRH0nCiAgICAgIC0gJ0RJU0NPUkRfQ0xJRU5UX1NFQ1JFVD0ke1NFUlZJQ0VfRElTQ09SRF9TRUNSRVR9JwogICAgICAtICdESVNDT1JEX0JPVF9UT0tFTl9JRD0ke1NFUlZJQ0VfRElTQ09SRF9UT0tFTn0nCiAgICAgIC0gJ1lPVVRVQkVfQ0xJRU5UX0lEPSR7U0VSVklDRV9ZT1VUVUJFX0lEfScKICAgICAgLSAnWU9VVFVCRV9DTElFTlRfU0VDUkVUPSR7U0VSVklDRV9ZT1VUVUJFX1NFQ1JFVH0nCiAgICAgIC0gJ01BU1RPRE9OX0NMSUVOVF9JRD0ke1NFUlZJQ0VfTUFTVE9ET05fSUR9JwogICAgICAtICdNQVNUT0RPTl9DTElFTlRfU0VDUkVUPSR7U0VSVklDRV9NQVNUT0RPTl9TRUNSRVR9JwogICAgICAtICdMSU5LRURJTl9DTElFTlRfSUQ9JHtTRVJWSUNFX0xJTktFRElOX0lEfScKICAgICAgLSAnTElOS0VESU5fQ0xJRU5UX1NFQ1JFVD0ke1NFUlZJQ0VfTElOS0VESU5fU0VDUkVUfScKICAgICAgLSAnSU5TVEFHUkFNX0FQUF9JRD0ke1NFUlZJQ0VfSU5TVEFHUkFNX0lEfScKICAgICAgLSAnSU5TVEFHUkFNX0FQUF9TRUNSRVQ9JHtTRVJWSUNFX0lOU1RBR1JBTV9TRUNSRVR9JwogICAgICAtICdGQUNFQk9PS19BUFBfSUQ9JHtTRVJWSUNFX0ZBQ0VCT09LX0lEfScKICAgICAgLSAnRkFDRUJPT0tfQVBQX1NFQ1JFVD0ke1NFUlZJQ0VfRkFDRUJPT0tfU0VDUkVUfScKICAgICAgLSAnVEhSRUFEU19BUFBfSUQ9JHtTRVJWSUNFX1RIUkVBRFNfSUR9JwogICAgICAtICdUSFJFQURTX0FQUF9TRUNSRVQ9JHtTRVJWSUNFX1RIUkVBRFNfU0VDUkVUfScKICAgICAgLSAnR0lUSFVCX0NMSUVOVF9JRD0ke1NFUlZJQ0VfR0lUSFVCX0lEfScKICAgICAgLSAnR0lUSFVCX0NMSUVOVF9TRUNSRVQ9JHtTRVJWSUNFX0dJVEhVQl9TRUNSRVR9JwogICAgICAtICdCRUVISUlWRV9BUElfS0VZPSR7U0VSVklDRV9CRUVISUlWRV9LRVl9JwogICAgICAtICdCRUVISUlWRV9QVUJMSUNBVElPTl9JRD0ke1NFUlZJQ0VfQkVFSElJVkVfUFVCSUR9JwogICAgICAtICdPUEVOQUlfQVBJX0tFWT0ke1NFUlZJQ0VfT1BFTkFJX0tFWX0nCiAgICB2b2x1bWVzOgogICAgICAtICdwb3N0aXpfY29uZmlnOi9jb25maWcvJwogICAgICAtICdwb3N0aXpfdXBsb2FkczovdXBsb2Fkcy8nCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3JlczoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgICByZWRpczoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICd3Z2V0IC1xTy0gaHR0cDovLzEyNy4wLjAuMTo1MDAwLycKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogIHBvc3RncmVzOgogICAgaW1hZ2U6ICdwb3N0Z3JlczoxNC41JwogICAgdm9sdW1lczoKICAgICAgLSAncG9zdGl6X3Bvc3RncmVzcWxfZGF0YTovdmFyL2xpYi9wb3N0Z3Jlc3FsL2RhdGEnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnUE9TVEdSRVNfVVNFUj0ke1NFUlZJQ0VfVVNFUl9QT1NUR1JFU1FMfScKICAgICAgLSAnUE9TVEdSRVNfUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTUUx9JwogICAgICAtICdQT1NUR1JFU19EQj0ke1BPU1RHUkVTUUxfREFUQUJBU0U6LXBvc3Rpei1kYn0nCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3BnX2lzcmVhZHkgLVUgJCR7UE9TVEdSRVNfVVNFUn0gLWQgJCR7UE9TVEdSRVNfREJ9JwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgcmVkaXM6CiAgICBpbWFnZTogJ3JlZGlzOjcuMicKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3Bvc3Rpel9yZWRpc19kYXRhOi9kYXRhJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ1JFRElTX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9SRURJU30nCiAgICAgIC0gJ1JFRElTX1VTRVI9JHtTRVJWSUNFX1VTRVJfUkVESVN9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIHJlZGlzLWNsaQogICAgICAgIC0gUElORwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDIwCg==", + "tags": [ + "post everywhere", + "social media", + "planning" + ], + "logo": "svgs/postiz.svg", + "minversion": "0.0.0", + "port": "5000" + }, "prefect": { "documentation": "https://www.prefect.io/?utm_source=coolify.io", "slogan": "Prefect is an orchestration and observability platform that empowers developers to build and scale workflows quickly.", @@ -2139,6 +2274,20 @@ "minversion": "0.0.0", "port": "3000" }, + "readeck": { + "documentation": "https://readeck.org/en/docs/?utm_source=coolify.io", + "slogan": "Simple web application that lets you save the precious readable content of web pages you like and want to keep forever.", + "compose": "c2VydmljZXM6CiAgcmVhZGVjazoKICAgIGltYWdlOiAnY29kZWJlcmcub3JnL3JlYWRlY2svcmVhZGVjazpsYXRlc3QnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fUkVBREVDSwogICAgICAtICdSRUFERUNLX1VTRV9YX0ZPUldBUkRFRD0ke1JFQURFQ0tfVVNFX1hfRk9SV0FSREVEOi10cnVlfScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3JlYWRlY2tfZGF0YTovcmVhZGVjaycKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSAvYmluL3JlYWRlY2sKICAgICAgICAtIGhlYWx0aGNoZWNrCiAgICAgICAgLSAnLWNvbmZpZycKICAgICAgICAtIGNvbmZpZy50b21sCiAgICAgIGludGVydmFsOiAzMHMKICAgICAgdGltZW91dDogMnMKICAgICAgcmV0cmllczogMwo=", + "tags": [ + "read-it-later", + "pocket-alternative", + "omnivore-alternative", + "instapaper-alternative" + ], + "logo": "svgs/readeck.svg", + "minversion": "0.0.0", + "port": "8000" + }, "rocketchat": { "documentation": "https://github.com/RocketChat/Rocket.Chat?utm_source=coolify.io", "slogan": "Self-hosted, secure and highly customizable open-source communication platform for organizations with sophisticated security and privacy concerns.", @@ -2346,7 +2495,7 @@ "syncthing": { "documentation": "https://syncthing.net/?utm_source=coolify.io", "slogan": "Syncthing synchronizes files between two or more computers in real time.", - "compose": "c2VydmljZXM6CiAgc3luY3RoaW5nOgogICAgaW1hZ2U6ICdsc2NyLmlvL2xpbnV4c2VydmVyL3N5bmN0aGluZzpsYXRlc3QnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fU1lOQ1RISU5HXzgzODQKICAgICAgLSBQVUlEPTEwMDAKICAgICAgLSBQR0lEPTEwMDAKICAgICAgLSBUWj1FdGMvVVRDCiAgICB2b2x1bWVzOgogICAgICAtICdzeW5jdGhpbmctY29uZmlnOi9jb25maWcnCiAgICAgIC0gJ3N5bmN0aGluZy1kYXRhMTovZGF0YTEnCiAgICAgIC0gJ3N5bmN0aGluZy1kYXRhMjovZGF0YTInCiAgICBwb3J0czoKICAgICAgLSAnMjIwMDA6MjIwMDAvdGNwJwogICAgICAtICcyMjAwMDoyMjAwMC91ZHAnCiAgICAgIC0gJzIxMDI3OjIxMDI3L3VkcCcK", + "compose": "c2VydmljZXM6CiAgc3luY3RoaW5nOgogICAgaW1hZ2U6ICdsc2NyLmlvL2xpbnV4c2VydmVyL3N5bmN0aGluZzpsYXRlc3QnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fU1lOQ1RISU5HXzgzODQKICAgICAgLSBQVUlEPTEwMDAKICAgICAgLSBQR0lEPTEwMDAKICAgICAgLSAnVFo9JHtUWjotRXRjL1VUQ30nCiAgICB2b2x1bWVzOgogICAgICAtICdzeW5jdGhpbmdfY29uZmlnOi9jb25maWcnCiAgICAgIC0gJ3N5bmN0aGluZ19kYXRhMTovZGF0YTEnCiAgICAgIC0gJ3N5bmN0aGluZ19kYXRhMjovZGF0YTInCiAgICBwb3J0czoKICAgICAgLSAnMjIwMDA6MjIwMDAvdGNwJwogICAgICAtICcyMjAwMDoyMjAwMC91ZHAnCiAgICAgIC0gJzIxMDI3OjIxMDI3L3VkcCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAnd2dldCAtcU8tIGh0dHA6Ly8xMjcuMC4wLjE6ODM4NC8nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAK", "tags": [ "filestorage", "data", @@ -2655,6 +2804,19 @@ "minversion": "0.0.0", "port": "8080" }, + "web-check": { + "documentation": "https://github.com/lissy93/web-check?utm_source=coolify.io", + "slogan": "All-in-one OSINT tool for analysing any website", + "compose": "c2VydmljZXM6CiAgd2ViLWNoZWNrOgogICAgaW1hZ2U6IGxpc3N5OTMvd2ViLWNoZWNrCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fV0VCQ0hFQ0tfMzAwMAogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICd3Z2V0IC1xTy0gaHR0cDovLzEyNy4wLjAuMTozMDAwLycKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAo=", + "tags": [ + "osint", + "website", + "analysis" + ], + "logo": "svgs/web-check.png", + "minversion": "0.0.0", + "port": "3000" + }, "weblate": { "documentation": "https://weblate.org?utm_source=coolify.io", "slogan": "Weblate is a libre software web-based continuous localization system.", @@ -2684,6 +2846,19 @@ "minversion": "0.0.0", "port": "5000" }, + "wikijs": { + "documentation": "https://docs.requarks.io?utm_source=coolify.io", + "slogan": "The most powerful and extensible open source Wiki software.", + "compose": "c2VydmljZXM6CiAgd2lraWpzOgogICAgaW1hZ2U6ICdnaGNyLmlvL3JlcXVhcmtzL3dpa2k6MicKICAgIGRlcGVuZHNfb246CiAgICAgIC0gcG9zdGdyZXMKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9XSUtJSlNfMzAwMAogICAgICAtIERCX1RZUEU9cG9zdGdyZXMKICAgICAgLSBEQl9IT1NUPXBvc3RncmVzCiAgICAgIC0gREJfUE9SVD01NDMyCiAgICAgIC0gJ0RCX1VTRVI9JHtTRVJWSUNFX1VTRVJfUE9TVEdSRVN9JwogICAgICAtICdEQl9QQVNTPSR7U0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU30nCiAgICAgIC0gJ0RCX05BTUU9JHtQT1NUR1JFU1FMX0RBVEFCQVNFOi13aWtpLWRifScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OiAnY3VybCAtLWZhaWwgaHR0cDovL2xvY2FsaG9zdDozMDAwIHx8IGV4aXQgMScKICBwb3N0Z3JlczoKICAgIGltYWdlOiAncG9zdGdyZXM6MTYtYWxwaW5lJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ1BPU1RHUkVTX0RCPSR7UE9TVEdSRVNRTF9EQVRBQkFTRTotd2lraS1kYn0nCiAgICAgIC0gJ1BPU1RHUkVTX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU30nCiAgICAgIC0gJ1BPU1RHUkVTX1VTRVI9JHtTRVJWSUNFX1VTRVJfUE9TVEdSRVN9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBub25lCiAgICB2b2x1bWVzOgogICAgICAtICd3aWtpanMtcG9zdGdyZXNxbC1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScK", + "tags": [ + "wiki", + "collaboration", + "documentation" + ], + "logo": "svgs/wikijs.svg", + "minversion": "0.0.0", + "port": "80" + }, "windmill": { "documentation": "https://www.windmill.dev/docs/?utm_source=coolify.io", "slogan": "Windmill is a developer platform to build production-grade multi-steps automations and internal apps.", From 77d718d2f5d112a5291fcfd027c2145f44579dfa Mon Sep 17 00:00:00 2001 From: Eric Dahl Date: Fri, 8 Nov 2024 15:18:46 -0500 Subject: [PATCH 40/48] Update prefect.yaml --- templates/compose/prefect.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/templates/compose/prefect.yaml b/templates/compose/prefect.yaml index b33c29db8..8bd2e576e 100644 --- a/templates/compose/prefect.yaml +++ b/templates/compose/prefect.yaml @@ -12,6 +12,7 @@ services: condition: service_healthy environment: - SERVICE_FQDN_PREFECT_4200 + - PREFECT_API_URL=${SERVICE_FQDN_PREFECT}/api - PREFECT_API_DATABASE_CONNECTION_URL=postgresql+asyncpg://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgresql:5432/${POSTGRES_DB:-prefect} - PREFECT_API_KEY=${SERVICE_PASSWORD_APIKEY} - PREFECT_EXPERIMENTAL_WARN=${PREFECT_EXPERIMENTAL_WARN:-false} From f9be45c9d326f2a631b80424922cd2ead1854219 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 21:25:21 +0100 Subject: [PATCH 41/48] Update service-templates.json --- templates/service-templates.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/service-templates.json b/templates/service-templates.json index a39585682..80e0b99aa 100644 --- a/templates/service-templates.json +++ b/templates/service-templates.json @@ -2197,7 +2197,7 @@ "prefect": { "documentation": "https://www.prefect.io/?utm_source=coolify.io", "slogan": "Prefect is an orchestration and observability platform that empowers developers to build and scale workflows quickly.", - "compose": "c2VydmljZXM6CiAgcHJlZmVjdDoKICAgIGltYWdlOiAncHJlZmVjdGhxL3ByZWZlY3Q6My1sYXRlc3QnCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3Jlc3FsOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fUFJFRkVDVF80MjAwCiAgICAgIC0gJ1BSRUZFQ1RfQVBJX0RBVEFCQVNFX0NPTk5FQ1RJT05fVVJMPXBvc3RncmVzcWwrYXN5bmNwZzovLyR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfToke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVN9QHBvc3RncmVzcWw6NTQzMi8ke1BPU1RHUkVTX0RCOi1wcmVmZWN0fScKICAgICAgLSAnUFJFRkVDVF9BUElfS0VZPSR7U0VSVklDRV9QQVNTV09SRF9BUElLRVl9JwogICAgICAtICdQUkVGRUNUX0VYUEVSSU1FTlRBTF9XQVJOPSR7UFJFRkVDVF9FWFBFUklNRU5UQUxfV0FSTjotZmFsc2V9JwogICAgICAtICdQUkVGRUNUX0VYUEVSSU1FTlRBTF9FTkFCTEVfU0NIRURVTEVfQ09OQ1VSUkVOQ1k9JHtQUkVGRUNUX0VYUEVSSU1FTlRBTF9FTkFCTEVfU0NIRURVTEVfQ09OQ1VSUkVOQ1k6LWZhbHNlfScKICAgICAgLSAnUFJFRkVDVF9SVU5ORVJfU0VSVkVSX0VOQUJMRT0ke1BSRUZFQ1RfUlVOTkVSX1NFUlZFUl9FTkFCTEU6LWZhbHNlfScKICAgICAgLSAnUFJFRkVDVF9ERUZBVUxUX1dPUktfUE9PTF9OQU1FPSR7REVGQVVMVF9QT09MX05BTUU6LWRlZmF1bHR9JwogICAgY29tbWFuZDoKICAgICAgLSBwcmVmZWN0CiAgICAgIC0gc2VydmVyCiAgICAgIC0gc3RhcnQKICAgICAgLSAnLS1ob3N0JwogICAgICAtIDAuMC4wLjAKICAgICAgLSAnLS1wb3J0JwogICAgICAtICc0MjAwJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIHB5dGhvbgogICAgICAgIC0gJy1jJwogICAgICAgIC0gImltcG9ydCByZXF1ZXN0cyBhcyByO3IuZ2V0KCdodHRwOi8vMTI3LjAuMC4xOjQyMDAvYXBpL2hlYWx0aCcpLnJhaXNlX2Zvcl9zdGF0dXMoKSIKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDMKICBwb3N0Z3Jlc3FsOgogICAgaW1hZ2U6ICdwb3N0Z3JlczoxNi1hbHBpbmUnCiAgICB2b2x1bWVzOgogICAgICAtICdwZy1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICAtIFBPU1RHUkVTX1VTRVI9JFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogICAgICAtIFBPU1RHUkVTX1BBU1NXT1JEPSRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIC0gJ1BPU1RHUkVTX0RCPSR7UE9TVEdSRVNfREI6LXByZWZlY3R9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDMKICBhZ2VudDoKICAgIGltYWdlOiAncHJlZmVjdGhxL3ByZWZlY3Q6My1weXRob24zLjEyJwogICAgZGVwZW5kc19vbjoKICAgICAgcHJlZmVjdDoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW50cnlwb2ludDoKICAgICAgLSAvb3B0L3ByZWZlY3QvZW50cnlwb2ludC5zaAogICAgICAtIHByZWZlY3QKICAgICAgLSB3b3JrZXIKICAgICAgLSBzdGFydAogICAgICAtICctLXBvb2w9JHtERUZBVUxUX1BPT0xfTkFNRX0nCiAgICAgIC0gJy0td2l0aC1oZWFsdGhjaGVjaycKICAgICAgLSAnLS1uYW1lPSR7REVGQVVMVF9XT1JLRVJfTkFNRX0nCiAgICAgIC0gJy0tbGltaXQ9JHtERUZBVUxUX1BPT0xfTElNSVR9JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ1BSRUZFQ1RfQVBJX1VSTD1odHRwOi8vcHJlZmVjdDo0MjAwL2FwaScKICAgICAgLSAnUFJFRkVDVF9BUElfS0VZPSR7U0VSVklDRV9QQVNTV09SRF9BUElLRVl9JwogICAgICAtICdERUZBVUxUX1BPT0xfTkFNRT0ke0RFRkFVTFRfUE9PTF9OQU1FOi1kZWZhdWx0fScKICAgICAgLSAnREVGQVVMVF9QT09MX0xJTUlUPSR7REVGQVVMVF9QT09MX0xJTUlUOi0xfScKICAgICAgLSAnREVGQVVMVF9XT1JLRVJfTkFNRT0ke0RFRkFVTFRfV09SS0VSX05BTUU6LXdvcmtlcjF9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtIHB3ZAogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogMwo=", + "compose": "c2VydmljZXM6CiAgcHJlZmVjdDoKICAgIGltYWdlOiAncHJlZmVjdGhxL3ByZWZlY3Q6My1sYXRlc3QnCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3Jlc3FsOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fUFJFRkVDVF80MjAwCiAgICAgIC0gJ1BSRUZFQ1RfQVBJX1VSTD0ke1NFUlZJQ0VfRlFETl9QUkVGRUNUfS9hcGknCiAgICAgIC0gJ1BSRUZFQ1RfQVBJX0RBVEFCQVNFX0NPTk5FQ1RJT05fVVJMPXBvc3RncmVzcWwrYXN5bmNwZzovLyR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfToke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVN9QHBvc3RncmVzcWw6NTQzMi8ke1BPU1RHUkVTX0RCOi1wcmVmZWN0fScKICAgICAgLSAnUFJFRkVDVF9BUElfS0VZPSR7U0VSVklDRV9QQVNTV09SRF9BUElLRVl9JwogICAgICAtICdQUkVGRUNUX0VYUEVSSU1FTlRBTF9XQVJOPSR7UFJFRkVDVF9FWFBFUklNRU5UQUxfV0FSTjotZmFsc2V9JwogICAgICAtICdQUkVGRUNUX0VYUEVSSU1FTlRBTF9FTkFCTEVfU0NIRURVTEVfQ09OQ1VSUkVOQ1k9JHtQUkVGRUNUX0VYUEVSSU1FTlRBTF9FTkFCTEVfU0NIRURVTEVfQ09OQ1VSUkVOQ1k6LWZhbHNlfScKICAgICAgLSAnUFJFRkVDVF9SVU5ORVJfU0VSVkVSX0VOQUJMRT0ke1BSRUZFQ1RfUlVOTkVSX1NFUlZFUl9FTkFCTEU6LWZhbHNlfScKICAgICAgLSAnUFJFRkVDVF9ERUZBVUxUX1dPUktfUE9PTF9OQU1FPSR7REVGQVVMVF9QT09MX05BTUU6LWRlZmF1bHR9JwogICAgY29tbWFuZDoKICAgICAgLSBwcmVmZWN0CiAgICAgIC0gc2VydmVyCiAgICAgIC0gc3RhcnQKICAgICAgLSAnLS1ob3N0JwogICAgICAtIDAuMC4wLjAKICAgICAgLSAnLS1wb3J0JwogICAgICAtICc0MjAwJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIHB5dGhvbgogICAgICAgIC0gJy1jJwogICAgICAgIC0gImltcG9ydCByZXF1ZXN0cyBhcyByO3IuZ2V0KCdodHRwOi8vMTI3LjAuMC4xOjQyMDAvYXBpL2hlYWx0aCcpLnJhaXNlX2Zvcl9zdGF0dXMoKSIKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDMKICBwb3N0Z3Jlc3FsOgogICAgaW1hZ2U6ICdwb3N0Z3JlczoxNi1hbHBpbmUnCiAgICB2b2x1bWVzOgogICAgICAtICdwZy1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICAtIFBPU1RHUkVTX1VTRVI9JFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogICAgICAtIFBPU1RHUkVTX1BBU1NXT1JEPSRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIC0gJ1BPU1RHUkVTX0RCPSR7UE9TVEdSRVNfREI6LXByZWZlY3R9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDMKICBhZ2VudDoKICAgIGltYWdlOiAncHJlZmVjdGhxL3ByZWZlY3Q6My1weXRob24zLjEyJwogICAgZGVwZW5kc19vbjoKICAgICAgcHJlZmVjdDoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW50cnlwb2ludDoKICAgICAgLSAvb3B0L3ByZWZlY3QvZW50cnlwb2ludC5zaAogICAgICAtIHByZWZlY3QKICAgICAgLSB3b3JrZXIKICAgICAgLSBzdGFydAogICAgICAtICctLXBvb2w9JHtERUZBVUxUX1BPT0xfTkFNRX0nCiAgICAgIC0gJy0td2l0aC1oZWFsdGhjaGVjaycKICAgICAgLSAnLS1uYW1lPSR7REVGQVVMVF9XT1JLRVJfTkFNRX0nCiAgICAgIC0gJy0tbGltaXQ9JHtERUZBVUxUX1BPT0xfTElNSVR9JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ1BSRUZFQ1RfQVBJX1VSTD1odHRwOi8vcHJlZmVjdDo0MjAwL2FwaScKICAgICAgLSAnUFJFRkVDVF9BUElfS0VZPSR7U0VSVklDRV9QQVNTV09SRF9BUElLRVl9JwogICAgICAtICdERUZBVUxUX1BPT0xfTkFNRT0ke0RFRkFVTFRfUE9PTF9OQU1FOi1kZWZhdWx0fScKICAgICAgLSAnREVGQVVMVF9QT09MX0xJTUlUPSR7REVGQVVMVF9QT09MX0xJTUlUOi0xfScKICAgICAgLSAnREVGQVVMVF9XT1JLRVJfTkFNRT0ke0RFRkFVTFRfV09SS0VSX05BTUU6LXdvcmtlcjF9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtIHB3ZAogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogMwo=", "tags": [ "workflow", "orchestration", From 9a86c97ff926c778bfa66203854ee538ccbb66c1 Mon Sep 17 00:00:00 2001 From: Diogo Carvalho Date: Fri, 8 Nov 2024 22:12:43 +0000 Subject: [PATCH 42/48] Fix mosquitto image --- public/svgs/mosquitto.png | Bin 16118 -> 0 bytes public/svgs/mosquitto.svg | 1 + 2 files changed, 1 insertion(+) delete mode 100644 public/svgs/mosquitto.png create mode 100644 public/svgs/mosquitto.svg diff --git a/public/svgs/mosquitto.png b/public/svgs/mosquitto.png deleted file mode 100644 index eb287a7cdd7e2d0a0bbacbd375f6ae6b065df280..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16118 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

p!*Z_;7&1;8)3J~i4?v1 zs@=pyBd33ZvBc;CErQjh$yL;wMC|2_xiMoQPumupqv>Sz#TKJ>h`8=o=w}lbW;^s* z?@1tglh-NKE`j74KQ2-|bd^@T5yvqk5cz!>tzQ?2m)N4Qk~1tENN?va5fsnAfjghx zzY{Uo*hCyHcjSOEap6Juk>V3RS~f;eg!m!*jlIxafO417EZP~q&XT=7A!QYy1t;Lu ztbwu0o_%JE9?an19BR3D{R@6^RmbNi(K!a0z4$WFXu*53uSE4fyA|tJTYjW!Bj86j zDe`+oU|q|{vGt-0?OTj${V%p+8`~EIX5Q**$72L%o{wH&wr8Jmjbn{!0;ja46(W)P z&|b|l#E)?o{^0}mOz%&*7T}TDFE-;sipy>9!bRAliysu2ML)b+V0>PQ>Ai(W%nN|n zl8vVOof*0KykGR^VChmg&U)wEoU^j z*4uuSz?1Zir6{+L7pD!O%wKlQIAn$(uZ=h*s8Tb-!Z}Mk#V=?3PDocCT5y@eK#62n z;OHiD%eoBs@T3(G)yUm)c?n;=YR<$>GG;S@malph8A`Ahi{D#vr(8Z@7cJ9k;qjrl zFROZyUSK+|9Tc^y`uP$EabHV)sCPs|nE4D`*49~s?DjZ2vyxU?Y~O@%J=^ZS!3@FP zxlaqojj^y7*3AH64kk${{;Z^kbk=OP`nm^Ls(5K`nxLsFIqOCBP)MI%-44as`5*$U zdz549Rkbddd(3Um?OW0NhpMjksZZb|B1!EozhkPAH{^z^$ioqkN_fxW?B&~CG&{^` z^{&SNtsG98Bkc&RtWfeOzQ6z}7)c&dz4kwIgiUo%sk}$9($dH!OfAM**f&MWMtBx= zs$pXa(ygqnKJx<>HrQ8|_Cu0BSMJaM<6lZ!wozEKS7Jqubu@bWD2(l+2hp}Ja^tnf z0vDI{G3H^&h4@D%U(Mq&XSWD`jGwx_0%_tABr`???y$T$bLN8Oak!)r_|G(4i4^+A z#*P|~2aKH{Nl;dJ!<$uYNAkoXOprv~D2bJ>-&}+Cu(QYJMBmVwwUzT+mArlOhrMwL zTKoL-8$0L^e?RBHOvkf*H&4=PqpN>!d%D@=PWxzZ`M?fpIRfXMYE_mJ3j>|Zp$nB= z!*6}Va;aOYMi<8OF1s8zV`bt!xw_FX7p=d5bC}`p|jy{67lLg1*u}VAL9~ zYP;bnp|X8^i*rAzdv`-rWyhs?7N+B9JY_aZDa;_MU}RdSI>&MnxW z+E{;`zJ{S6GzOP{cK!6-1@wl8|GBdfbgxjHDa#g@DwkUb_UTVNYJ+C-mb~`{Rht;8 z`>>S$c@O^7tgK=mST?x4rw#YUvXm|abix(hxbGFp*0m75E_*Y>3{%yK+KHOLIVUH| zzgqPJ=b!U;Qr6nqwW%^&`5#=N`#zs9hg4J5tyWq=ap?K?j&2RWub{EPW4}D|+As#I zl`GH64^yQpbTy0J-hMv${TDyW&S9)ygQkpccON662RhTyrCV{alid6iG3giwKX}-| zBqFU$$fdmtN-Z9@+VUew9kUK#^>HUN1Oq}jrRpPtu|)K1R>yfAhupzSKTB!j!k)XG z$EUha^%K1%VSD%?H|;3ShWaWcXjU|3x{SyS%gbbIXuPps!GNB1KH6cVMZmR=EA%9|8s9p^4;U|cs@Nb+?9dg$447ISYDB?B(oxsCvvBBS)C{t?VvWycfl$~9f1(RAaK!pKEM-v@X3u1p7xiQqr%PFZ$;=gJ8?;tAz)r8 zCSUzxAWpJ8|KC6&eFHy*3Dto&&26z#fEnuPurWz9=o-c_$QMNMpTU_nDjZ(I$|Cjv zg%>V>ABNgNh`heFta;wyV;iBrN}@EyA6ebe&*C9IC|wy?DsiP=mvb)EJNM*eTa*AK zG=zSa)N_re(3k5BuOlvV7^f}=2%0FIyuW$~R8ST)*T`v@FrYfy#E>?MWb`uu%ed4b@Sg~wuG}q z%Yf+&aN~}HM&Pr|?d(l6?sWgO6Ls1)!S74M7HpZEM4`s-nXQAn7)g&D(S*!<2wX}T z^4_soWr#86`b;(YybMYiMkRI~2~-ib33mgm*L|h5oAHgN+^R_8za{mHo?2c|MSSXE zYCks^oefY%Y-Mp-A)DoW^Z}=;NjOGSU*_tblGGNsp4p=}iobqhQdM!Ld}d?iAPiqs zKS=B*G^rXeR%?ToSB13JWO>f?U+&}brlbl^=S40j{nNDeq9=ouc;y4Rx0t+7jA}Ub z`9Q09rWj+u!>U6i3dzqz6xv86AN4v}-D!uBTJrjavhhbCEZ#d4=hB-FU16xzBjVp)&EQWuq?MZIxh1d1o-{WO*DQZg; zipw8aTiuOoz~M%1erusTLI0aHg`pyLpu|{Ypeh7SqppB3UY^Nld(^fSyiDYa7q+-X z^lBY9E_CnxuZ|>(i*4kZ@ha|M8j0~hF!{xNYX=s&Tc8SlR7MPSSp)j6n%g)Yy_H)e zCqi?VGb~DOX_?X7IFC>~7lY#&Sabwai9{a#9|GkBPU0**GsQ;RiVG{s7tg z9mHX9LeocAsXx2!UPJvYzsRG}|5s*VbdMd&<9Mq8lv(9F|mlxaeppWHpVDO*=2~TcEEPl3?et>(pF8wlEc4iEW^H5i9Umok{ zQyg6yLGVP*gEl>#IRV_*TJz2w-Pg{VJmQ6`>ZD*s8lOG({_T*YKuGV|oI86z?S@3wfRu%!S=$}; zn$tC4BX_+EqG%yBdU+b8cXwVqpWk6d599IuVQy9W3PGls61=GQIxhT}b!#K6zc(&p z^WpAPeM6aHl{}PH$1m$sT=p_&!RWo~4{fMJnlkb5c10?@&(9KTJBQzCVt?Z(BDS+7 zDtfsuUvd9Ut!`(ADwo9h3h($_dBS8Xuj=^15$rAq8+#cVTb|?whUs ztH{p#F;g_z9TpTC+XC2@ijQC>yWZJYrqEb>IqRW`An~exj`Zg7HB)oib!3gNmTF2- zTP#^Cev_Gkdku|fdnWMTGAO)Pd;1sv|LVhFYpjf4lLxB!eZC!!Nw&}Ih|vDW0IcR0 z+4T@uITF`sI$3ARM%0U%j#TF}>k8^miArD1wn0PR-Y_7K|qpD1C>UH z-Z@`~EUtIzeS;cd9F*Dr(6Zl*(Pa${`~#B{%U{Ism9uHwBk$3HzHqs%vl$`oL7(#e z^@ag;lo0Jh4*>v}WI^(^JO89~cUr&b2Bq&yhF{s=u<3XV^ZSGd3jjxczQ&`%ff4%P zHt2>ScjzeqAlF@lVP_vAxXE*C&?{kwuOF|3*f=2*(YX!?9S)gV;ThOXJ*Pd5*+Z3k zJV3qb6X5}9r>%rtk;3A&T^Ql>Pgta^6CzQL!U*%I$o|K&s%j8NsV{OL;#vu@?mY`9 za1`2#Q4ls^_cn5U`vE&&ZWW#MIJwg$bX=Y+>gw0~>awJFOAG(x*Ks@fdx-Ds3rkj^ z&K2nIhv5L$vy(mr9|8yvUkY0LM!t1L!;44|Ie9GE`4CspAX@`+ZaVqjw7KTEry4%Qms&XaOvR@iNwqcdrd1~oL*T|Jm5ZsdN1Jue}8mw0m;H zA%Z97K68j6zS_YT<<-SYnP514NtjDP$JLB559>*vc*rKKfB5u!7XVmHTd7jKwn@fa`#ia`>XTdwhfb|qiXpgm6!eF=k@1%hCpRX0F&cnuO8FIG{Yda>3arHB zHJSUkhn=S^lTF%8{rX2V`#-}s{_;;O-G`2&jV!xC4ha8y582%P`a5J7--4`G92Y{d7{}`Tw;K7qpjE^WZh1BQfc0OmH3MFYaWxRlf`7Z4`Ye?xwwI9gWy;4+bd!(Cu3=TsPIRZuf+I) z?@B5*!fTbOjN#DCU>%J*Qo|u4v4np_GjOd7T?Yhm!aB5~EC&Sg!cNTM6C{aXT~PD* zZpdO+iFP9!@L<8N#W}Qb)B)XTu=eZ(LF~SU^1lGx$vi!9pFH0B6m6C!hjoY#Yx+z4 zC)xNfnzzqKCgi`p`40ANUs|4a;41j>{{Pfsi;z`6p1;B^om)XsHl>eYHR=E image/svg+xml \ No newline at end of file From fe66cf2fafb5a5e0c8c7b76c239d5344ab56344a Mon Sep 17 00:00:00 2001 From: Rindy Tuy <80165041+Rinzyy@users.noreply.github.com> Date: Sat, 9 Nov 2024 01:49:28 -0600 Subject: [PATCH 43/48] Update twenty.yaml fix running (starting) for Twenty --- templates/compose/twenty.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/templates/compose/twenty.yaml b/templates/compose/twenty.yaml index 8770798fd..fe350248f 100644 --- a/templates/compose/twenty.yaml +++ b/templates/compose/twenty.yaml @@ -15,6 +15,9 @@ services: - CACHE_STORAGE_TYPE=${CACHE_STORAGE_TYPE:-redis} - REDIS_HOST=redis - REDIS_PORT=6379 + + # https://twenty.com/developers/section/self-hosting/docker-compose + - APP_SECRET=$SERVICE_BASE64_32_SECRET # https://twenty.com/developers/section/self-hosting/self-hosting-var#security - API_RATE_LIMITING_TTL=${API_RATE_LIMITING_TTL:-100} From ed952f31b3c8a3a418720b997f134505b51765cf Mon Sep 17 00:00:00 2001 From: Rindy Tuy <80165041+Rinzyy@users.noreply.github.com> Date: Sat, 9 Nov 2024 01:58:52 -0600 Subject: [PATCH 44/48] Update twenty.yaml --- templates/compose/twenty.yaml | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/templates/compose/twenty.yaml b/templates/compose/twenty.yaml index fe350248f..44ee1f6d6 100644 --- a/templates/compose/twenty.yaml +++ b/templates/compose/twenty.yaml @@ -13,21 +13,14 @@ services: - FRONT_BASE_URL=$SERVICE_FQDN_TWENTY - ENABLE_DB_MIGRATIONS=true - CACHE_STORAGE_TYPE=${CACHE_STORAGE_TYPE:-redis} - - REDIS_HOST=redis - - REDIS_PORT=6379 - - # https://twenty.com/developers/section/self-hosting/docker-compose - - APP_SECRET=$SERVICE_BASE64_32_SECRET - + - REDIS_URL=redis://redis:6379 + # https://twenty.com/developers/section/self-hosting/self-hosting-var#security - API_RATE_LIMITING_TTL=${API_RATE_LIMITING_TTL:-100} - API_RATE_LIMITING_LIMIT=${API_RATE_LIMITING_LIMIT:-100} # https://twenty.com/developers/section/self-hosting/self-hosting-var#tokens - - ACCESS_TOKEN_SECRET=$SERVICE_BASE64_32_ACCESS - - LOGIN_TOKEN_SECRET=$SERVICE_BASE64_32_LOGIN - - REFRESH_TOKEN_SECRET=$SERVICE_BASE64_32_REFRESH - - FILE_TOKEN_SECRET=$SERVICE_BASE64_32_FILE + - APP_SECRET=$SERVICE_BASE64_32_SECRET - POSTGRES_ADMIN_PASSWORD=$SERVICE_PASSWORD_POSTGRES - PG_DATABASE_URL=postgres://postgres:$SERVICE_PASSWORD_POSTGRES@postgres:5432/default From d5e2432d56a7caf273563df780b0c9b0fcb35074 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn?= Date: Sat, 9 Nov 2024 10:57:29 +0100 Subject: [PATCH 45/48] fix: trigger.dev db host & sslmode=disable --- templates/compose/trigger.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/compose/trigger.yaml b/templates/compose/trigger.yaml index 9353336b2..a0007031d 100644 --- a/templates/compose/trigger.yaml +++ b/templates/compose/trigger.yaml @@ -20,9 +20,9 @@ x-common-env: &common-env ENCRYPTION_KEY: $SERVICE_PASSWORD_64_ENCRYPTION PROVIDER_SECRET: $SERVICE_PASSWORD_64_PROVIDER COORDINATOR_SECRET: $SERVICE_PASSWORD_64_COORDINATOR - DATABASE_HOST: postgresql - DATABASE_URL: postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/$POSTGRES_DB - DIRECT_URL: postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/$POSTGRES_DB + DATABASE_HOST: postgresql:5432 + DATABASE_URL: postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/$POSTGRES_DB?sslmode=disable + DIRECT_URL: postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/$POSTGRES_DB?sslmode=disable REDIS_HOST: redis REDIS_PORT: 6379 REDIS_TLS_DISABLED: true From 5b4acfc76a87a570f78544525d5a0c35d01ad7dc Mon Sep 17 00:00:00 2001 From: Darren Sisson Date: Sat, 9 Nov 2024 20:22:38 +0000 Subject: [PATCH 46/48] first pass appwrite fix --- templates/compose/appwrite.yaml | 203 +++++++++++++++++++++++--------- 1 file changed, 145 insertions(+), 58 deletions(-) diff --git a/templates/compose/appwrite.yaml b/templates/compose/appwrite.yaml index 5eaa7bf8f..6865d98e3 100644 --- a/templates/compose/appwrite.yaml +++ b/templates/compose/appwrite.yaml @@ -3,19 +3,10 @@ # tags: backend-as-a-service, platform # logo: svgs/appwrite.svg - -x-logging: &x-logging - logging: - driver: 'json-file' - options: - max-file: '5' - max-size: '10m' - services: appwrite: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 container_name: appwrite - <<: *x-logging volumes: - appwrite-uploads:/storage/uploads:rw - appwrite-cache:/storage/cache:rw @@ -36,10 +27,13 @@ services: - _APP_CONSOLE_HOSTNAMES=${_APP_CONSOLE_HOSTNAMES:-localhost,appwrite.io,*.appwrite.io} - _APP_SYSTEM_EMAIL_NAME=${_APP_SYSTEM_EMAIL_NAME:-Appwrite} - _APP_SYSTEM_EMAIL_ADDRESS=${_APP_SYSTEM_EMAIL_ADDRESS:-team@appwrite.io} - - _APP_SYSTEM_SECURITY_EMAIL_ADDRESS=${_APP_SYSTEM_SECURITY_EMAIL_ADDRESS:-certs@appwrite.io} + - _APP_SYSTEM_TEAM_EMAIL=${_APP_SYSTEM_TEAM_EMAIL:-team@appwrite.io} + - _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io} - _APP_SYSTEM_RESPONSE_FORMAT=${_APP_SYSTEM_RESPONSE_FORMAT} - _APP_OPTIONS_ABUSE=${_APP_OPTIONS_ABUSE:-enabled} + - _APP_OPTIONS_ROUTER_PROTECTION=${_APP_OPTIONS_ROUTER_PROTECTION:-disabled} - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} + - _APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=${_APP_OPTIONS_FUNCTIONS_FORCE_HTTPS:-disabled} - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE - _APP_DOMAIN_TARGET=$SERVICE_FQDN_APPWRITE @@ -118,11 +112,24 @@ services: - _APP_MIGRATIONS_FIREBASE_CLIENT_ID=${_APP_MIGRATIONS_FIREBASE_CLIENT_ID} - _APP_MIGRATIONS_FIREBASE_CLIENT_SECRET=${_APP_MIGRATIONS_FIREBASE_CLIENT_SECRET} - _APP_ASSISTANT_OPENAI_API_KEY=${_APP_ASSISTANT_OPENAI_API_KEY} + - _APP_MESSAGE_SMS_TEST_DSN=${_APP_MESSAGE_SMS_TEST_DSN} + - _APP_MESSAGE_EMAIL_TEST_DSN=${_APP_MESSAGE_EMAIL_TEST_DSN} + - _APP_MESSAGE_PUSH_TEST_DSN=${_APP_MESSAGE_PUSH_TEST_DSN} + - _APP_CONSOLE_COUNTRIES_DENYLIST=${_APP_CONSOLE_COUNTRIES_DENYLIST} + - _APP_EXPERIMENT_LOGGING_PROVIDER=${_APP_EXPERIMENT_LOGGING_PROVIDER} + - _APP_EXPERIMENT_LOGGING_CONFIG=${_APP_EXPERIMENT_LOGGING_CONFIG} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} + + appwrite-console: + image: appwrite/console:5.0.12 + container_name: appwrite-console + environment: + - SERVICE_FQDN_APPWRITE=/console appwrite-realtime: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: realtime - <<: *x-logging + container_name: appwrite-realtime depends_on: - appwrite-mariadb - appwrite-redis @@ -144,11 +151,11 @@ services: - _APP_USAGE_STATS=${_APP_USAGE_STATS:-enabled} - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-audits: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-audits - <<: *x-logging container_name: appwrite-worker-audits depends_on: - appwrite-redis @@ -168,11 +175,11 @@ services: - _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-webhooks: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-webhooks - <<: *x-logging container_name: appwrite-worker-webhooks depends_on: - appwrite-redis @@ -181,18 +188,19 @@ services: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} - - _APP_SYSTEM_SECURITY_EMAIL_ADDRESS=${_APP_SYSTEM_SECURITY_EMAIL_ADDRESS:-certs@appwrite.io} + - _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} - _APP_REDIS_PASS=${_APP_REDIS_PASS} - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} + - _APP_WEBHOOK_MAX_FAILED_ATTEMPTS=${_APP_WEBHOOK_MAX_FAILED_ATTEMPTS:-3} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-deletes: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-deletes - <<: *x-logging container_name: appwrite-worker-deletes depends_on: - appwrite-redis @@ -241,11 +249,11 @@ services: - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - _APP_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE - _APP_EXECUTOR_HOST=${_APP_EXECUTOR_HOST:-http://appwrite-executor/v1} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-databases: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-databases - <<: *x-logging container_name: appwrite-worker-databases depends_on: - appwrite-redis @@ -265,11 +273,13 @@ services: - _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} + - _APP_WORKERS_NUM=${_APP_WORKERS_NUM:-1} + - _APP_QUEUE_NAME=${_APP_QUEUE_NAME:-appwrite} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-builds: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-builds - <<: *x-logging container_name: appwrite-worker-builds depends_on: - appwrite-redis @@ -324,11 +334,11 @@ services: - _APP_STORAGE_WASABI_SECRET=${_APP_STORAGE_WASABI_SECRET} - _APP_STORAGE_WASABI_REGION=${_APP_STORAGE_WASABI_REGION:-eu-central-1} - _APP_STORAGE_WASABI_BUCKET=${_APP_STORAGE_WASABI_BUCKET} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-certificates: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-certificates - <<: *x-logging container_name: appwrite-worker-certificates depends_on: - appwrite-redis @@ -343,7 +353,8 @@ services: - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE - _APP_DOMAIN_TARGET=$SERVICE_FQDN_APPWRITE - _APP_DOMAIN_FUNCTIONS=$SERVICE_FQDN_APPWRITE - - _APP_SYSTEM_SECURITY_EMAIL_ADDRESS=${_APP_SYSTEM_SECURITY_EMAIL_ADDRESS:-certs@appwrite.io} + - _APP_EMAIL_CERTIFICATES=${_APP_EMAIL_CERTIFICATES:-enabled} + - _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -355,11 +366,11 @@ services: - _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-functions: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-functions - <<: *x-logging container_name: appwrite-worker-functions depends_on: - appwrite-redis @@ -369,6 +380,8 @@ services: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE + - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -390,11 +403,11 @@ services: - _APP_DOCKER_HUB_EMAIL=${_APP_DOCKER_HUB_EMAIL} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-mails: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-mails - <<: *x-logging container_name: appwrite-worker-mails depends_on: - appwrite-redis @@ -415,12 +428,16 @@ services: - _APP_SMTP_PASSWORD=${_APP_SMTP_PASSWORD} - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} + - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE + - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-messaging: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-messaging - <<: *x-logging container_name: appwrite-worker-messaging + volumes: + - appwrite-uploads:/storage/uploads:rw depends_on: - appwrite-redis environment: @@ -440,11 +457,33 @@ services: - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - _APP_SMS_FROM=${_APP_SMS_FROM} - _APP_SMS_PROVIDER=${_APP_SMS_PROVIDER} + - _APP_SMS_PROJECTS_DENY_LIST=${_APP_SMS_PROJECTS_DENY_LIST} + - _APP_STORAGE_DEVICE=${_APP_STORAGE_DEVICE:-local} + - _APP_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY} + - _APP_STORAGE_S3_SECRET=${_APP_STORAGE_S3_SECRET} + - _APP_STORAGE_S3_REGION=${_APP_STORAGE_S3_REGION:-us-east-1} + - _APP_STORAGE_S3_BUCKET=${_APP_STORAGE_S3_BUCKET} + - _APP_STORAGE_DO_SPACES_ACCESS_KEY=${_APP_STORAGE_DO_SPACES_ACCESS_KEY} + - _APP_STORAGE_DO_SPACES_SECRET=${_APP_STORAGE_DO_SPACES_SECRET} + - _APP_STORAGE_DO_SPACES_REGION=${_APP_STORAGE_DO_SPACES_REGION:-us-east-1} + - _APP_STORAGE_DO_SPACES_BUCKET=${_APP_STORAGE_DO_SPACES_BUCKET} + - _APP_STORAGE_BACKBLAZE_ACCESS_KEY=${_APP_STORAGE_BACKBLAZE_ACCESS_KEY} + - _APP_STORAGE_BACKBLAZE_SECRET=${_APP_STORAGE_BACKBLAZE_SECRET} + - _APP_STORAGE_BACKBLAZE_REGION=${_APP_STORAGE_BACKBLAZE_REGION:-us-west-004} + - _APP_STORAGE_BACKBLAZE_BUCKET=${_APP_STORAGE_BACKBLAZE_BUCKET} + - _APP_STORAGE_LINODE_ACCESS_KEY=${_APP_STORAGE_LINODE_ACCESS_KEY} + - _APP_STORAGE_LINODE_SECRET=${_APP_STORAGE_LINODE_SECRET} + - _APP_STORAGE_LINODE_REGION=${_APP_STORAGE_LINODE_REGION:-eu-central-1} + - _APP_STORAGE_LINODE_BUCKET=${_APP_STORAGE_LINODE_BUCKET} + - _APP_STORAGE_WASABI_ACCESS_KEY=${_APP_STORAGE_WASABI_ACCESS_KEY} + - _APP_STORAGE_WASABI_SECRET=${_APP_STORAGE_WASABI_SECRET} + - _APP_STORAGE_WASABI_REGION=${_APP_STORAGE_WASABI_REGION:-eu-central-1} + - _APP_STORAGE_WASABI_BUCKET=${_APP_STORAGE_WASABI_BUCKET} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-migrations: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-migrations - <<: *x-logging container_name: appwrite-worker-migrations depends_on: - appwrite-mariadb @@ -454,7 +493,7 @@ services: - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE - _APP_DOMAIN_TARGET=$SERVICE_FQDN_APPWRITE - - _APP_SYSTEM_SECURITY_EMAIL_ADDRESS=${_APP_SYSTEM_SECURITY_EMAIL_ADDRESS:-certs@appwrite.io} + - _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -468,11 +507,11 @@ services: - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - _APP_MIGRATIONS_FIREBASE_CLIENT_ID=${_APP_MIGRATIONS_FIREBASE_CLIENT_ID} - _APP_MIGRATIONS_FIREBASE_CLIENT_SECRET=${_APP_MIGRATIONS_FIREBASE_CLIENT_SECRET} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-maintenance: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: maintenance - <<: *x-logging container_name: appwrite-maintenance depends_on: - appwrite-redis @@ -499,12 +538,13 @@ services: - _APP_MAINTENANCE_RETENTION_AUDIT=${_APP_MAINTENANCE_RETENTION_AUDIT:-1209600} - _APP_MAINTENANCE_RETENTION_USAGE_HOURLY=${_APP_MAINTENANCE_RETENTION_USAGE_HOURLY:-8640000} - _APP_MAINTENANCE_RETENTION_SCHEDULES=${_APP_MAINTENANCE_RETENTION_SCHEDULES:-86400} + - _APP_MAINTENANCE_DELAY=${_APP_MAINTENANCE_DELAY} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-usage: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-usage container_name: appwrite-worker-usage - <<: *x-logging restart: unless-stopped depends_on: - appwrite-redis @@ -526,11 +566,11 @@ services: - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - _APP_USAGE_AGGREGATION_INTERVAL=${_APP_USAGE_AGGREGATION_INTERVAL:-30} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-worker-usage-dump: - image: appwrite/appwrite:1.6 + image: appwrite/appwrite:1.6.0 entrypoint: worker-usage-dump - <<: *x-logging container_name: appwrite-worker-usage-dump depends_on: - appwrite-redis @@ -552,13 +592,12 @@ services: - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - _APP_USAGE_AGGREGATION_INTERVAL=${_APP_USAGE_AGGREGATION_INTERVAL:-30} + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} - appwrite-scheduler-functions: - image: appwrite/appwrite:1.6 + appwrite-task-scheduler-functions: + image: appwrite/appwrite:1.6.0 entrypoint: schedule-functions - container_name: appwrite-scheduler-functions - <<: *x-logging - restart: unless-stopped + container_name: appwrite-task-scheduler-functions depends_on: - appwrite-mariadb - appwrite-redis @@ -575,13 +614,12 @@ services: - _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite} - _APP_DB_USER=$SERVICE_USER_MARIADB - _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} - appwrite-scheduler-messages: - image: appwrite/appwrite:1.6 - entrypoint: schedule-messages - container_name: appwrite-scheduler-messages - <<: *x-logging - restart: unless-stopped + appwrite-task-scheduler-executions: + image: appwrite/appwrite:1.6.0 + entrypoint: schedule-executions + container_name: appwrite-task-scheduler-executions depends_on: - appwrite-mariadb - appwrite-redis @@ -598,18 +636,43 @@ services: - _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite} - _APP_DB_USER=$SERVICE_USER_MARIADB - _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} + + appwrite-task-scheduler-messages: + image: appwrite/appwrite:1.6.0 + entrypoint: schedule-messages + container_name: appwrite-task-scheduler-messages + depends_on: + - appwrite-mariadb + - appwrite-redis + environment: + - _APP_ENV=${_APP_ENV:-production} + - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} + - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} + - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} + - _APP_REDIS_USER=${_APP_REDIS_USER} + - _APP_REDIS_PASS=${_APP_REDIS_PASS} + - _APP_DB_HOST=${_APP_DB_HOST:-appwrite-mariadb} + - _APP_DB_PORT=${_APP_DB_PORT:-3306} + - _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite} + - _APP_DB_USER=$SERVICE_USER_MARIADB + - _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB + - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} appwrite-assistant: image: appwrite/assistant:0.4.0 container_name: appwrite-assistant environment: - _APP_ASSISTANT_OPENAI_API_KEY + openruntimes-executor: container_name: openruntimes-executor hostname: appwrite-executor - <<: *x-logging stop_signal: SIGINT - image: openruntimes/executor:0.4.9 + image: openruntimes/executor:0.6.11 + networks: + - runtimes volumes: - /var/run/docker.sock:/var/run/docker.sock - appwrite-builds:/storage/builds:rw @@ -618,12 +681,13 @@ services: environment: - OPR_EXECUTOR_INACTIVE_TRESHOLD=${_APP_FUNCTIONS_INACTIVE_THRESHOLD} - OPR_EXECUTOR_MAINTENANCE_INTERVAL=${_APP_FUNCTIONS_MAINTENANCE_INTERVAL} - - OPR_EXECUTOR_NETWORK=${_APP_FUNCTIONS_RUNTIMES_NETWORK} + - OPR_EXECUTOR_NETWORK=${_APP_FUNCTIONS_RUNTIMES_NETWORK:-runtimes} - OPR_EXECUTOR_DOCKER_HUB_USERNAME=${_APP_DOCKER_HUB_USERNAME} - OPR_EXECUTOR_DOCKER_HUB_PASSWORD=${_APP_DOCKER_HUB_PASSWORD} - OPR_EXECUTOR_ENV=${_APP_ENV:-production} - OPR_EXECUTOR_RUNTIMES=${_APP_FUNCTIONS_RUNTIMES} - OPR_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE + - OPR_EXECUTOR_RUNTIME_VERSIONS=v2,v4 - OPR_EXECUTOR_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - OPR_EXECUTOR_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - OPR_EXECUTOR_STORAGE_DEVICE=${_APP_STORAGE_DEVICE:-local} @@ -648,10 +712,28 @@ services: - OPR_EXECUTOR_STORAGE_WASABI_REGION=${_APP_STORAGE_WASABI_REGION} - OPR_EXECUTOR_STORAGE_WASABI_BUCKET=${_APP_STORAGE_WASABI_BUCKET} + openruntimes-proxy: + container_name: openruntimes-proxy + hostname: proxy + stop_signal: SIGINT + image: openruntimes/proxy:0.5.5 + networks: + - runtimes + environment: + - OPR_PROXY_WORKER_PER_CORE=${OPR_PROXY_WORKER_PER_CORE:-1} + - OPR_PROXY_ENV=${_APP_ENV:-production} + - OPR_PROXY_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE + - OPR_PROXY_SECRET=$SERVICE_PASSWORD_64_APPWRITE + - OPR_PROXY_LOGGING_CONFIG=$_APP_LOGGING_CONFIG + - OPR_PROXY_ALGORITHM=random + - OPR_PROXY_EXECUTORS=exc1 + - OPR_PROXY_HEALTHCHECK_INTERVAL=10000 + - OPR_PROXY_MAX_TIMEOUT=600 + - OPR_PROXY_HEALTHCHECK=enabled + appwrite-mariadb: image: mariadb:10.11 container_name: appwrite-mariadb - <<: *x-logging volumes: - appwrite-mariadb:/var/lib/mysql:rw environment: @@ -659,11 +741,12 @@ services: - MYSQL_DATABASE=${_APP_DB_SCHEMA:-appwrite} - MYSQL_USER=$SERVICE_USER_MARIADB - MYSQL_PASSWORD=$SERVICE_PASSWORD_MARIADB + - MARIADB_AUTO_UPGRADE=1 command: 'mysqld --innodb-flush-method=fsync' + appwrite-redis: image: redis:7.2.4-alpine container_name: appwrite-redis - <<: *x-logging command: > redis-server --maxmemory 512mb @@ -671,6 +754,10 @@ services: --maxmemory-samples 5 volumes: - appwrite-redis:/data:rw +networks: + runtimes: + name: runtimes + volumes: appwrite-mariadb: appwrite-redis: From 1ee0a857533975adc6e5ba4838d621f0ee22fc7f Mon Sep 17 00:00:00 2001 From: Darren Sisson Date: Mon, 11 Nov 2024 17:39:11 +0000 Subject: [PATCH 47/48] fix DOMAIN and OPENSSLKEY --- templates/compose/appwrite.yaml | 64 ++++++++++++++++----------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/templates/compose/appwrite.yaml b/templates/compose/appwrite.yaml index 6865d98e3..039d5b8ec 100644 --- a/templates/compose/appwrite.yaml +++ b/templates/compose/appwrite.yaml @@ -34,10 +34,10 @@ services: - _APP_OPTIONS_ROUTER_PROTECTION=${_APP_OPTIONS_ROUTER_PROTECTION:-disabled} - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} - _APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=${_APP_OPTIONS_FUNCTIONS_FORCE_HTTPS:-disabled} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} - - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE - - _APP_DOMAIN_TARGET=$SERVICE_FQDN_APPWRITE - - _APP_DOMAIN_FUNCTIONS=$SERVICE_FQDN_APPWRITE + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE + - _APP_DOMAIN=$SERVICE_URL_APPWRITE + - _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE + - _APP_DOMAIN_FUNCTIONS=$SERVICE_URL_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -138,7 +138,7 @@ services: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - _APP_OPTIONS_ABUSE=${_APP_OPTIONS_ABUSE:-enabled} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -163,7 +163,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -187,7 +187,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} @@ -214,7 +214,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -261,7 +261,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -290,7 +290,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE - _APP_EXECUTOR_HOST=${_APP_EXECUTOR_HOST:-http://appwrite-executor/v1} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} @@ -312,7 +312,7 @@ services: - _APP_FUNCTIONS_CPUS=${_APP_FUNCTIONS_CPUS:-0} - _APP_FUNCTIONS_MEMORY=${_APP_FUNCTIONS_MEMORY:-0} - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} - - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE + - _APP_DOMAIN=$SERVICE_URL_APPWRITE - _APP_STORAGE_DEVICE=${_APP_STORAGE_DEVICE:-local} - _APP_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY:-local} - _APP_STORAGE_S3_SECRET=${_APP_STORAGE_S3_SECRET} @@ -349,10 +349,10 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} - - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE - - _APP_DOMAIN_TARGET=$SERVICE_FQDN_APPWRITE - - _APP_DOMAIN_FUNCTIONS=$SERVICE_FQDN_APPWRITE + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE + - _APP_DOMAIN=$SERVICE_URL_APPWRITE + - _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE + - _APP_DOMAIN_FUNCTIONS=$SERVICE_URL_APPWRITE - _APP_EMAIL_CERTIFICATES=${_APP_EMAIL_CERTIFICATES:-enabled} - _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} @@ -379,8 +379,8 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} - - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE + - _APP_DOMAIN=$SERVICE_URL_APPWRITE - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} @@ -414,7 +414,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_SYSTEM_EMAIL_NAME=${_APP_SYSTEM_EMAIL_NAME:-Appwrite} - _APP_SYSTEM_EMAIL_ADDRESS=${_APP_SYSTEM_EMAIL_ADDRESS:-team@appwrite.io} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} @@ -428,7 +428,7 @@ services: - _APP_SMTP_PASSWORD=${_APP_SMTP_PASSWORD} - _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER} - _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG} - - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE + - _APP_DOMAIN=$SERVICE_URL_APPWRITE - _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled} - _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES} @@ -443,7 +443,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -490,9 +490,9 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} - - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE - - _APP_DOMAIN_TARGET=$SERVICE_FQDN_APPWRITE + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE + - _APP_DOMAIN=$SERVICE_URL_APPWRITE + - _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE - _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io} - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} @@ -518,10 +518,10 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_DOMAIN=$SERVICE_FQDN_APPWRITE - - _APP_DOMAIN_TARGET=$SERVICE_FQDN_APPWRITE - - _APP_DOMAIN_FUNCTIONS=$SERVICE_FQDN_APPWRITE - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_DOMAIN=$SERVICE_URL_APPWRITE + - _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE + - _APP_DOMAIN_FUNCTIONS=$SERVICE_URL_APPWRITE + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -552,7 +552,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_DB_HOST=${_APP_DB_HOST:-appwrite-mariadb} - _APP_DB_PORT=${_APP_DB_PORT:-3306} - _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite} @@ -578,7 +578,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_DB_HOST=${_APP_DB_HOST:-appwrite-mariadb} - _APP_DB_PORT=${_APP_DB_PORT:-3306} - _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite} @@ -604,7 +604,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -626,7 +626,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} @@ -648,7 +648,7 @@ services: environment: - _APP_ENV=${_APP_ENV:-production} - _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6} - - _APP_OPENSSL_KEY_V1=${_APP_OPENSSL_KEY_V1} + - _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE - _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis} - _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379} - _APP_REDIS_USER=${_APP_REDIS_USER} From 390d24c41cef45c297689ce3e7b45b22ce38d5ee Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Tue, 12 Nov 2024 13:52:29 +0100 Subject: [PATCH 48/48] Update service-templates.json --- templates/service-templates.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/service-templates.json b/templates/service-templates.json index 80e0b99aa..fc3cbe452 100644 --- a/templates/service-templates.json +++ b/templates/service-templates.json @@ -79,7 +79,7 @@ "appwrite": { "documentation": "https://appwrite.io?utm_source=coolify.io", "slogan": "A backend-as-a-service platform that simplifies the web & mobile app development.", - "compose": "eC1sb2dnaW5nOgogIGxvZ2dpbmc6CiAgICBkcml2ZXI6IGpzb24tZmlsZQogICAgb3B0aW9uczoKICAgICAgbWF4LWZpbGU6ICc1JwogICAgICBtYXgtc2l6ZTogMTBtCnNlcnZpY2VzOgogIGFwcHdyaXRlOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIHZvbHVtZXM6CiAgICAgIC0gJ2FwcHdyaXRlLXVwbG9hZHM6L3N0b3JhZ2UvdXBsb2FkczpydycKICAgICAgLSAnYXBwd3JpdGUtY2FjaGU6L3N0b3JhZ2UvY2FjaGU6cncnCiAgICAgIC0gJ2FwcHdyaXRlLWNvbmZpZzovc3RvcmFnZS9jb25maWc6cncnCiAgICAgIC0gJ2FwcHdyaXRlLWNlcnRpZmljYXRlczovc3RvcmFnZS9jZXJ0aWZpY2F0ZXM6cncnCiAgICAgIC0gJ2FwcHdyaXRlLWZ1bmN0aW9uczovc3RvcmFnZS9mdW5jdGlvbnM6cncnCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgICAgLSBhcHB3cml0ZS1yZWRpcwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gU0VSVklDRV9GUUROX0FQUFdSSVRFPS8KICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtICdfQVBQX0xPQ0FMRT0ke19BUFBfTE9DQUxFOi1lbn0nCiAgICAgIC0gJ19BUFBfQ09OU09MRV9XSElURUxJU1RfUk9PVD0ke19BUFBfQ09OU09MRV9XSElURUxJU1RfUk9PVDotZW5hYmxlZH0nCiAgICAgIC0gJ19BUFBfQ09OU09MRV9XSElURUxJU1RfRU1BSUxTPSR7X0FQUF9DT05TT0xFX1dISVRFTElTVF9FTUFJTFN9JwogICAgICAtICdfQVBQX0NPTlNPTEVfV0hJVEVMSVNUX0lQUz0ke19BUFBfQ09OU09MRV9XSElURUxJU1RfSVBTfScKICAgICAgLSAnX0FQUF9DT05TT0xFX0hPU1ROQU1FUz0ke19BUFBfQ09OU09MRV9IT1NUTkFNRVM6LWxvY2FsaG9zdCxhcHB3cml0ZS5pbywqLmFwcHdyaXRlLmlvfScKICAgICAgLSAnX0FQUF9TWVNURU1fRU1BSUxfTkFNRT0ke19BUFBfU1lTVEVNX0VNQUlMX05BTUU6LUFwcHdyaXRlfScKICAgICAgLSAnX0FQUF9TWVNURU1fRU1BSUxfQUREUkVTUz0ke19BUFBfU1lTVEVNX0VNQUlMX0FERFJFU1M6LXRlYW1AYXBwd3JpdGUuaW99JwogICAgICAtICdfQVBQX1NZU1RFTV9TRUNVUklUWV9FTUFJTF9BRERSRVNTPSR7X0FQUF9TWVNURU1fU0VDVVJJVFlfRU1BSUxfQUREUkVTUzotY2VydHNAYXBwd3JpdGUuaW99JwogICAgICAtICdfQVBQX1NZU1RFTV9SRVNQT05TRV9GT1JNQVQ9JHtfQVBQX1NZU1RFTV9SRVNQT05TRV9GT1JNQVR9JwogICAgICAtICdfQVBQX09QVElPTlNfQUJVU0U9JHtfQVBQX09QVElPTlNfQUJVU0U6LWVuYWJsZWR9JwogICAgICAtICdfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM9JHtfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM6LWRpc2FibGVkfScKICAgICAgLSAnX0FQUF9PUEVOU1NMX0tFWV9WMT0ke19BUFBfT1BFTlNTTF9LRVlfVjF9JwogICAgICAtIF9BUFBfRE9NQUlOPSRTRVJWSUNFX0ZRRE5fQVBQV1JJVEUKICAgICAgLSBfQVBQX0RPTUFJTl9UQVJHRVQ9JFNFUlZJQ0VfRlFETl9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOX0ZVTkNUSU9OUz0kU0VSVklDRV9GUUROX0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9ST09UX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQlJPT1QKICAgICAgLSAnX0FQUF9TTVRQX0hPU1Q9JHtfQVBQX1NNVFBfSE9TVH0nCiAgICAgIC0gJ19BUFBfU01UUF9QT1JUPSR7X0FQUF9TTVRQX1BPUlR9JwogICAgICAtICdfQVBQX1NNVFBfU0VDVVJFPSR7X0FQUF9TTVRQX1NFQ1VSRX0nCiAgICAgIC0gJ19BUFBfU01UUF9VU0VSTkFNRT0ke19BUFBfU01UUF9VU0VSTkFNRX0nCiAgICAgIC0gJ19BUFBfU01UUF9QQVNTV09SRD0ke19BUFBfU01UUF9QQVNTV09SRH0nCiAgICAgIC0gJ19BUFBfVVNBR0VfU1RBVFM9JHtfQVBQX1VTQUdFX1NUQVRTOi1lbmFibGVkfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTUlUPSR7X0FQUF9TVE9SQUdFX0xJTUlUOi0zMDAwMDAwMH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9QUkVWSUVXX0xJTUlUPSR7X0FQUF9TVE9SQUdFX1BSRVZJRVdfTElNSVQ6LTIwMDAwMDAwfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0FOVElWSVJVUz0ke19BUFBfU1RPUkFHRV9BTlRJVklSVVM6LWRpc2FibGVkfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0FOVElWSVJVU19IT1NUPSR7X0FQUF9TVE9SQUdFX0FOVElWSVJVU19IT1NUOi1hcHB3cml0ZS1jbGFtYXZ9JwogICAgICAtICdfQVBQX1NUT1JBR0VfQU5USVZJUlVTX1BPUlQ9JHtfQVBQX1NUT1JBR0VfQU5USVZJUlVTX1BPUlQ6LTMzMTB9JwogICAgICAtICdfQVBQX1NUT1JBR0VfREVWSUNFPSR7X0FQUF9TVE9SQUdFX0RFVklDRTotbG9jYWx9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9TM19BQ0NFU1NfS0VZfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9TM19TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX1MzX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9TM19CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19SRUdJT049JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OOi11cy13ZXN0LTAwNH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9MSU5PREVfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9SRUdJT049JHtfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTjotZXUtY2VudHJhbC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OOi1ldS1jZW50cmFsLTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfU0laRV9MSU1JVD0ke19BUFBfRlVOQ1RJT05TX1NJWkVfTElNSVQ6LTMwMDAwMDAwfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfVElNRU9VVD0ke19BUFBfRlVOQ1RJT05TX1RJTUVPVVQ6LTkwMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX0JVSUxEX1RJTUVPVVQ9JHtfQVBQX0ZVTkNUSU9OU19CVUlMRF9USU1FT1VUOi05MDB9JwogICAgICAtICdfQVBQX0ZVTkNUSU9OU19DUFVTPSR7X0FQUF9GVU5DVElPTlNfQ1BVUzotMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX01FTU9SWT0ke19BUFBfRlVOQ1RJT05TX01FTU9SWTotMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX1JVTlRJTUVTPSR7X0FQUF9GVU5DVElPTlNfUlVOVElNRVM6LW5vZGUtMjAuMCxwaHAtOC4yLHB5dGhvbi0zLjExLHJ1YnktMy4yfScKICAgICAgLSBfQVBQX0VYRUNVVE9SX1NFQ1JFVD0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX0VYRUNVVE9SX0hPU1Q9JHtfQVBQX0VYRUNVVE9SX0hPU1Q6LWh0dHA6Ly9hcHB3cml0ZS1leGVjdXRvci92MX0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9JTlRFUlZBTD0ke19BUFBfTUFJTlRFTkFOQ0VfSU5URVJWQUw6LTg2NDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9ERUxBWT0ke19BUFBfTUFJTlRFTkFOQ0VfREVMQVl9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9FWEVDVVRJT049JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9FWEVDVVRJT046LTEyMDk2MDB9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9DQUNIRT0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX0NBQ0hFOi0yNTkyMDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fQUJVU0U9JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9BQlVTRTotODY0MDB9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9BVURJVD0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX0FVRElUOi0xMjA5NjAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fVVNBR0VfSE9VUkxZPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fVVNBR0VfSE9VUkxZOi04NjQwMDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fU0NIRURVTEVTPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fU0NIRURVTEVTOi04NjQwMH0nCiAgICAgIC0gJ19BUFBfU01TX1BST1ZJREVSPSR7X0FQUF9TTVNfUFJPVklERVJ9JwogICAgICAtICdfQVBQX1NNU19GUk9NPSR7X0FQUF9TTVNfRlJPTX0nCiAgICAgIC0gJ19BUFBfR1JBUEhRTF9NQVhfQkFUQ0hfU0laRT0ke19BUFBfR1JBUEhRTF9NQVhfQkFUQ0hfU0laRTotMTB9JwogICAgICAtICdfQVBQX0dSQVBIUUxfTUFYX0NPTVBMRVhJVFk9JHtfQVBQX0dSQVBIUUxfTUFYX0NPTVBMRVhJVFk6LTI1MH0nCiAgICAgIC0gJ19BUFBfR1JBUEhRTF9NQVhfREVQVEg9JHtfQVBQX0dSQVBIUUxfTUFYX0RFUFRIOi0zfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX0FQUF9OQU1FPSR7X0FQUF9WQ1NfR0lUSFVCX0FQUF9OQU1FfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX1BSSVZBVEVfS0VZPSR7X0FQUF9WQ1NfR0lUSFVCX1BSSVZBVEVfS0VZfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX0FQUF9JRD0ke19BUFBfVkNTX0dJVEhVQl9BUFBfSUR9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfV0VCSE9PS19TRUNSRVQ9JHtfQVBQX1ZDU19HSVRIVUJfV0VCSE9PS19TRUNSRVR9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfQ0xJRU5UX1NFQ1JFVD0ke19BUFBfVkNTX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX0NMSUVOVF9JRD0ke19BUFBfVkNTX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICAtICdfQVBQX01JR1JBVElPTlNfRklSRUJBU0VfQ0xJRU5UX0lEPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9JRH0nCiAgICAgIC0gJ19BUFBfTUlHUkFUSU9OU19GSVJFQkFTRV9DTElFTlRfU0VDUkVUPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9TRUNSRVR9JwogICAgICAtICdfQVBQX0FTU0lTVEFOVF9PUEVOQUlfQVBJX0tFWT0ke19BUFBfQVNTSVNUQU5UX09QRU5BSV9BUElfS0VZfScKICBhcHB3cml0ZS1yZWFsdGltZToKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42JwogICAgZW50cnlwb2ludDogcmVhbHRpbWUKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fQVBQV1JJVEU9L3YxL3JlYWx0aW1lCiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSAnX0FQUF9PUFRJT05TX0FCVVNFPSR7X0FQUF9PUFRJT05TX0FCVVNFOi1lbmFibGVkfScKICAgICAgLSAnX0FQUF9PUEVOU1NMX0tFWV9WMT0ke19BUFBfT1BFTlNTTF9LRVlfVjF9JwogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX1VTQUdFX1NUQVRTPSR7X0FQUF9VU0FHRV9TVEFUUzotZW5hYmxlZH0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICBhcHB3cml0ZS13b3JrZXItYXVkaXRzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBlbnRyeXBvaW50OiB3b3JrZXItYXVkaXRzCiAgICBsb2dnaW5nOgogICAgICBkcml2ZXI6IGpzb24tZmlsZQogICAgICBvcHRpb25zOgogICAgICAgIG1heC1maWxlOiAnNScKICAgICAgICBtYXgtc2l6ZTogMTBtCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtd29ya2VyLWF1ZGl0cwogICAgZGVwZW5kc19vbjoKICAgICAgLSBhcHB3cml0ZS1yZWRpcwogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gJ19BUFBfT1BFTlNTTF9LRVlfVjE9JHtfQVBQX09QRU5TU0xfS0VZX1YxfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogIGFwcHdyaXRlLXdvcmtlci13ZWJob29rczoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42JwogICAgZW50cnlwb2ludDogd29ya2VyLXdlYmhvb2tzCiAgICBsb2dnaW5nOgogICAgICBkcml2ZXI6IGpzb24tZmlsZQogICAgICBvcHRpb25zOgogICAgICAgIG1heC1maWxlOiAnNScKICAgICAgICBtYXgtc2l6ZTogMTBtCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtd29ya2VyLXdlYmhvb2tzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSAnX0FQUF9PUEVOU1NMX0tFWV9WMT0ke19BUFBfT1BFTlNTTF9LRVlfVjF9JwogICAgICAtICdfQVBQX1NZU1RFTV9TRUNVUklUWV9FTUFJTF9BRERSRVNTPSR7X0FQUF9TWVNURU1fU0VDVVJJVFlfRU1BSUxfQUREUkVTUzotY2VydHNAYXBwd3JpdGUuaW99JwogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogIGFwcHdyaXRlLXdvcmtlci1kZWxldGVzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBlbnRyeXBvaW50OiB3b3JrZXItZGVsZXRlcwogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXdvcmtlci1kZWxldGVzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgdm9sdW1lczoKICAgICAgLSAnYXBwd3JpdGUtdXBsb2Fkczovc3RvcmFnZS91cGxvYWRzOnJ3JwogICAgICAtICdhcHB3cml0ZS1jYWNoZTovc3RvcmFnZS9jYWNoZTpydycKICAgICAgLSAnYXBwd3JpdGUtZnVuY3Rpb25zOi9zdG9yYWdlL2Z1bmN0aW9uczpydycKICAgICAgLSAnYXBwd3JpdGUtYnVpbGRzOi9zdG9yYWdlL2J1aWxkczpydycKICAgICAgLSAnYXBwd3JpdGUtY2VydGlmaWNhdGVzOi9zdG9yYWdlL2NlcnRpZmljYXRlczpydycKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gJ19BUFBfT1BFTlNTTF9LRVlfVjE9JHtfQVBQX09QRU5TU0xfS0VZX1YxfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RFVklDRT0ke19BUFBfU1RPUkFHRV9ERVZJQ0U6LWxvY2FsfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfUzNfQUNDRVNTX0tFWTotbG9jYWx9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX1MzX1NFQ1JFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9TM19SRUdJT049JHtfQVBQX1NUT1JBR0VfUzNfUkVHSU9OOi11cy1lYXN0LTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX1MzX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0RPX1NQQUNFU19TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfUkVHSU9OOi11cy1lYXN0LTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQlVDS0VUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9BQ0NFU1NfS0VZfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVQ9JHtfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX1NFQ1JFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9SRUdJT046LXVzLXdlc3QtMDA0fScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9MSU5PREVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0xJTk9ERV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9MSU5PREVfUkVHSU9OOi1ldS1jZW50cmFsLTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9MSU5PREVfQlVDS0VUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1dBU0FCSV9TRUNSRVQ9JHtfQVBQX1NUT1JBR0VfV0FTQUJJX1NFQ1JFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9SRUdJT046LWV1LWNlbnRyYWwtMX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9CVUNLRVR9JwogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogICAgICAtICdfQVBQX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgICAgIC0gX0FQUF9FWEVDVVRPUl9TRUNSRVQ9JFNFUlZJQ0VfUEFTU1dPUkRfNjRfQVBQV1JJVEUKICAgICAgLSAnX0FQUF9FWEVDVVRPUl9IT1NUPSR7X0FQUF9FWEVDVVRPUl9IT1NUOi1odHRwOi8vYXBwd3JpdGUtZXhlY3V0b3IvdjF9JwogIGFwcHdyaXRlLXdvcmtlci1kYXRhYmFzZXM6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2FwcHdyaXRlOjEuNicKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1kYXRhYmFzZXMKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItZGF0YWJhc2VzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSAnX0FQUF9PUEVOU1NMX0tFWV9WMT0ke19BUFBfT1BFTlNTTF9LRVlfVjF9JwogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogICAgICAtICdfQVBQX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgYXBwd3JpdGUtd29ya2VyLWJ1aWxkczoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42JwogICAgZW50cnlwb2ludDogd29ya2VyLWJ1aWxkcwogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXdvcmtlci1idWlsZHMKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgICAgLSBhcHB3cml0ZS1tYXJpYWRiCiAgICB2b2x1bWVzOgogICAgICAtICdhcHB3cml0ZS1mdW5jdGlvbnM6L3N0b3JhZ2UvZnVuY3Rpb25zOnJ3JwogICAgICAtICdhcHB3cml0ZS1idWlsZHM6L3N0b3JhZ2UvYnVpbGRzOnJ3JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSAnX0FQUF9PUEVOU1NMX0tFWV9WMT0ke19BUFBfT1BFTlNTTF9LRVlfVjF9JwogICAgICAtIF9BUFBfRVhFQ1VUT1JfU0VDUkVUPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfRVhFQ1VUT1JfSE9TVD0ke19BUFBfRVhFQ1VUT1JfSE9TVDotaHR0cDovL2FwcHdyaXRlLWV4ZWN1dG9yL3YxfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfQVBQX05BTUU9JHtfQVBQX1ZDU19HSVRIVUJfQVBQX05BTUV9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfUFJJVkFURV9LRVk9JHtfQVBQX1ZDU19HSVRIVUJfUFJJVkFURV9LRVl9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfQVBQX0lEPSR7X0FQUF9WQ1NfR0lUSFVCX0FQUF9JRH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX1RJTUVPVVQ9JHtfQVBQX0ZVTkNUSU9OU19USU1FT1VUOi05MDB9JwogICAgICAtICdfQVBQX0ZVTkNUSU9OU19CVUlMRF9USU1FT1VUPSR7X0FQUF9GVU5DVElPTlNfQlVJTERfVElNRU9VVDotOTAwfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfQ1BVUz0ke19BUFBfRlVOQ1RJT05TX0NQVVM6LTB9JwogICAgICAtICdfQVBQX0ZVTkNUSU9OU19NRU1PUlk9JHtfQVBQX0ZVTkNUSU9OU19NRU1PUlk6LTB9JwogICAgICAtICdfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM9JHtfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM6LWRpc2FibGVkfScKICAgICAgLSBfQVBQX0RPTUFJTj0kU0VSVklDRV9GUUROX0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9ERVZJQ0U9JHtfQVBQX1NUT1JBR0VfREVWSUNFOi1sb2NhbH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9TM19BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX1MzX0FDQ0VTU19LRVk6LWxvY2FsfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9TM19TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX1MzX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9TM19CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19SRUdJT049JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OOi11cy13ZXN0LTAwNH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9MSU5PREVfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9SRUdJT049JHtfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTjotZXUtY2VudHJhbC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OOi1ldS1jZW50cmFsLTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUfScKICBhcHB3cml0ZS13b3JrZXItY2VydGlmaWNhdGVzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBlbnRyeXBvaW50OiB3b3JrZXItY2VydGlmaWNhdGVzCiAgICBsb2dnaW5nOgogICAgICBkcml2ZXI6IGpzb24tZmlsZQogICAgICBvcHRpb25zOgogICAgICAgIG1heC1maWxlOiAnNScKICAgICAgICBtYXgtc2l6ZTogMTBtCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtd29ya2VyLWNlcnRpZmljYXRlcwogICAgZGVwZW5kc19vbjoKICAgICAgLSBhcHB3cml0ZS1yZWRpcwogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2FwcHdyaXRlLWNvbmZpZzovc3RvcmFnZS9jb25maWc6cncnCiAgICAgIC0gJ2FwcHdyaXRlLWNlcnRpZmljYXRlczovc3RvcmFnZS9jZXJ0aWZpY2F0ZXM6cncnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtICdfQVBQX09QRU5TU0xfS0VZX1YxPSR7X0FQUF9PUEVOU1NMX0tFWV9WMX0nCiAgICAgIC0gX0FQUF9ET01BSU49JFNFUlZJQ0VfRlFETl9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOX1RBUkdFVD0kU0VSVklDRV9GUUROX0FQUFdSSVRFCiAgICAgIC0gX0FQUF9ET01BSU5fRlVOQ1RJT05TPSRTRVJWSUNFX0ZRRE5fQVBQV1JJVEUKICAgICAgLSAnX0FQUF9TWVNURU1fU0VDVVJJVFlfRU1BSUxfQUREUkVTUz0ke19BUFBfU1lTVEVNX1NFQ1VSSVRZX0VNQUlMX0FERFJFU1M6LWNlcnRzQGFwcHdyaXRlLmlvfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogIGFwcHdyaXRlLXdvcmtlci1mdW5jdGlvbnM6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2FwcHdyaXRlOjEuNicKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1mdW5jdGlvbnMKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItZnVuY3Rpb25zCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgICAtIG9wZW5ydW50aW1lcy1leGVjdXRvcgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSAnX0FQUF9PUEVOU1NMX0tFWV9WMT0ke19BUFBfT1BFTlNTTF9LRVlfVjF9JwogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX0ZVTkNUSU9OU19USU1FT1VUPSR7X0FQUF9GVU5DVElPTlNfVElNRU9VVDotOTAwfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfQlVJTERfVElNRU9VVD0ke19BUFBfRlVOQ1RJT05TX0JVSUxEX1RJTUVPVVQ6LTkwMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX0NQVVM9JHtfQVBQX0ZVTkNUSU9OU19DUFVTOi0wfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfTUVNT1JZPSR7X0FQUF9GVU5DVElPTlNfTUVNT1JZOi0wfScKICAgICAgLSBfQVBQX0VYRUNVVE9SX1NFQ1JFVD0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX0VYRUNVVE9SX0hPU1Q9JHtfQVBQX0VYRUNVVE9SX0hPU1Q6LWh0dHA6Ly9hcHB3cml0ZS1leGVjdXRvci92MX0nCiAgICAgIC0gJ19BUFBfVVNBR0VfU1RBVFM9JHtfQVBQX1VTQUdFX1NUQVRTOi1lbmFibGVkfScKICAgICAgLSAnX0FQUF9ET0NLRVJfSFVCX1VTRVJOQU1FPSR7X0FQUF9ET0NLRVJfSFVCX1VTRVJOQU1FfScKICAgICAgLSAnX0FQUF9ET0NLRVJfSFVCX1BBU1NXT1JEPSR7X0FQUF9ET0NLRVJfSFVCX1BBU1NXT1JEfScKICAgICAgLSAnX0FQUF9ET0NLRVJfSFVCX0VNQUlMPSR7X0FQUF9ET0NLRVJfSFVCX0VNQUlMfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogIGFwcHdyaXRlLXdvcmtlci1tYWlsczoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42JwogICAgZW50cnlwb2ludDogd29ya2VyLW1haWxzCiAgICBsb2dnaW5nOgogICAgICBkcml2ZXI6IGpzb24tZmlsZQogICAgICBvcHRpb25zOgogICAgICAgIG1heC1maWxlOiAnNScKICAgICAgICBtYXgtc2l6ZTogMTBtCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtd29ya2VyLW1haWxzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtICdfQVBQX09QRU5TU0xfS0VZX1YxPSR7X0FQUF9PUEVOU1NMX0tFWV9WMX0nCiAgICAgIC0gJ19BUFBfU1lTVEVNX0VNQUlMX05BTUU9JHtfQVBQX1NZU1RFTV9FTUFJTF9OQU1FOi1BcHB3cml0ZX0nCiAgICAgIC0gJ19BUFBfU1lTVEVNX0VNQUlMX0FERFJFU1M9JHtfQVBQX1NZU1RFTV9FTUFJTF9BRERSRVNTOi10ZWFtQGFwcHdyaXRlLmlvfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfU01UUF9IT1NUPSR7X0FQUF9TTVRQX0hPU1R9JwogICAgICAtICdfQVBQX1NNVFBfUE9SVD0ke19BUFBfU01UUF9QT1JUfScKICAgICAgLSAnX0FQUF9TTVRQX1NFQ1VSRT0ke19BUFBfU01UUF9TRUNVUkV9JwogICAgICAtICdfQVBQX1NNVFBfVVNFUk5BTUU9JHtfQVBQX1NNVFBfVVNFUk5BTUV9JwogICAgICAtICdfQVBQX1NNVFBfUEFTU1dPUkQ9JHtfQVBQX1NNVFBfUEFTU1dPUkR9JwogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogICAgICAtICdfQVBQX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgYXBwd3JpdGUtd29ya2VyLW1lc3NhZ2luZzoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42JwogICAgZW50cnlwb2ludDogd29ya2VyLW1lc3NhZ2luZwogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXdvcmtlci1tZXNzYWdpbmcKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gJ19BUFBfT1BFTlNTTF9LRVlfVjE9JHtfQVBQX09QRU5TU0xfS0VZX1YxfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX1NNU19GUk9NPSR7X0FQUF9TTVNfRlJPTX0nCiAgICAgIC0gJ19BUFBfU01TX1BST1ZJREVSPSR7X0FQUF9TTVNfUFJPVklERVJ9JwogIGFwcHdyaXRlLXdvcmtlci1taWdyYXRpb25zOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBlbnRyeXBvaW50OiB3b3JrZXItbWlncmF0aW9ucwogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXdvcmtlci1taWdyYXRpb25zCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gJ19BUFBfT1BFTlNTTF9LRVlfVjE9JHtfQVBQX09QRU5TU0xfS0VZX1YxfScKICAgICAgLSBfQVBQX0RPTUFJTj0kU0VSVklDRV9GUUROX0FQUFdSSVRFCiAgICAgIC0gX0FQUF9ET01BSU5fVEFSR0VUPSRTRVJWSUNFX0ZRRE5fQVBQV1JJVEUKICAgICAgLSAnX0FQUF9TWVNURU1fU0VDVVJJVFlfRU1BSUxfQUREUkVTUz0ke19BUFBfU1lTVEVNX1NFQ1VSSVRZX0VNQUlMX0FERFJFU1M6LWNlcnRzQGFwcHdyaXRlLmlvfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX01JR1JBVElPTlNfRklSRUJBU0VfQ0xJRU5UX0lEPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9JRH0nCiAgICAgIC0gJ19BUFBfTUlHUkFUSU9OU19GSVJFQkFTRV9DTElFTlRfU0VDUkVUPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9TRUNSRVR9JwogIGFwcHdyaXRlLW1haW50ZW5hbmNlOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBlbnRyeXBvaW50OiBtYWludGVuYW5jZQogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLW1haW50ZW5hbmNlCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtIF9BUFBfRE9NQUlOPSRTRVJWSUNFX0ZRRE5fQVBQV1JJVEUKICAgICAgLSBfQVBQX0RPTUFJTl9UQVJHRVQ9JFNFUlZJQ0VfRlFETl9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOX0ZVTkNUSU9OUz0kU0VSVklDRV9GUUROX0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfT1BFTlNTTF9LRVlfVjE9JHtfQVBQX09QRU5TU0xfS0VZX1YxfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9JTlRFUlZBTD0ke19BUFBfTUFJTlRFTkFOQ0VfSU5URVJWQUx9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9FWEVDVVRJT049JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9FWEVDVVRJT059JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9DQUNIRT0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX0NBQ0hFOi0yNTkyMDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fQUJVU0U9JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9BQlVTRTotODY0MDB9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9BVURJVD0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX0FVRElUOi0xMjA5NjAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fVVNBR0VfSE9VUkxZPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fVVNBR0VfSE9VUkxZOi04NjQwMDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fU0NIRURVTEVTPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fU0NIRURVTEVTOi04NjQwMH0nCiAgYXBwd3JpdGUtd29ya2VyLXVzYWdlOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBlbnRyeXBvaW50OiB3b3JrZXItdXNhZ2UKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItdXNhZ2UKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSAnX0FQUF9PUEVOU1NMX0tFWV9WMT0ke19BUFBfT1BFTlNTTF9LRVlfVjF9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX1VTQUdFX1NUQVRTPSR7X0FQUF9VU0FHRV9TVEFUUzotZW5hYmxlZH0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9VU0FHRV9BR0dSRUdBVElPTl9JTlRFUlZBTD0ke19BUFBfVVNBR0VfQUdHUkVHQVRJT05fSU5URVJWQUw6LTMwfScKICBhcHB3cml0ZS13b3JrZXItdXNhZ2UtZHVtcDoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42JwogICAgZW50cnlwb2ludDogd29ya2VyLXVzYWdlLWR1bXAKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItdXNhZ2UtZHVtcAogICAgZGVwZW5kc19vbjoKICAgICAgLSBhcHB3cml0ZS1yZWRpcwogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gJ19BUFBfT1BFTlNTTF9LRVlfVjE9JHtfQVBQX09QRU5TU0xfS0VZX1YxfScKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9VU0FHRV9TVEFUUz0ke19BUFBfVVNBR0VfU1RBVFM6LWVuYWJsZWR9JwogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogICAgICAtICdfQVBQX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgICAgIC0gJ19BUFBfVVNBR0VfQUdHUkVHQVRJT05fSU5URVJWQUw9JHtfQVBQX1VTQUdFX0FHR1JFR0FUSU9OX0lOVEVSVkFMOi0zMH0nCiAgYXBwd3JpdGUtc2NoZWR1bGVyLWZ1bmN0aW9uczoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42JwogICAgZW50cnlwb2ludDogc2NoZWR1bGUtZnVuY3Rpb25zCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtc2NoZWR1bGVyLWZ1bmN0aW9ucwogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWQKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtICdfQVBQX09QRU5TU0xfS0VZX1YxPSR7X0FQUF9PUEVOU1NMX0tFWV9WMX0nCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgYXBwd3JpdGUtc2NoZWR1bGVyLW1lc3NhZ2VzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYnCiAgICBlbnRyeXBvaW50OiBzY2hlZHVsZS1tZXNzYWdlcwogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXNjaGVkdWxlci1tZXNzYWdlcwogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWQKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtICdfQVBQX09QRU5TU0xfS0VZX1YxPSR7X0FQUF9PUEVOU1NMX0tFWV9WMX0nCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgYXBwd3JpdGUtYXNzaXN0YW50OgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hc3Npc3RhbnQ6MC40LjAnCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtYXNzaXN0YW50CiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBfQVBQX0FTU0lTVEFOVF9PUEVOQUlfQVBJX0tFWQogIG9wZW5ydW50aW1lcy1leGVjdXRvcjoKICAgIGNvbnRhaW5lcl9uYW1lOiBvcGVucnVudGltZXMtZXhlY3V0b3IKICAgIGhvc3RuYW1lOiBhcHB3cml0ZS1leGVjdXRvcgogICAgbG9nZ2luZzoKICAgICAgZHJpdmVyOiBqc29uLWZpbGUKICAgICAgb3B0aW9uczoKICAgICAgICBtYXgtZmlsZTogJzUnCiAgICAgICAgbWF4LXNpemU6IDEwbQogICAgc3RvcF9zaWduYWw6IFNJR0lOVAogICAgaW1hZ2U6ICdvcGVucnVudGltZXMvZXhlY3V0b3I6MC40LjknCiAgICB2b2x1bWVzOgogICAgICAtICcvdmFyL3J1bi9kb2NrZXIuc29jazovdmFyL3J1bi9kb2NrZXIuc29jaycKICAgICAgLSAnYXBwd3JpdGUtYnVpbGRzOi9zdG9yYWdlL2J1aWxkczpydycKICAgICAgLSAnYXBwd3JpdGUtZnVuY3Rpb25zOi9zdG9yYWdlL2Z1bmN0aW9uczpydycKICAgICAgLSAnL3RtcDovdG1wOnJ3JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ09QUl9FWEVDVVRPUl9JTkFDVElWRV9UUkVTSE9MRD0ke19BUFBfRlVOQ1RJT05TX0lOQUNUSVZFX1RIUkVTSE9MRH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9NQUlOVEVOQU5DRV9JTlRFUlZBTD0ke19BUFBfRlVOQ1RJT05TX01BSU5URU5BTkNFX0lOVEVSVkFMfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX05FVFdPUks9JHtfQVBQX0ZVTkNUSU9OU19SVU5USU1FU19ORVRXT1JLfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX0RPQ0tFUl9IVUJfVVNFUk5BTUU9JHtfQVBQX0RPQ0tFUl9IVUJfVVNFUk5BTUV9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfRE9DS0VSX0hVQl9QQVNTV09SRD0ke19BUFBfRE9DS0VSX0hVQl9QQVNTV09SRH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9SVU5USU1FUz0ke19BUFBfRlVOQ1RJT05TX1JVTlRJTUVTfScKICAgICAgLSBPUFJfRVhFQ1VUT1JfU0VDUkVUPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0RFVklDRT0ke19BUFBfU1RPUkFHRV9ERVZJQ0U6LWxvY2FsfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfUzNfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9TM19BQ0NFU1NfS0VZOi1sb2NhbH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX1MzX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9TM19TRUNSRVR9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9TM19SRUdJT049JHtfQVBQX1NUT1JBR0VfUzNfUkVHSU9OfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfUzNfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX1MzX0JVQ0tFVH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0RPX1NQQUNFU19BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX0RPX1NQQUNFU19BQ0NFU1NfS0VZfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfRE9fU1BBQ0VTX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfUkVHSU9OfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQlVDS0VUfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfQkFDS0JMQVpFX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX0FDQ0VTU19LRVl9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9CQUNLQkxBWkVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVR9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9SRUdJT059JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9CQUNLQkxBWkVfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVR9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0xJTk9ERV9TRUNSRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX1NFQ1JFVH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0xJTk9ERV9SRUdJT049JHtfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTn0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0xJTk9ERV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfV0FTQUJJX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfU0VDUkVUfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfV0FTQUJJX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfV0FTQUJJX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUfScKICBhcHB3cml0ZS1tYXJpYWRiOgogICAgaW1hZ2U6ICdtYXJpYWRiOjEwLjExJwogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLW1hcmlhZGIKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIHZvbHVtZXM6CiAgICAgIC0gJ2FwcHdyaXRlLW1hcmlhZGI6L3Zhci9saWIvbXlzcWw6cncnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBNWVNRTF9ST09UX1BBU1NXT1JEPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREJST09UCiAgICAgIC0gJ01ZU1FMX0RBVEFCQVNFPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBNWVNRTF9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIE1ZU1FMX1BBU1NXT1JEPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgIGNvbW1hbmQ6ICdteXNxbGQgLS1pbm5vZGItZmx1c2gtbWV0aG9kPWZzeW5jJwogIGFwcHdyaXRlLXJlZGlzOgogICAgaW1hZ2U6ICdyZWRpczo3LjIuNC1hbHBpbmUnCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtcmVkaXMKICAgIGxvZ2dpbmc6CiAgICAgIGRyaXZlcjoganNvbi1maWxlCiAgICAgIG9wdGlvbnM6CiAgICAgICAgbWF4LWZpbGU6ICc1JwogICAgICAgIG1heC1zaXplOiAxMG0KICAgIGNvbW1hbmQ6ICJyZWRpcy1zZXJ2ZXIgLS1tYXhtZW1vcnkgICAgICAgICAgICA1MTJtYiAtLW1heG1lbW9yeS1wb2xpY3kgICAgIGFsbGtleXMtbHJ1IC0tbWF4bWVtb3J5LXNhbXBsZXMgICAgNVxuIgogICAgdm9sdW1lczoKICAgICAgLSAnYXBwd3JpdGUtcmVkaXM6L2RhdGE6cncnCnZvbHVtZXM6CiAgYXBwd3JpdGUtbWFyaWFkYjogbnVsbAogIGFwcHdyaXRlLXJlZGlzOiBudWxsCiAgYXBwd3JpdGUtY2FjaGU6IG51bGwKICBhcHB3cml0ZS11cGxvYWRzOiBudWxsCiAgYXBwd3JpdGUtY2VydGlmaWNhdGVzOiBudWxsCiAgYXBwd3JpdGUtZnVuY3Rpb25zOiBudWxsCiAgYXBwd3JpdGUtYnVpbGRzOiBudWxsCiAgYXBwd3JpdGUtY29uZmlnOiBudWxsCg==", + "compose": "c2VydmljZXM6CiAgYXBwd3JpdGU6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2FwcHdyaXRlOjEuNi4wJwogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlCiAgICB2b2x1bWVzOgogICAgICAtICdhcHB3cml0ZS11cGxvYWRzOi9zdG9yYWdlL3VwbG9hZHM6cncnCiAgICAgIC0gJ2FwcHdyaXRlLWNhY2hlOi9zdG9yYWdlL2NhY2hlOnJ3JwogICAgICAtICdhcHB3cml0ZS1jb25maWc6L3N0b3JhZ2UvY29uZmlnOnJ3JwogICAgICAtICdhcHB3cml0ZS1jZXJ0aWZpY2F0ZXM6L3N0b3JhZ2UvY2VydGlmaWNhdGVzOnJ3JwogICAgICAtICdhcHB3cml0ZS1mdW5jdGlvbnM6L3N0b3JhZ2UvZnVuY3Rpb25zOnJ3JwogICAgZGVwZW5kc19vbjoKICAgICAgLSBhcHB3cml0ZS1tYXJpYWRiCiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9BUFBXUklURT0vCiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSAnX0FQUF9MT0NBTEU9JHtfQVBQX0xPQ0FMRTotZW59JwogICAgICAtICdfQVBQX0NPTlNPTEVfV0hJVEVMSVNUX1JPT1Q9JHtfQVBQX0NPTlNPTEVfV0hJVEVMSVNUX1JPT1Q6LWVuYWJsZWR9JwogICAgICAtICdfQVBQX0NPTlNPTEVfV0hJVEVMSVNUX0VNQUlMUz0ke19BUFBfQ09OU09MRV9XSElURUxJU1RfRU1BSUxTfScKICAgICAgLSAnX0FQUF9DT05TT0xFX1dISVRFTElTVF9JUFM9JHtfQVBQX0NPTlNPTEVfV0hJVEVMSVNUX0lQU30nCiAgICAgIC0gJ19BUFBfQ09OU09MRV9IT1NUTkFNRVM9JHtfQVBQX0NPTlNPTEVfSE9TVE5BTUVTOi1sb2NhbGhvc3QsYXBwd3JpdGUuaW8sKi5hcHB3cml0ZS5pb30nCiAgICAgIC0gJ19BUFBfU1lTVEVNX0VNQUlMX05BTUU9JHtfQVBQX1NZU1RFTV9FTUFJTF9OQU1FOi1BcHB3cml0ZX0nCiAgICAgIC0gJ19BUFBfU1lTVEVNX0VNQUlMX0FERFJFU1M9JHtfQVBQX1NZU1RFTV9FTUFJTF9BRERSRVNTOi10ZWFtQGFwcHdyaXRlLmlvfScKICAgICAgLSAnX0FQUF9TWVNURU1fVEVBTV9FTUFJTD0ke19BUFBfU1lTVEVNX1RFQU1fRU1BSUw6LXRlYW1AYXBwd3JpdGUuaW99JwogICAgICAtICdfQVBQX0VNQUlMX1NFQ1VSSVRZPSR7X0FQUF9FTUFJTF9TRUNVUklUWTotY2VydHNAYXBwd3JpdGUuaW99JwogICAgICAtICdfQVBQX1NZU1RFTV9SRVNQT05TRV9GT1JNQVQ9JHtfQVBQX1NZU1RFTV9SRVNQT05TRV9GT1JNQVR9JwogICAgICAtICdfQVBQX09QVElPTlNfQUJVU0U9JHtfQVBQX09QVElPTlNfQUJVU0U6LWVuYWJsZWR9JwogICAgICAtICdfQVBQX09QVElPTlNfUk9VVEVSX1BST1RFQ1RJT049JHtfQVBQX09QVElPTlNfUk9VVEVSX1BST1RFQ1RJT046LWRpc2FibGVkfScKICAgICAgLSAnX0FQUF9PUFRJT05TX0ZPUkNFX0hUVFBTPSR7X0FQUF9PUFRJT05TX0ZPUkNFX0hUVFBTOi1kaXNhYmxlZH0nCiAgICAgIC0gJ19BUFBfT1BUSU9OU19GVU5DVElPTlNfRk9SQ0VfSFRUUFM9JHtfQVBQX09QVElPTlNfRlVOQ1RJT05TX0ZPUkNFX0hUVFBTOi1kaXNhYmxlZH0nCiAgICAgIC0gX0FQUF9PUEVOU1NMX0tFWV9WMT0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOPSRTRVJWSUNFX1VSTF9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOX1RBUkdFVD0kU0VSVklDRV9VUkxfQVBQV1JJVEUKICAgICAgLSBfQVBQX0RPTUFJTl9GVU5DVElPTlM9JFNFUlZJQ0VfVVJMX0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9ST09UX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQlJPT1QKICAgICAgLSAnX0FQUF9TTVRQX0hPU1Q9JHtfQVBQX1NNVFBfSE9TVH0nCiAgICAgIC0gJ19BUFBfU01UUF9QT1JUPSR7X0FQUF9TTVRQX1BPUlR9JwogICAgICAtICdfQVBQX1NNVFBfU0VDVVJFPSR7X0FQUF9TTVRQX1NFQ1VSRX0nCiAgICAgIC0gJ19BUFBfU01UUF9VU0VSTkFNRT0ke19BUFBfU01UUF9VU0VSTkFNRX0nCiAgICAgIC0gJ19BUFBfU01UUF9QQVNTV09SRD0ke19BUFBfU01UUF9QQVNTV09SRH0nCiAgICAgIC0gJ19BUFBfVVNBR0VfU1RBVFM9JHtfQVBQX1VTQUdFX1NUQVRTOi1lbmFibGVkfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTUlUPSR7X0FQUF9TVE9SQUdFX0xJTUlUOi0zMDAwMDAwMH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9QUkVWSUVXX0xJTUlUPSR7X0FQUF9TVE9SQUdFX1BSRVZJRVdfTElNSVQ6LTIwMDAwMDAwfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0FOVElWSVJVUz0ke19BUFBfU1RPUkFHRV9BTlRJVklSVVM6LWRpc2FibGVkfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0FOVElWSVJVU19IT1NUPSR7X0FQUF9TVE9SQUdFX0FOVElWSVJVU19IT1NUOi1hcHB3cml0ZS1jbGFtYXZ9JwogICAgICAtICdfQVBQX1NUT1JBR0VfQU5USVZJUlVTX1BPUlQ9JHtfQVBQX1NUT1JBR0VfQU5USVZJUlVTX1BPUlQ6LTMzMTB9JwogICAgICAtICdfQVBQX1NUT1JBR0VfREVWSUNFPSR7X0FQUF9TVE9SQUdFX0RFVklDRTotbG9jYWx9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9TM19BQ0NFU1NfS0VZfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9TM19TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX1MzX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9TM19CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19SRUdJT049JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OOi11cy13ZXN0LTAwNH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9MSU5PREVfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9SRUdJT049JHtfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTjotZXUtY2VudHJhbC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OOi1ldS1jZW50cmFsLTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfU0laRV9MSU1JVD0ke19BUFBfRlVOQ1RJT05TX1NJWkVfTElNSVQ6LTMwMDAwMDAwfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfVElNRU9VVD0ke19BUFBfRlVOQ1RJT05TX1RJTUVPVVQ6LTkwMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX0JVSUxEX1RJTUVPVVQ9JHtfQVBQX0ZVTkNUSU9OU19CVUlMRF9USU1FT1VUOi05MDB9JwogICAgICAtICdfQVBQX0ZVTkNUSU9OU19DUFVTPSR7X0FQUF9GVU5DVElPTlNfQ1BVUzotMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX01FTU9SWT0ke19BUFBfRlVOQ1RJT05TX01FTU9SWTotMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX1JVTlRJTUVTPSR7X0FQUF9GVU5DVElPTlNfUlVOVElNRVM6LW5vZGUtMjAuMCxwaHAtOC4yLHB5dGhvbi0zLjExLHJ1YnktMy4yfScKICAgICAgLSBfQVBQX0VYRUNVVE9SX1NFQ1JFVD0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX0VYRUNVVE9SX0hPU1Q9JHtfQVBQX0VYRUNVVE9SX0hPU1Q6LWh0dHA6Ly9hcHB3cml0ZS1leGVjdXRvci92MX0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9JTlRFUlZBTD0ke19BUFBfTUFJTlRFTkFOQ0VfSU5URVJWQUw6LTg2NDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9ERUxBWT0ke19BUFBfTUFJTlRFTkFOQ0VfREVMQVl9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9FWEVDVVRJT049JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9FWEVDVVRJT046LTEyMDk2MDB9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9DQUNIRT0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX0NBQ0hFOi0yNTkyMDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fQUJVU0U9JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9BQlVTRTotODY0MDB9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9BVURJVD0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX0FVRElUOi0xMjA5NjAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fVVNBR0VfSE9VUkxZPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fVVNBR0VfSE9VUkxZOi04NjQwMDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fU0NIRURVTEVTPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fU0NIRURVTEVTOi04NjQwMH0nCiAgICAgIC0gJ19BUFBfU01TX1BST1ZJREVSPSR7X0FQUF9TTVNfUFJPVklERVJ9JwogICAgICAtICdfQVBQX1NNU19GUk9NPSR7X0FQUF9TTVNfRlJPTX0nCiAgICAgIC0gJ19BUFBfR1JBUEhRTF9NQVhfQkFUQ0hfU0laRT0ke19BUFBfR1JBUEhRTF9NQVhfQkFUQ0hfU0laRTotMTB9JwogICAgICAtICdfQVBQX0dSQVBIUUxfTUFYX0NPTVBMRVhJVFk9JHtfQVBQX0dSQVBIUUxfTUFYX0NPTVBMRVhJVFk6LTI1MH0nCiAgICAgIC0gJ19BUFBfR1JBUEhRTF9NQVhfREVQVEg9JHtfQVBQX0dSQVBIUUxfTUFYX0RFUFRIOi0zfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX0FQUF9OQU1FPSR7X0FQUF9WQ1NfR0lUSFVCX0FQUF9OQU1FfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX1BSSVZBVEVfS0VZPSR7X0FQUF9WQ1NfR0lUSFVCX1BSSVZBVEVfS0VZfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX0FQUF9JRD0ke19BUFBfVkNTX0dJVEhVQl9BUFBfSUR9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfV0VCSE9PS19TRUNSRVQ9JHtfQVBQX1ZDU19HSVRIVUJfV0VCSE9PS19TRUNSRVR9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfQ0xJRU5UX1NFQ1JFVD0ke19BUFBfVkNTX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgLSAnX0FQUF9WQ1NfR0lUSFVCX0NMSUVOVF9JRD0ke19BUFBfVkNTX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICAtICdfQVBQX01JR1JBVElPTlNfRklSRUJBU0VfQ0xJRU5UX0lEPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9JRH0nCiAgICAgIC0gJ19BUFBfTUlHUkFUSU9OU19GSVJFQkFTRV9DTElFTlRfU0VDUkVUPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9TRUNSRVR9JwogICAgICAtICdfQVBQX0FTU0lTVEFOVF9PUEVOQUlfQVBJX0tFWT0ke19BUFBfQVNTSVNUQU5UX09QRU5BSV9BUElfS0VZfScKICAgICAgLSAnX0FQUF9NRVNTQUdFX1NNU19URVNUX0RTTj0ke19BUFBfTUVTU0FHRV9TTVNfVEVTVF9EU059JwogICAgICAtICdfQVBQX01FU1NBR0VfRU1BSUxfVEVTVF9EU049JHtfQVBQX01FU1NBR0VfRU1BSUxfVEVTVF9EU059JwogICAgICAtICdfQVBQX01FU1NBR0VfUFVTSF9URVNUX0RTTj0ke19BUFBfTUVTU0FHRV9QVVNIX1RFU1RfRFNOfScKICAgICAgLSAnX0FQUF9DT05TT0xFX0NPVU5UUklFU19ERU5ZTElTVD0ke19BUFBfQ09OU09MRV9DT1VOVFJJRVNfREVOWUxJU1R9JwogICAgICAtICdfQVBQX0VYUEVSSU1FTlRfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfRVhQRVJJTUVOVF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9FWFBFUklNRU5UX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9FWFBFUklNRU5UX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS1jb25zb2xlOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9jb25zb2xlOjUuMC4xMicKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS1jb25zb2xlCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fQVBQV1JJVEU9L2NvbnNvbGUKICBhcHB3cml0ZS1yZWFsdGltZToKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42LjAnCiAgICBlbnRyeXBvaW50OiByZWFsdGltZQogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXJlYWx0aW1lCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgICAgLSBhcHB3cml0ZS1yZWRpcwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gU0VSVklDRV9GUUROX0FQUFdSSVRFPS92MS9yZWFsdGltZQogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gJ19BUFBfT1BUSU9OU19BQlVTRT0ke19BUFBfT1BUSU9OU19BQlVTRTotZW5hYmxlZH0nCiAgICAgIC0gX0FQUF9PUEVOU1NMX0tFWV9WMT0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX1VTQUdFX1NUQVRTPSR7X0FQUF9VU0FHRV9TVEFUUzotZW5hYmxlZH0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS13b3JrZXItYXVkaXRzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1hdWRpdHMKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItYXVkaXRzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS13b3JrZXItd2ViaG9va3M6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2FwcHdyaXRlOjEuNi4wJwogICAgZW50cnlwb2ludDogd29ya2VyLXdlYmhvb2tzCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtd29ya2VyLXdlYmhvb2tzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfRU1BSUxfU0VDVVJJVFk9JHtfQVBQX0VNQUlMX1NFQ1VSSVRZOi1jZXJ0c0BhcHB3cml0ZS5pb30nCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogICAgICAtICdfQVBQX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgICAgIC0gJ19BUFBfV0VCSE9PS19NQVhfRkFJTEVEX0FUVEVNUFRTPSR7X0FQUF9XRUJIT09LX01BWF9GQUlMRURfQVRURU1QVFM6LTN9JwogICAgICAtICdfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVM9JHtfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVN9JwogIGFwcHdyaXRlLXdvcmtlci1kZWxldGVzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1kZWxldGVzCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtd29ya2VyLWRlbGV0ZXMKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgICAgLSBhcHB3cml0ZS1tYXJpYWRiCiAgICB2b2x1bWVzOgogICAgICAtICdhcHB3cml0ZS11cGxvYWRzOi9zdG9yYWdlL3VwbG9hZHM6cncnCiAgICAgIC0gJ2FwcHdyaXRlLWNhY2hlOi9zdG9yYWdlL2NhY2hlOnJ3JwogICAgICAtICdhcHB3cml0ZS1mdW5jdGlvbnM6L3N0b3JhZ2UvZnVuY3Rpb25zOnJ3JwogICAgICAtICdhcHB3cml0ZS1idWlsZHM6L3N0b3JhZ2UvYnVpbGRzOnJ3JwogICAgICAtICdhcHB3cml0ZS1jZXJ0aWZpY2F0ZXM6L3N0b3JhZ2UvY2VydGlmaWNhdGVzOnJ3JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9ERVZJQ0U9JHtfQVBQX1NUT1JBR0VfREVWSUNFOi1sb2NhbH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9TM19BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX1MzX0FDQ0VTU19LRVk6LWxvY2FsfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9TM19TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX1MzX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9TM19CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19SRUdJT049JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OOi11cy13ZXN0LTAwNH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9MSU5PREVfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9SRUdJT049JHtfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTjotZXUtY2VudHJhbC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OOi1ldS1jZW50cmFsLTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtIF9BUFBfRVhFQ1VUT1JfU0VDUkVUPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfRVhFQ1VUT1JfSE9TVD0ke19BUFBfRVhFQ1VUT1JfSE9TVDotaHR0cDovL2FwcHdyaXRlLWV4ZWN1dG9yL3YxfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS13b3JrZXItZGF0YWJhc2VzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1kYXRhYmFzZXMKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItZGF0YWJhc2VzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9XT1JLRVJTX05VTT0ke19BUFBfV09SS0VSU19OVU06LTF9JwogICAgICAtICdfQVBQX1FVRVVFX05BTUU9JHtfQVBQX1FVRVVFX05BTUU6LWFwcHdyaXRlfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS13b3JrZXItYnVpbGRzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1idWlsZHMKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItYnVpbGRzCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgdm9sdW1lczoKICAgICAgLSAnYXBwd3JpdGUtZnVuY3Rpb25zOi9zdG9yYWdlL2Z1bmN0aW9uczpydycKICAgICAgLSAnYXBwd3JpdGUtYnVpbGRzOi9zdG9yYWdlL2J1aWxkczpydycKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gX0FQUF9PUEVOU1NMX0tFWV9WMT0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtIF9BUFBfRVhFQ1VUT1JfU0VDUkVUPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfRVhFQ1VUT1JfSE9TVD0ke19BUFBfRVhFQ1VUT1JfSE9TVDotaHR0cDovL2FwcHdyaXRlLWV4ZWN1dG9yL3YxfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfQVBQX05BTUU9JHtfQVBQX1ZDU19HSVRIVUJfQVBQX05BTUV9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfUFJJVkFURV9LRVk9JHtfQVBQX1ZDU19HSVRIVUJfUFJJVkFURV9LRVl9JwogICAgICAtICdfQVBQX1ZDU19HSVRIVUJfQVBQX0lEPSR7X0FQUF9WQ1NfR0lUSFVCX0FQUF9JRH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX1RJTUVPVVQ9JHtfQVBQX0ZVTkNUSU9OU19USU1FT1VUOi05MDB9JwogICAgICAtICdfQVBQX0ZVTkNUSU9OU19CVUlMRF9USU1FT1VUPSR7X0FQUF9GVU5DVElPTlNfQlVJTERfVElNRU9VVDotOTAwfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfQ1BVUz0ke19BUFBfRlVOQ1RJT05TX0NQVVM6LTB9JwogICAgICAtICdfQVBQX0ZVTkNUSU9OU19NRU1PUlk9JHtfQVBQX0ZVTkNUSU9OU19NRU1PUlk6LTB9JwogICAgICAtICdfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM9JHtfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM6LWRpc2FibGVkfScKICAgICAgLSBfQVBQX0RPTUFJTj0kU0VSVklDRV9VUkxfQVBQV1JJVEUKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RFVklDRT0ke19BUFBfU1RPUkFHRV9ERVZJQ0U6LWxvY2FsfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfUzNfQUNDRVNTX0tFWTotbG9jYWx9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX1MzX1NFQ1JFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9TM19SRUdJT049JHtfQVBQX1NUT1JBR0VfUzNfUkVHSU9OOi11cy1lYXN0LTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX1MzX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0RPX1NQQUNFU19TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfUkVHSU9OOi11cy1lYXN0LTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQlVDS0VUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9BQ0NFU1NfS0VZfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVQ9JHtfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX1NFQ1JFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9SRUdJT046LXVzLXdlc3QtMDA0fScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9MSU5PREVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0xJTk9ERV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9MSU5PREVfUkVHSU9OOi1ldS1jZW50cmFsLTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9MSU5PREVfQlVDS0VUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1dBU0FCSV9TRUNSRVQ9JHtfQVBQX1NUT1JBR0VfV0FTQUJJX1NFQ1JFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9SRUdJT046LWV1LWNlbnRyYWwtMX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9CVUNLRVR9JwogICAgICAtICdfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVM9JHtfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVN9JwogIGFwcHdyaXRlLXdvcmtlci1jZXJ0aWZpY2F0ZXM6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2FwcHdyaXRlOjEuNi4wJwogICAgZW50cnlwb2ludDogd29ya2VyLWNlcnRpZmljYXRlcwogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXdvcmtlci1jZXJ0aWZpY2F0ZXMKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgICAgLSBhcHB3cml0ZS1tYXJpYWRiCiAgICB2b2x1bWVzOgogICAgICAtICdhcHB3cml0ZS1jb25maWc6L3N0b3JhZ2UvY29uZmlnOnJ3JwogICAgICAtICdhcHB3cml0ZS1jZXJ0aWZpY2F0ZXM6L3N0b3JhZ2UvY2VydGlmaWNhdGVzOnJ3JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gX0FQUF9ET01BSU49JFNFUlZJQ0VfVVJMX0FQUFdSSVRFCiAgICAgIC0gX0FQUF9ET01BSU5fVEFSR0VUPSRTRVJWSUNFX1VSTF9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOX0ZVTkNUSU9OUz0kU0VSVklDRV9VUkxfQVBQV1JJVEUKICAgICAgLSAnX0FQUF9FTUFJTF9DRVJUSUZJQ0FURVM9JHtfQVBQX0VNQUlMX0NFUlRJRklDQVRFUzotZW5hYmxlZH0nCiAgICAgIC0gJ19BUFBfRU1BSUxfU0VDVVJJVFk9JHtfQVBQX0VNQUlMX1NFQ1VSSVRZOi1jZXJ0c0BhcHB3cml0ZS5pb30nCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS13b3JrZXItZnVuY3Rpb25zOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1mdW5jdGlvbnMKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItZnVuY3Rpb25zCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgICAtIG9wZW5ydW50aW1lcy1leGVjdXRvcgogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gX0FQUF9ET01BSU49JFNFUlZJQ0VfVVJMX0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfT1BUSU9OU19GT1JDRV9IVFRQUz0ke19BUFBfT1BUSU9OU19GT1JDRV9IVFRQUzotZGlzYWJsZWR9JwogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX0ZVTkNUSU9OU19USU1FT1VUPSR7X0FQUF9GVU5DVElPTlNfVElNRU9VVDotOTAwfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfQlVJTERfVElNRU9VVD0ke19BUFBfRlVOQ1RJT05TX0JVSUxEX1RJTUVPVVQ6LTkwMH0nCiAgICAgIC0gJ19BUFBfRlVOQ1RJT05TX0NQVVM9JHtfQVBQX0ZVTkNUSU9OU19DUFVTOi0wfScKICAgICAgLSAnX0FQUF9GVU5DVElPTlNfTUVNT1JZPSR7X0FQUF9GVU5DVElPTlNfTUVNT1JZOi0wfScKICAgICAgLSBfQVBQX0VYRUNVVE9SX1NFQ1JFVD0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX0VYRUNVVE9SX0hPU1Q9JHtfQVBQX0VYRUNVVE9SX0hPU1Q6LWh0dHA6Ly9hcHB3cml0ZS1leGVjdXRvci92MX0nCiAgICAgIC0gJ19BUFBfVVNBR0VfU1RBVFM9JHtfQVBQX1VTQUdFX1NUQVRTOi1lbmFibGVkfScKICAgICAgLSAnX0FQUF9ET0NLRVJfSFVCX1VTRVJOQU1FPSR7X0FQUF9ET0NLRVJfSFVCX1VTRVJOQU1FfScKICAgICAgLSAnX0FQUF9ET0NLRVJfSFVCX1BBU1NXT1JEPSR7X0FQUF9ET0NLRVJfSFVCX1BBU1NXT1JEfScKICAgICAgLSAnX0FQUF9ET0NLRVJfSFVCX0VNQUlMPSR7X0FQUF9ET0NLRVJfSFVCX0VNQUlMfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogICAgICAtICdfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVM9JHtfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVN9JwogIGFwcHdyaXRlLXdvcmtlci1tYWlsczoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42LjAnCiAgICBlbnRyeXBvaW50OiB3b3JrZXItbWFpbHMKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItbWFpbHMKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gX0FQUF9PUEVOU1NMX0tFWV9WMT0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX1NZU1RFTV9FTUFJTF9OQU1FPSR7X0FQUF9TWVNURU1fRU1BSUxfTkFNRTotQXBwd3JpdGV9JwogICAgICAtICdfQVBQX1NZU1RFTV9FTUFJTF9BRERSRVNTPSR7X0FQUF9TWVNURU1fRU1BSUxfQUREUkVTUzotdGVhbUBhcHB3cml0ZS5pb30nCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX1NNVFBfSE9TVD0ke19BUFBfU01UUF9IT1NUfScKICAgICAgLSAnX0FQUF9TTVRQX1BPUlQ9JHtfQVBQX1NNVFBfUE9SVH0nCiAgICAgIC0gJ19BUFBfU01UUF9TRUNVUkU9JHtfQVBQX1NNVFBfU0VDVVJFfScKICAgICAgLSAnX0FQUF9TTVRQX1VTRVJOQU1FPSR7X0FQUF9TTVRQX1VTRVJOQU1FfScKICAgICAgLSAnX0FQUF9TTVRQX1BBU1NXT1JEPSR7X0FQUF9TTVRQX1BBU1NXT1JEfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtIF9BUFBfRE9NQUlOPSRTRVJWSUNFX1VSTF9BUFBXUklURQogICAgICAtICdfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM9JHtfQVBQX09QVElPTlNfRk9SQ0VfSFRUUFM6LWRpc2FibGVkfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS13b3JrZXItbWVzc2FnaW5nOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci1tZXNzYWdpbmcKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItbWVzc2FnaW5nCiAgICB2b2x1bWVzOgogICAgICAtICdhcHB3cml0ZS11cGxvYWRzOi9zdG9yYWdlL3VwbG9hZHM6cncnCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtIF9BUFBfT1BFTlNTTF9LRVlfVjE9JFNFUlZJQ0VfUEFTU1dPUkRfNjRfQVBQV1JJVEUKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX1NNU19GUk9NPSR7X0FQUF9TTVNfRlJPTX0nCiAgICAgIC0gJ19BUFBfU01TX1BST1ZJREVSPSR7X0FQUF9TTVNfUFJPVklERVJ9JwogICAgICAtICdfQVBQX1NNU19QUk9KRUNUU19ERU5ZX0xJU1Q9JHtfQVBQX1NNU19QUk9KRUNUU19ERU5ZX0xJU1R9JwogICAgICAtICdfQVBQX1NUT1JBR0VfREVWSUNFPSR7X0FQUF9TVE9SQUdFX0RFVklDRTotbG9jYWx9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9TM19BQ0NFU1NfS0VZfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9TM19TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfUzNfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX1MzX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX1MzX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9TM19CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19SRUdJT049JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTjotdXMtZWFzdC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0RPX1NQQUNFU19CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OOi11cy13ZXN0LTAwNH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9CQUNLQkxBWkVfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0FDQ0VTU19LRVl9JwogICAgICAtICdfQVBQX1NUT1JBR0VfTElOT0RFX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9MSU5PREVfU0VDUkVUfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9SRUdJT049JHtfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTjotZXUtY2VudHJhbC0xfScKICAgICAgLSAnX0FQUF9TVE9SQUdFX0xJTk9ERV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVH0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9XQVNBQklfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ19BUFBfU1RPUkFHRV9XQVNBQklfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9TRUNSRVR9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OOi1ldS1jZW50cmFsLTF9JwogICAgICAtICdfQVBQX1NUT1JBR0VfV0FTQUJJX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS13b3JrZXItbWlncmF0aW9uczoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42LjAnCiAgICBlbnRyeXBvaW50OiB3b3JrZXItbWlncmF0aW9ucwogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXdvcmtlci1taWdyYXRpb25zCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gX0FQUF9PUEVOU1NMX0tFWV9WMT0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOPSRTRVJWSUNFX1VSTF9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOX1RBUkdFVD0kU0VSVklDRV9VUkxfQVBQV1JJVEUKICAgICAgLSAnX0FQUF9FTUFJTF9TRUNVUklUWT0ke19BUFBfRU1BSUxfU0VDVVJJVFk6LWNlcnRzQGFwcHdyaXRlLmlvfScKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnX0FQUF9MT0dHSU5HX0NPTkZJRz0ke19BUFBfTE9HR0lOR19DT05GSUd9JwogICAgICAtICdfQVBQX01JR1JBVElPTlNfRklSRUJBU0VfQ0xJRU5UX0lEPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9JRH0nCiAgICAgIC0gJ19BUFBfTUlHUkFUSU9OU19GSVJFQkFTRV9DTElFTlRfU0VDUkVUPSR7X0FQUF9NSUdSQVRJT05TX0ZJUkVCQVNFX0NMSUVOVF9TRUNSRVR9JwogICAgICAtICdfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVM9JHtfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVN9JwogIGFwcHdyaXRlLW1haW50ZW5hbmNlOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IG1haW50ZW5hbmNlCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtbWFpbnRlbmFuY2UKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gX0FQUF9ET01BSU49JFNFUlZJQ0VfVVJMX0FQUFdSSVRFCiAgICAgIC0gX0FQUF9ET01BSU5fVEFSR0VUPSRTRVJWSUNFX1VSTF9BUFBXUklURQogICAgICAtIF9BUFBfRE9NQUlOX0ZVTkNUSU9OUz0kU0VSVklDRV9VUkxfQVBQV1JJVEUKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfTUFJTlRFTkFOQ0VfSU5URVJWQUw9JHtfQVBQX01BSU5URU5BTkNFX0lOVEVSVkFMfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fRVhFQ1VUSU9OPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fRVhFQ1VUSU9OfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fQ0FDSEU9JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9DQUNIRTotMjU5MjAwMH0nCiAgICAgIC0gJ19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX0FCVVNFPSR7X0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fQUJVU0U6LTg2NDAwfScKICAgICAgLSAnX0FQUF9NQUlOVEVOQU5DRV9SRVRFTlRJT05fQVVESVQ9JHtfQVBQX01BSU5URU5BTkNFX1JFVEVOVElPTl9BVURJVDotMTIwOTYwMH0nCiAgICAgIC0gJ19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX1VTQUdFX0hPVVJMWT0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX1VTQUdFX0hPVVJMWTotODY0MDAwMH0nCiAgICAgIC0gJ19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX1NDSEVEVUxFUz0ke19BUFBfTUFJTlRFTkFOQ0VfUkVURU5USU9OX1NDSEVEVUxFUzotODY0MDB9JwogICAgICAtICdfQVBQX01BSU5URU5BTkNFX0RFTEFZPSR7X0FQUF9NQUlOVEVOQU5DRV9ERUxBWX0nCiAgICAgIC0gJ19BUFBfREFUQUJBU0VfU0hBUkVEX1RBQkxFUz0ke19BUFBfREFUQUJBU0VfU0hBUkVEX1RBQkxFU30nCiAgYXBwd3JpdGUtd29ya2VyLXVzYWdlOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHdvcmtlci11c2FnZQogICAgY29udGFpbmVyX25hbWU6IGFwcHdyaXRlLXdvcmtlci11c2FnZQogICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWQKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgICAgLSBhcHB3cml0ZS1tYXJpYWRiCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtIF9BUFBfT1BFTlNTTF9LRVlfVjE9JFNFUlZJQ0VfUEFTU1dPUkRfNjRfQVBQV1JJVEUKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9VU0FHRV9TVEFUUz0ke19BUFBfVVNBR0VfU1RBVFM6LWVuYWJsZWR9JwogICAgICAtICdfQVBQX0xPR0dJTkdfUFJPVklERVI9JHtfQVBQX0xPR0dJTkdfUFJPVklERVJ9JwogICAgICAtICdfQVBQX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgICAgIC0gJ19BUFBfVVNBR0VfQUdHUkVHQVRJT05fSU5URVJWQUw9JHtfQVBQX1VTQUdFX0FHR1JFR0FUSU9OX0lOVEVSVkFMOi0zMH0nCiAgICAgIC0gJ19BUFBfREFUQUJBU0VfU0hBUkVEX1RBQkxFUz0ke19BUFBfREFUQUJBU0VfU0hBUkVEX1RBQkxFU30nCiAgYXBwd3JpdGUtd29ya2VyLXVzYWdlLWR1bXA6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2FwcHdyaXRlOjEuNi4wJwogICAgZW50cnlwb2ludDogd29ya2VyLXVzYWdlLWR1bXAKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS13b3JrZXItdXNhZ2UtZHVtcAogICAgZGVwZW5kc19vbjoKICAgICAgLSBhcHB3cml0ZS1yZWRpcwogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gX0FQUF9PUEVOU1NMX0tFWV9WMT0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX1VTQUdFX1NUQVRTPSR7X0FQUF9VU0FHRV9TVEFUUzotZW5hYmxlZH0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19QUk9WSURFUj0ke19BUFBfTE9HR0lOR19QUk9WSURFUn0nCiAgICAgIC0gJ19BUFBfTE9HR0lOR19DT05GSUc9JHtfQVBQX0xPR0dJTkdfQ09ORklHfScKICAgICAgLSAnX0FQUF9VU0FHRV9BR0dSRUdBVElPTl9JTlRFUlZBTD0ke19BUFBfVVNBR0VfQUdHUkVHQVRJT05fSU5URVJWQUw6LTMwfScKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS10YXNrLXNjaGVkdWxlci1mdW5jdGlvbnM6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2FwcHdyaXRlOjEuNi4wJwogICAgZW50cnlwb2ludDogc2NoZWR1bGUtZnVuY3Rpb25zCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtdGFzay1zY2hlZHVsZXItZnVuY3Rpb25zCiAgICBkZXBlbmRzX29uOgogICAgICAtIGFwcHdyaXRlLW1hcmlhZGIKICAgICAgLSBhcHB3cml0ZS1yZWRpcwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ19BUFBfRU5WPSR7X0FQUF9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdfQVBQX1dPUktFUl9QRVJfQ09SRT0ke19BUFBfV09SS0VSX1BFUl9DT1JFOi02fScKICAgICAgLSBfQVBQX09QRU5TU0xfS0VZX1YxPSRTRVJWSUNFX1BBU1NXT1JEXzY0X0FQUFdSSVRFCiAgICAgIC0gJ19BUFBfUkVESVNfSE9TVD0ke19BUFBfUkVESVNfSE9TVDotYXBwd3JpdGUtcmVkaXN9JwogICAgICAtICdfQVBQX1JFRElTX1BPUlQ9JHtfQVBQX1JFRElTX1BPUlQ6LTYzNzl9JwogICAgICAtICdfQVBQX1JFRElTX1VTRVI9JHtfQVBQX1JFRElTX1VTRVJ9JwogICAgICAtICdfQVBQX1JFRElTX1BBU1M9JHtfQVBQX1JFRElTX1BBU1N9JwogICAgICAtICdfQVBQX0RCX0hPU1Q9JHtfQVBQX0RCX0hPU1Q6LWFwcHdyaXRlLW1hcmlhZGJ9JwogICAgICAtICdfQVBQX0RCX1BPUlQ9JHtfQVBQX0RCX1BPUlQ6LTMzMDZ9JwogICAgICAtICdfQVBQX0RCX1NDSEVNQT0ke19BUFBfREJfU0NIRU1BOi1hcHB3cml0ZX0nCiAgICAgIC0gX0FQUF9EQl9VU0VSPSRTRVJWSUNFX1VTRVJfTUFSSUFEQgogICAgICAtIF9BUFBfREJfUEFTUz0kU0VSVklDRV9QQVNTV09SRF9NQVJJQURCCiAgICAgIC0gJ19BUFBfREFUQUJBU0VfU0hBUkVEX1RBQkxFUz0ke19BUFBfREFUQUJBU0VfU0hBUkVEX1RBQkxFU30nCiAgYXBwd3JpdGUtdGFzay1zY2hlZHVsZXItZXhlY3V0aW9uczoKICAgIGltYWdlOiAnYXBwd3JpdGUvYXBwd3JpdGU6MS42LjAnCiAgICBlbnRyeXBvaW50OiBzY2hlZHVsZS1leGVjdXRpb25zCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtdGFzay1zY2hlZHVsZXItZXhlY3V0aW9ucwogICAgZGVwZW5kc19vbjoKICAgICAgLSBhcHB3cml0ZS1tYXJpYWRiCiAgICAgIC0gYXBwd3JpdGUtcmVkaXMKICAgIGVudmlyb25tZW50OgogICAgICAtICdfQVBQX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnX0FQUF9XT1JLRVJfUEVSX0NPUkU9JHtfQVBQX1dPUktFUl9QRVJfQ09SRTotNn0nCiAgICAgIC0gX0FQUF9PUEVOU1NMX0tFWV9WMT0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtICdfQVBQX1JFRElTX0hPU1Q9JHtfQVBQX1JFRElTX0hPU1Q6LWFwcHdyaXRlLXJlZGlzfScKICAgICAgLSAnX0FQUF9SRURJU19QT1JUPSR7X0FQUF9SRURJU19QT1JUOi02Mzc5fScKICAgICAgLSAnX0FQUF9SRURJU19VU0VSPSR7X0FQUF9SRURJU19VU0VSfScKICAgICAgLSAnX0FQUF9SRURJU19QQVNTPSR7X0FQUF9SRURJU19QQVNTfScKICAgICAgLSAnX0FQUF9EQl9IT1NUPSR7X0FQUF9EQl9IT1NUOi1hcHB3cml0ZS1tYXJpYWRifScKICAgICAgLSAnX0FQUF9EQl9QT1JUPSR7X0FQUF9EQl9QT1JUOi0zMzA2fScKICAgICAgLSAnX0FQUF9EQl9TQ0hFTUE9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIF9BUFBfREJfVVNFUj0kU0VSVklDRV9VU0VSX01BUklBREIKICAgICAgLSBfQVBQX0RCX1BBU1M9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtICdfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVM9JHtfQVBQX0RBVEFCQVNFX1NIQVJFRF9UQUJMRVN9JwogIGFwcHdyaXRlLXRhc2stc2NoZWR1bGVyLW1lc3NhZ2VzOgogICAgaW1hZ2U6ICdhcHB3cml0ZS9hcHB3cml0ZToxLjYuMCcKICAgIGVudHJ5cG9pbnQ6IHNjaGVkdWxlLW1lc3NhZ2VzCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtdGFzay1zY2hlZHVsZXItbWVzc2FnZXMKICAgIGRlcGVuZHNfb246CiAgICAgIC0gYXBwd3JpdGUtbWFyaWFkYgogICAgICAtIGFwcHdyaXRlLXJlZGlzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnX0FQUF9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gJ19BUFBfV09SS0VSX1BFUl9DT1JFPSR7X0FQUF9XT1JLRVJfUEVSX0NPUkU6LTZ9JwogICAgICAtIF9BUFBfT1BFTlNTTF9LRVlfVjE9JFNFUlZJQ0VfUEFTU1dPUkRfNjRfQVBQV1JJVEUKICAgICAgLSAnX0FQUF9SRURJU19IT1NUPSR7X0FQUF9SRURJU19IT1NUOi1hcHB3cml0ZS1yZWRpc30nCiAgICAgIC0gJ19BUFBfUkVESVNfUE9SVD0ke19BUFBfUkVESVNfUE9SVDotNjM3OX0nCiAgICAgIC0gJ19BUFBfUkVESVNfVVNFUj0ke19BUFBfUkVESVNfVVNFUn0nCiAgICAgIC0gJ19BUFBfUkVESVNfUEFTUz0ke19BUFBfUkVESVNfUEFTU30nCiAgICAgIC0gJ19BUFBfREJfSE9TVD0ke19BUFBfREJfSE9TVDotYXBwd3JpdGUtbWFyaWFkYn0nCiAgICAgIC0gJ19BUFBfREJfUE9SVD0ke19BUFBfREJfUE9SVDotMzMwNn0nCiAgICAgIC0gJ19BUFBfREJfU0NIRU1BPSR7X0FQUF9EQl9TQ0hFTUE6LWFwcHdyaXRlfScKICAgICAgLSBfQVBQX0RCX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gX0FQUF9EQl9QQVNTPSRTRVJWSUNFX1BBU1NXT1JEX01BUklBREIKICAgICAgLSAnX0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTPSR7X0FQUF9EQVRBQkFTRV9TSEFSRURfVEFCTEVTfScKICBhcHB3cml0ZS1hc3Npc3RhbnQ6CiAgICBpbWFnZTogJ2FwcHdyaXRlL2Fzc2lzdGFudDowLjQuMCcKICAgIGNvbnRhaW5lcl9uYW1lOiBhcHB3cml0ZS1hc3Npc3RhbnQKICAgIGVudmlyb25tZW50OgogICAgICAtIF9BUFBfQVNTSVNUQU5UX09QRU5BSV9BUElfS0VZCiAgb3BlbnJ1bnRpbWVzLWV4ZWN1dG9yOgogICAgY29udGFpbmVyX25hbWU6IG9wZW5ydW50aW1lcy1leGVjdXRvcgogICAgaG9zdG5hbWU6IGFwcHdyaXRlLWV4ZWN1dG9yCiAgICBzdG9wX3NpZ25hbDogU0lHSU5UCiAgICBpbWFnZTogJ29wZW5ydW50aW1lcy9leGVjdXRvcjowLjYuMTEnCiAgICBuZXR3b3JrczoKICAgICAgLSBydW50aW1lcwogICAgdm9sdW1lczoKICAgICAgLSAnL3Zhci9ydW4vZG9ja2VyLnNvY2s6L3Zhci9ydW4vZG9ja2VyLnNvY2snCiAgICAgIC0gJ2FwcHdyaXRlLWJ1aWxkczovc3RvcmFnZS9idWlsZHM6cncnCiAgICAgIC0gJ2FwcHdyaXRlLWZ1bmN0aW9uczovc3RvcmFnZS9mdW5jdGlvbnM6cncnCiAgICAgIC0gJy90bXA6L3RtcDpydycKICAgIGVudmlyb25tZW50OgogICAgICAtICdPUFJfRVhFQ1VUT1JfSU5BQ1RJVkVfVFJFU0hPTEQ9JHtfQVBQX0ZVTkNUSU9OU19JTkFDVElWRV9USFJFU0hPTER9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfTUFJTlRFTkFOQ0VfSU5URVJWQUw9JHtfQVBQX0ZVTkNUSU9OU19NQUlOVEVOQU5DRV9JTlRFUlZBTH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9ORVRXT1JLPSR7X0FQUF9GVU5DVElPTlNfUlVOVElNRVNfTkVUV09SSzotcnVudGltZXN9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfRE9DS0VSX0hVQl9VU0VSTkFNRT0ke19BUFBfRE9DS0VSX0hVQl9VU0VSTkFNRX0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9ET0NLRVJfSFVCX1BBU1NXT1JEPSR7X0FQUF9ET0NLRVJfSFVCX1BBU1NXT1JEfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX0VOVj0ke19BUFBfRU5WOi1wcm9kdWN0aW9ufScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1JVTlRJTUVTPSR7X0FQUF9GVU5DVElPTlNfUlVOVElNRVN9JwogICAgICAtIE9QUl9FWEVDVVRPUl9TRUNSRVQ9JFNFUlZJQ0VfUEFTU1dPUkRfNjRfQVBQV1JJVEUKICAgICAgLSAnT1BSX0VYRUNVVE9SX1JVTlRJTUVfVkVSU0lPTlM9djIsdjQnCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9MT0dHSU5HX1BST1ZJREVSPSR7X0FQUF9MT0dHSU5HX1BST1ZJREVSfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX0xPR0dJTkdfQ09ORklHPSR7X0FQUF9MT0dHSU5HX0NPTkZJR30nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0RFVklDRT0ke19BUFBfU1RPUkFHRV9ERVZJQ0U6LWxvY2FsfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfUzNfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9TM19BQ0NFU1NfS0VZOi1sb2NhbH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX1MzX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9TM19TRUNSRVR9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9TM19SRUdJT049JHtfQVBQX1NUT1JBR0VfUzNfUkVHSU9OfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfUzNfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX1MzX0JVQ0tFVH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0RPX1NQQUNFU19BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX0RPX1NQQUNFU19BQ0NFU1NfS0VZfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfRE9fU1BBQ0VTX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfU0VDUkVUfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfRE9fU1BBQ0VTX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfUkVHSU9OfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfRE9fU1BBQ0VTX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9ET19TUEFDRVNfQlVDS0VUfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfQkFDS0JMQVpFX0FDQ0VTU19LRVk9JHtfQVBQX1NUT1JBR0VfQkFDS0JMQVpFX0FDQ0VTU19LRVl9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9CQUNLQkxBWkVfU0VDUkVUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9TRUNSRVR9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9CQUNLQkxBWkVfUkVHSU9OPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9SRUdJT059JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9CQUNLQkxBWkVfQlVDS0VUPSR7X0FQUF9TVE9SQUdFX0JBQ0tCTEFaRV9CVUNLRVR9JwogICAgICAtICdPUFJfRVhFQ1VUT1JfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWT0ke19BUFBfU1RPUkFHRV9MSU5PREVfQUNDRVNTX0tFWX0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0xJTk9ERV9TRUNSRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX1NFQ1JFVH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0xJTk9ERV9SRUdJT049JHtfQVBQX1NUT1JBR0VfTElOT0RFX1JFR0lPTn0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX0xJTk9ERV9CVUNLRVQ9JHtfQVBQX1NUT1JBR0VfTElOT0RFX0JVQ0tFVH0nCiAgICAgIC0gJ09QUl9FWEVDVVRPUl9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZPSR7X0FQUF9TVE9SQUdFX1dBU0FCSV9BQ0NFU1NfS0VZfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfV0FTQUJJX1NFQ1JFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfU0VDUkVUfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfV0FTQUJJX1JFR0lPTj0ke19BUFBfU1RPUkFHRV9XQVNBQklfUkVHSU9OfScKICAgICAgLSAnT1BSX0VYRUNVVE9SX1NUT1JBR0VfV0FTQUJJX0JVQ0tFVD0ke19BUFBfU1RPUkFHRV9XQVNBQklfQlVDS0VUfScKICBvcGVucnVudGltZXMtcHJveHk6CiAgICBjb250YWluZXJfbmFtZTogb3BlbnJ1bnRpbWVzLXByb3h5CiAgICBob3N0bmFtZTogcHJveHkKICAgIHN0b3Bfc2lnbmFsOiBTSUdJTlQKICAgIGltYWdlOiAnb3BlbnJ1bnRpbWVzL3Byb3h5OjAuNS41JwogICAgbmV0d29ya3M6CiAgICAgIC0gcnVudGltZXMKICAgIGVudmlyb25tZW50OgogICAgICAtICdPUFJfUFJPWFlfV09SS0VSX1BFUl9DT1JFPSR7T1BSX1BST1hZX1dPUktFUl9QRVJfQ09SRTotMX0nCiAgICAgIC0gJ09QUl9QUk9YWV9FTlY9JHtfQVBQX0VOVjotcHJvZHVjdGlvbn0nCiAgICAgIC0gT1BSX1BST1hZX0VYRUNVVE9SX1NFQ1JFVD0kU0VSVklDRV9QQVNTV09SRF82NF9BUFBXUklURQogICAgICAtIE9QUl9QUk9YWV9TRUNSRVQ9JFNFUlZJQ0VfUEFTU1dPUkRfNjRfQVBQV1JJVEUKICAgICAgLSBPUFJfUFJPWFlfTE9HR0lOR19DT05GSUc9JF9BUFBfTE9HR0lOR19DT05GSUcKICAgICAgLSBPUFJfUFJPWFlfQUxHT1JJVEhNPXJhbmRvbQogICAgICAtIE9QUl9QUk9YWV9FWEVDVVRPUlM9ZXhjMQogICAgICAtIE9QUl9QUk9YWV9IRUFMVEhDSEVDS19JTlRFUlZBTD0xMDAwMAogICAgICAtIE9QUl9QUk9YWV9NQVhfVElNRU9VVD02MDAKICAgICAgLSBPUFJfUFJPWFlfSEVBTFRIQ0hFQ0s9ZW5hYmxlZAogIGFwcHdyaXRlLW1hcmlhZGI6CiAgICBpbWFnZTogJ21hcmlhZGI6MTAuMTEnCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtbWFyaWFkYgogICAgdm9sdW1lczoKICAgICAgLSAnYXBwd3JpdGUtbWFyaWFkYjovdmFyL2xpYi9teXNxbDpydycKICAgIGVudmlyb25tZW50OgogICAgICAtIE1ZU1FMX1JPT1RfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQlJPT1QKICAgICAgLSAnTVlTUUxfREFUQUJBU0U9JHtfQVBQX0RCX1NDSEVNQTotYXBwd3JpdGV9JwogICAgICAtIE1ZU1FMX1VTRVI9JFNFUlZJQ0VfVVNFUl9NQVJJQURCCiAgICAgIC0gTVlTUUxfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfTUFSSUFEQgogICAgICAtIE1BUklBREJfQVVUT19VUEdSQURFPTEKICAgIGNvbW1hbmQ6ICdteXNxbGQgLS1pbm5vZGItZmx1c2gtbWV0aG9kPWZzeW5jJwogIGFwcHdyaXRlLXJlZGlzOgogICAgaW1hZ2U6ICdyZWRpczo3LjIuNC1hbHBpbmUnCiAgICBjb250YWluZXJfbmFtZTogYXBwd3JpdGUtcmVkaXMKICAgIGNvbW1hbmQ6ICJyZWRpcy1zZXJ2ZXIgLS1tYXhtZW1vcnkgICAgICAgICAgICA1MTJtYiAtLW1heG1lbW9yeS1wb2xpY3kgICAgIGFsbGtleXMtbHJ1IC0tbWF4bWVtb3J5LXNhbXBsZXMgICAgNVxuIgogICAgdm9sdW1lczoKICAgICAgLSAnYXBwd3JpdGUtcmVkaXM6L2RhdGE6cncnCm5ldHdvcmtzOgogIHJ1bnRpbWVzOgogICAgbmFtZTogcnVudGltZXMKdm9sdW1lczoKICBhcHB3cml0ZS1tYXJpYWRiOiBudWxsCiAgYXBwd3JpdGUtcmVkaXM6IG51bGwKICBhcHB3cml0ZS1jYWNoZTogbnVsbAogIGFwcHdyaXRlLXVwbG9hZHM6IG51bGwKICBhcHB3cml0ZS1jZXJ0aWZpY2F0ZXM6IG51bGwKICBhcHB3cml0ZS1mdW5jdGlvbnM6IG51bGwKICBhcHB3cml0ZS1idWlsZHM6IG51bGwKICBhcHB3cml0ZS1jb25maWc6IG51bGwK", "tags": [ "backend-as-a-service", "platform" @@ -2567,7 +2567,7 @@ "trigger": { "documentation": "https://trigger.dev?utm_source=coolify.io", "slogan": "The open source Background Jobs framework for TypeScript", - "compose": "eC1jb21tb24tZW52OgogIFBPUlQ6IDMwMzAKICBSRU1JWF9BUFBfUE9SVDogMzAwMAogIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICBWM19FTkFCTEVEOiB0cnVlCiAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgUE9TVEdSRVNfVVNFUjogJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgTUFHSUNfTElOS19TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X01BR0lDCiAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfRU5DUllQVElPTgogIFBST1ZJREVSX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfUFJPVklERVIKICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgREFUQUJBU0VfSE9TVDogcG9zdGdyZXNxbAogIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCJwogIERJUkVDVF9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQicKICBSRURJU19IT1NUOiByZWRpcwogIFJFRElTX1BPUlQ6IDYzNzkKICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICBDT09SRElOQVRPUl9QT1JUOiA5MDIwCiAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogIEFETUlOX0VNQUlMUzogJycKICBERUZBVUxUX09SR19FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ6IDMwMAogIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogIERFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0U6IHRyaWdnZXIKICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICBBVVRIX0dJVEhVQl9DTElFTlRfSUQ6ICcke0FVVEhfR0lUSFVCX0NMSUVOVF9JRH0nCiAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICBGUk9NX0VNQUlMOiAnJHtGUk9NX0VNQUlMfScKICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICBBUFBfT1JJR0lOOiAkU0VSVklDRV9GUUROX1RSSUdHRVJfMzAwMAogIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICdodHRwOi8vdHJpZ2dlcjozMDQwL290ZWwnCiAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCnNlcnZpY2VzOgogIHRyaWdnZXI6CiAgICBpbWFnZTogJ2doY3IuaW8vdHJpZ2dlcmRvdGRldi90cmlnZ2VyLmRldjp2MycKICAgIGVudmlyb25tZW50OgogICAgICBTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwOiAnJwogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6IHBvc3RncmVzcWwKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREInCiAgICAgIERJUkVDVF9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQicKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzcWw6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgcmVkaXM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgZWxlY3RyaWM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OiAidGltZW91dCAxMHMgYmFzaCAtYyAnOj4gL2Rldi90Y3AvMTI3LjAuMC4xLzMwMDAnIHx8IGV4aXQgMSIKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1CiAgZWxlY3RyaWM6CiAgICBpbWFnZTogZWxlY3RyaWNzcWwvZWxlY3RyaWMKICAgIGVudmlyb25tZW50OgogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6IHBvc3RncmVzcWwKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREInCiAgICAgIERJUkVDVF9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQicKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzcWw6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSBwd2QKICByZWRpczoKICAgIGltYWdlOiAncmVkaXM6NycKICAgIGVudmlyb25tZW50OgogICAgICAtIEFMTE9XX0VNUFRZX1BBU1NXT1JEPXllcwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdyZWRpcy1jbGkgLWggbG9jYWxob3N0IC1wIDYzNzkgcGluZycKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDMKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3JlZGlzLWRhdGE6L2RhdGEnCiAgcG9zdGdyZXNxbDoKICAgIGltYWdlOiAncG9zdGdyZXM6MTYtYWxwaW5lJwogICAgdm9sdW1lczoKICAgICAgLSAncG9zdGdyZXNxbC1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6IHBvc3RncmVzcWwKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREInCiAgICAgIERJUkVDVF9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQicKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgIGNvbW1hbmQ6CiAgICAgIC0gJy1jJwogICAgICAtIHdhbF9sZXZlbD1sb2dpY2FsCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3BnX2lzcmVhZHkgLVUgJCR7UE9TVEdSRVNfVVNFUn0gLWQgJCR7UE9TVEdSRVNfREJ9JwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgZG9ja2VyLXByb3ZpZGVyOgogICAgaW1hZ2U6ICdnaGNyLmlvL3RyaWdnZXJkb3RkZXYvcHJvdmlkZXIvZG9ja2VyOnYzJwogICAgcGxhdGZvcm06IGxpbnV4L2FtZDY0CiAgICB2b2x1bWVzOgogICAgICAtICcvdmFyL3J1bi9kb2NrZXIuc29jazovdmFyL3J1bi9kb2NrZXIuc29jaycKICAgIHVzZXI6IHJvb3QKICAgIGRlcGVuZHNfb246CiAgICAgIHRyaWdnZXI6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGVudmlyb25tZW50OgogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6IHBvc3RncmVzcWwKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREInCiAgICAgIERJUkVDVF9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQicKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgICAgUExBVEZPUk1fSE9TVDogdHJpZ2dlcgogICAgICBQTEFURk9STV9XU19QT1JUOiAzMDMwCiAgICAgIFNFQ1VSRV9DT05ORUNUSU9OOiAnZmFsc2UnCiAgICAgIFBMQVRGT1JNX1NFQ1JFVDogJFBST1ZJREVSX1NFQ1JFVAogIGNvb3JkaW5hdG9yOgogICAgaW1hZ2U6ICdnaGNyLmlvL3RyaWdnZXJkb3RkZXYvY29vcmRpbmF0b3I6djMnCiAgICBwbGF0Zm9ybTogbGludXgvYW1kNjQKICAgIHZvbHVtZXM6CiAgICAgIC0gJy92YXIvcnVuL2RvY2tlci5zb2NrOi92YXIvcnVuL2RvY2tlci5zb2NrJwogICAgdXNlcjogcm9vdAogICAgZGVwZW5kc19vbjoKICAgICAgdHJpZ2dlcjoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW52aXJvbm1lbnQ6CiAgICAgIFBPUlQ6IDMwMzAKICAgICAgUkVNSVhfQVBQX1BPUlQ6IDMwMDAKICAgICAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICAgICAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICAgICAgVjNfRU5BQkxFRDogdHJ1ZQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgICAgIFBPU1RHUkVTX1VTRVI6ICRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgICAgIE1BR0lDX0xJTktfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9NQUdJQwogICAgICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfU0VTU0lPTgogICAgICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfRU5DUllQVElPTgogICAgICBQUk9WSURFUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICAgICAgREFUQUJBU0VfSE9TVDogcG9zdGdyZXNxbAogICAgICBEQVRBQkFTRV9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQicKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCJwogICAgICBSRURJU19IT1NUOiByZWRpcwogICAgICBSRURJU19QT1JUOiA2Mzc5CiAgICAgIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogICAgICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICAgICAgQ09PUkRJTkFUT1JfUE9SVDogOTAyMAogICAgICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgICAgIEFETUlOX0VNQUlMUzogJycKICAgICAgREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAzMDAKICAgICAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICAgICAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogICAgICBERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOiB0cmlnZ2VyCiAgICAgIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICAgICAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX0lEOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICAgICAgRlJPTV9FTUFJTDogJyR7RlJPTV9FTUFJTH0nCiAgICAgIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogICAgICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICdodHRwOi8vdHJpZ2dlcjozMDQwL290ZWwnCiAgICAgIEVMRUNUUklDX09SSUdJTjogJ2h0dHA6Ly9lbGVjdHJpYzozMDAwJwogICAgICBQTEFURk9STV9IT1NUOiB0cmlnZ2VyCiAgICAgIFBMQVRGT1JNX1dTX1BPUlQ6IDMwMzAKICAgICAgU0VDVVJFX0NPTk5FQ1RJT046ICdmYWxzZScKICAgICAgUExBVEZPUk1fU0VDUkVUOiAkQ09PUkRJTkFUT1JfU0VDUkVUCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gcHdkCg==", + "compose": "eC1jb21tb24tZW52OgogIFBPUlQ6IDMwMzAKICBSRU1JWF9BUFBfUE9SVDogMzAwMAogIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICBWM19FTkFCTEVEOiB0cnVlCiAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgUE9TVEdSRVNfVVNFUjogJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgTUFHSUNfTElOS19TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X01BR0lDCiAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfRU5DUllQVElPTgogIFBST1ZJREVSX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfUFJPVklERVIKICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgREFUQUJBU0VfSE9TVDogJ3Bvc3RncmVzcWw6NTQzMicKICBEQVRBQkFTRV9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQj9zc2xtb2RlPWRpc2FibGUnCiAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICBSRURJU19IT1NUOiByZWRpcwogIFJFRElTX1BPUlQ6IDYzNzkKICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICBDT09SRElOQVRPUl9QT1JUOiA5MDIwCiAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogIEFETUlOX0VNQUlMUzogJycKICBERUZBVUxUX09SR19FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ6IDMwMAogIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogIERFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0U6IHRyaWdnZXIKICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICBBVVRIX0dJVEhVQl9DTElFTlRfSUQ6ICcke0FVVEhfR0lUSFVCX0NMSUVOVF9JRH0nCiAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICBGUk9NX0VNQUlMOiAnJHtGUk9NX0VNQUlMfScKICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICBBUFBfT1JJR0lOOiAkU0VSVklDRV9GUUROX1RSSUdHRVJfMzAwMAogIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICdodHRwOi8vdHJpZ2dlcjozMDQwL290ZWwnCiAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCnNlcnZpY2VzOgogIHRyaWdnZXI6CiAgICBpbWFnZTogJ2doY3IuaW8vdHJpZ2dlcmRvdGRldi90cmlnZ2VyLmRldjp2MycKICAgIGVudmlyb25tZW50OgogICAgICBTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwOiAnJwogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzcWw6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgcmVkaXM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgZWxlY3RyaWM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OiAidGltZW91dCAxMHMgYmFzaCAtYyAnOj4gL2Rldi90Y3AvMTI3LjAuMC4xLzMwMDAnIHx8IGV4aXQgMSIKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1CiAgZWxlY3RyaWM6CiAgICBpbWFnZTogZWxlY3RyaWNzcWwvZWxlY3RyaWMKICAgIGVudmlyb25tZW50OgogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzcWw6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSBwd2QKICByZWRpczoKICAgIGltYWdlOiAncmVkaXM6NycKICAgIGVudmlyb25tZW50OgogICAgICAtIEFMTE9XX0VNUFRZX1BBU1NXT1JEPXllcwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdyZWRpcy1jbGkgLWggbG9jYWxob3N0IC1wIDYzNzkgcGluZycKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDMKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3JlZGlzLWRhdGE6L2RhdGEnCiAgcG9zdGdyZXNxbDoKICAgIGltYWdlOiAncG9zdGdyZXM6MTYtYWxwaW5lJwogICAgdm9sdW1lczoKICAgICAgLSAncG9zdGdyZXNxbC1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgIGNvbW1hbmQ6CiAgICAgIC0gJy1jJwogICAgICAtIHdhbF9sZXZlbD1sb2dpY2FsCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3BnX2lzcmVhZHkgLVUgJCR7UE9TVEdSRVNfVVNFUn0gLWQgJCR7UE9TVEdSRVNfREJ9JwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgZG9ja2VyLXByb3ZpZGVyOgogICAgaW1hZ2U6ICdnaGNyLmlvL3RyaWdnZXJkb3RkZXYvcHJvdmlkZXIvZG9ja2VyOnYzJwogICAgcGxhdGZvcm06IGxpbnV4L2FtZDY0CiAgICB2b2x1bWVzOgogICAgICAtICcvdmFyL3J1bi9kb2NrZXIuc29jazovdmFyL3J1bi9kb2NrZXIuc29jaycKICAgIHVzZXI6IHJvb3QKICAgIGRlcGVuZHNfb246CiAgICAgIHRyaWdnZXI6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGVudmlyb25tZW50OgogICAgICBQT1JUOiAzMDMwCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAnaHR0cDovL3RyaWdnZXI6MzA0MC9vdGVsJwogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgICAgUExBVEZPUk1fSE9TVDogdHJpZ2dlcgogICAgICBQTEFURk9STV9XU19QT1JUOiAzMDMwCiAgICAgIFNFQ1VSRV9DT05ORUNUSU9OOiAnZmFsc2UnCiAgICAgIFBMQVRGT1JNX1NFQ1JFVDogJFBST1ZJREVSX1NFQ1JFVAogIGNvb3JkaW5hdG9yOgogICAgaW1hZ2U6ICdnaGNyLmlvL3RyaWdnZXJkb3RkZXYvY29vcmRpbmF0b3I6djMnCiAgICBwbGF0Zm9ybTogbGludXgvYW1kNjQKICAgIHZvbHVtZXM6CiAgICAgIC0gJy92YXIvcnVuL2RvY2tlci5zb2NrOi92YXIvcnVuL2RvY2tlci5zb2NrJwogICAgdXNlcjogcm9vdAogICAgZGVwZW5kc19vbjoKICAgICAgdHJpZ2dlcjoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW52aXJvbm1lbnQ6CiAgICAgIFBPUlQ6IDMwMzAKICAgICAgUkVNSVhfQVBQX1BPUlQ6IDMwMDAKICAgICAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICAgICAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICAgICAgVjNfRU5BQkxFRDogdHJ1ZQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgICAgIFBPU1RHUkVTX1VTRVI6ICRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgICAgIE1BR0lDX0xJTktfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9NQUdJQwogICAgICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfU0VTU0lPTgogICAgICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfRU5DUllQVElPTgogICAgICBQUk9WSURFUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICAgICAgREFUQUJBU0VfSE9TVDogJ3Bvc3RncmVzcWw6NTQzMicKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBSRURJU19IT1NUOiByZWRpcwogICAgICBSRURJU19QT1JUOiA2Mzc5CiAgICAgIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogICAgICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICAgICAgQ09PUkRJTkFUT1JfUE9SVDogOTAyMAogICAgICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgICAgIEFETUlOX0VNQUlMUzogJycKICAgICAgREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAzMDAKICAgICAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICAgICAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogICAgICBERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOiB0cmlnZ2VyCiAgICAgIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICAgICAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX0lEOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICAgICAgRlJPTV9FTUFJTDogJyR7RlJPTV9FTUFJTH0nCiAgICAgIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogICAgICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICdodHRwOi8vdHJpZ2dlcjozMDQwL290ZWwnCiAgICAgIEVMRUNUUklDX09SSUdJTjogJ2h0dHA6Ly9lbGVjdHJpYzozMDAwJwogICAgICBQTEFURk9STV9IT1NUOiB0cmlnZ2VyCiAgICAgIFBMQVRGT1JNX1dTX1BPUlQ6IDMwMzAKICAgICAgU0VDVVJFX0NPTk5FQ1RJT046ICdmYWxzZScKICAgICAgUExBVEZPUk1fU0VDUkVUOiAkQ09PUkRJTkFUT1JfU0VDUkVUCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gcHdkCg==", "tags": [ "trigger.dev", "background jobs", @@ -2584,7 +2584,7 @@ "twenty": { "documentation": "https://docs.twenty.com?utm_source=coolify.io", "slogan": "Twenty is a CRM designed to fit your unique business needs.", - "compose": "c2VydmljZXM6CiAgdHdlbnR5OgogICAgaW1hZ2U6ICd0d2VudHljcm0vdHdlbnR5OmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9UV0VOVFlfMzAwMAogICAgICAtIFNFUlZFUl9VUkw9JFNFUlZJQ0VfRlFETl9UV0VOVFkKICAgICAgLSBGUk9OVF9CQVNFX1VSTD0kU0VSVklDRV9GUUROX1RXRU5UWQogICAgICAtIEVOQUJMRV9EQl9NSUdSQVRJT05TPXRydWUKICAgICAgLSAnQ0FDSEVfU1RPUkFHRV9UWVBFPSR7Q0FDSEVfU1RPUkFHRV9UWVBFOi1yZWRpc30nCiAgICAgIC0gUkVESVNfSE9TVD1yZWRpcwogICAgICAtIFJFRElTX1BPUlQ9NjM3OQogICAgICAtICdBUElfUkFURV9MSU1JVElOR19UVEw9JHtBUElfUkFURV9MSU1JVElOR19UVEw6LTEwMH0nCiAgICAgIC0gJ0FQSV9SQVRFX0xJTUlUSU5HX0xJTUlUPSR7QVBJX1JBVEVfTElNSVRJTkdfTElNSVQ6LTEwMH0nCiAgICAgIC0gQUNDRVNTX1RPS0VOX1NFQ1JFVD0kU0VSVklDRV9CQVNFNjRfMzJfQUNDRVNTCiAgICAgIC0gTE9HSU5fVE9LRU5fU0VDUkVUPSRTRVJWSUNFX0JBU0U2NF8zMl9MT0dJTgogICAgICAtIFJFRlJFU0hfVE9LRU5fU0VDUkVUPSRTRVJWSUNFX0JBU0U2NF8zMl9SRUZSRVNICiAgICAgIC0gRklMRV9UT0tFTl9TRUNSRVQ9JFNFUlZJQ0VfQkFTRTY0XzMyX0ZJTEUKICAgICAgLSBQT1NUR1JFU19BRE1JTl9QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtICdQR19EQVRBQkFTRV9VUkw9cG9zdGdyZXM6Ly9wb3N0Z3JlczokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlczo1NDMyL2RlZmF1bHQnCiAgICAgIC0gJ0lTX1NJR05fVVBfRElTQUJMRUQ9JHtJU19TSUdOX1VQX0RJU0FCTEVEOi1mYWxzZX0nCiAgICAgIC0gJ1BBU1NXT1JEX1JFU0VUX1RPS0VOX0VYUElSRVNfSU49JHtQQVNTV09SRF9SRVNFVF9UT0tFTl9FWFBJUkVTX0lOOi01bX0nCiAgICAgIC0gV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX05PVElGSUNBVElPTj0kV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX05PVElGSUNBVElPTgogICAgICAtIFdPUktTUEFDRV9JTkFDVElWRV9EQVlTX0JFRk9SRV9ERUxFVElPTj0kV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX0RFTEVUSU9OCiAgICAgIC0gJ1NUT1JBR0VfVFlQRT0ke1NUT1JBR0VfVFlQRTotbG9jYWx9JwogICAgICAtIFNUT1JBR0VfUzNfUkVHSU9OPSRTVE9SQUdFX1MzX1JFR0lPTgogICAgICAtIFNUT1JBR0VfUzNfTkFNRT0kU1RPUkFHRV9TM19OQU1FCiAgICAgIC0gU1RPUkFHRV9TM19FTkRQT0lOVD0kU1RPUkFHRV9TM19FTkRQT0lOVAogICAgICAtIFNUT1JBR0VfUzNfQUNDRVNTX0tFWV9JRD0kU1RPUkFHRV9TM19BQ0NFU1NfS0VZX0lECiAgICAgIC0gU1RPUkFHRV9TM19TRUNSRVRfQUNDRVNTX0tFWT0kU1RPUkFHRV9TM19TRUNSRVRfQUNDRVNTX0tFWQogICAgICAtICdNRVNTQUdFX1FVRVVFX1RZUEU9JHtNRVNTQUdFX1FVRVVFX1RZUEU6LXBnLWJvc3N9JwogICAgICAtIEVNQUlMX0ZST01fQUREUkVTUz0kRU1BSUxfRlJPTV9BRERSRVNTCiAgICAgIC0gRU1BSUxfRlJPTV9OQU1FPSRFTUFJTF9GUk9NX05BTUUKICAgICAgLSBFTUFJTF9TWVNURU1fQUREUkVTUz0kRU1BSUxfU1lTVEVNX0FERFJFU1MKICAgICAgLSAnRU1BSUxfRFJJVkVSPSR7RU1BSUxfRFJJVkVSOi1sb2dnZXJ9JwogICAgICAtIEVNQUlMX1NNVFBfSE9TVD0kRU1BSUxfU01UUF9IT1NUCiAgICAgIC0gRU1BSUxfU01UUF9QT1JUPSRFTUFJTF9TTVRQX1BPUlQKICAgICAgLSBFTUFJTF9TTVRQX1VTRVI9JEVNQUlMX1NNVFBfVVNFUgogICAgICAtIEVNQUlMX1NNVFBfUEFTU1dPUkQ9JEVNQUlMX1NNVFBfUEFTU1dPUkQKICAgICAgLSBTSUdOX0lOX1BSRUZJTExFRD1mYWxzZQogICAgICAtICdERUJVR19NT0RFPSR7REVCVUdfTU9ERTotZmFsc2V9JwogICAgICAtICdURUxFTUVUUllfRU5BQkxFRD0ke1RFTEVNRVRSWV9FTkFCTEVEOi1mYWxzZX0nCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3JlczoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vMTI3LjAuMC4xOjMwMDAvaGVhbHRoeicKICAgICAgaW50ZXJ2YWw6IDJzCiAgICAgIHRpbWVvdXQ6IDEwcwogICAgICByZXRyaWVzOiAxNQogIHBvc3RncmVzOgogICAgaW1hZ2U6ICd0d2VudHljcm0vdHdlbnR5LXBvc3RncmVzOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFBPU1RHUkVTX1VTRVI9cG9zdGdyZXMKICAgICAgLSBQT1NUR1JFU19QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtIFBPU1RHUkVTX0RCPWRlZmF1bHQKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3BnLWRhdGE6L2JpdG5hbWkvcG9zdGdyZXNxbCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAKICByZWRpczoKICAgIGltYWdlOiAncmVkaXM6bGF0ZXN0JwogICAgdm9sdW1lczoKICAgICAgLSAncmVkaXMtZGF0YTovZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSByZWRpcy1jbGkKICAgICAgICAtIHBpbmcKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAo=", + "compose": "c2VydmljZXM6CiAgdHdlbnR5OgogICAgaW1hZ2U6ICd0d2VudHljcm0vdHdlbnR5OmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9UV0VOVFlfMzAwMAogICAgICAtIFNFUlZFUl9VUkw9JFNFUlZJQ0VfRlFETl9UV0VOVFkKICAgICAgLSBGUk9OVF9CQVNFX1VSTD0kU0VSVklDRV9GUUROX1RXRU5UWQogICAgICAtIEVOQUJMRV9EQl9NSUdSQVRJT05TPXRydWUKICAgICAgLSAnQ0FDSEVfU1RPUkFHRV9UWVBFPSR7Q0FDSEVfU1RPUkFHRV9UWVBFOi1yZWRpc30nCiAgICAgIC0gJ1JFRElTX1VSTD1yZWRpczovL3JlZGlzOjYzNzknCiAgICAgIC0gJ0FQSV9SQVRFX0xJTUlUSU5HX1RUTD0ke0FQSV9SQVRFX0xJTUlUSU5HX1RUTDotMTAwfScKICAgICAgLSAnQVBJX1JBVEVfTElNSVRJTkdfTElNSVQ9JHtBUElfUkFURV9MSU1JVElOR19MSU1JVDotMTAwfScKICAgICAgLSBBUFBfU0VDUkVUPSRTRVJWSUNFX0JBU0U2NF8zMl9TRUNSRVQKICAgICAgLSBQT1NUR1JFU19BRE1JTl9QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtICdQR19EQVRBQkFTRV9VUkw9cG9zdGdyZXM6Ly9wb3N0Z3JlczokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlczo1NDMyL2RlZmF1bHQnCiAgICAgIC0gJ0lTX1NJR05fVVBfRElTQUJMRUQ9JHtJU19TSUdOX1VQX0RJU0FCTEVEOi1mYWxzZX0nCiAgICAgIC0gJ1BBU1NXT1JEX1JFU0VUX1RPS0VOX0VYUElSRVNfSU49JHtQQVNTV09SRF9SRVNFVF9UT0tFTl9FWFBJUkVTX0lOOi01bX0nCiAgICAgIC0gV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX05PVElGSUNBVElPTj0kV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX05PVElGSUNBVElPTgogICAgICAtIFdPUktTUEFDRV9JTkFDVElWRV9EQVlTX0JFRk9SRV9ERUxFVElPTj0kV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX0RFTEVUSU9OCiAgICAgIC0gJ1NUT1JBR0VfVFlQRT0ke1NUT1JBR0VfVFlQRTotbG9jYWx9JwogICAgICAtIFNUT1JBR0VfUzNfUkVHSU9OPSRTVE9SQUdFX1MzX1JFR0lPTgogICAgICAtIFNUT1JBR0VfUzNfTkFNRT0kU1RPUkFHRV9TM19OQU1FCiAgICAgIC0gU1RPUkFHRV9TM19FTkRQT0lOVD0kU1RPUkFHRV9TM19FTkRQT0lOVAogICAgICAtIFNUT1JBR0VfUzNfQUNDRVNTX0tFWV9JRD0kU1RPUkFHRV9TM19BQ0NFU1NfS0VZX0lECiAgICAgIC0gU1RPUkFHRV9TM19TRUNSRVRfQUNDRVNTX0tFWT0kU1RPUkFHRV9TM19TRUNSRVRfQUNDRVNTX0tFWQogICAgICAtICdNRVNTQUdFX1FVRVVFX1RZUEU9JHtNRVNTQUdFX1FVRVVFX1RZUEU6LXBnLWJvc3N9JwogICAgICAtIEVNQUlMX0ZST01fQUREUkVTUz0kRU1BSUxfRlJPTV9BRERSRVNTCiAgICAgIC0gRU1BSUxfRlJPTV9OQU1FPSRFTUFJTF9GUk9NX05BTUUKICAgICAgLSBFTUFJTF9TWVNURU1fQUREUkVTUz0kRU1BSUxfU1lTVEVNX0FERFJFU1MKICAgICAgLSAnRU1BSUxfRFJJVkVSPSR7RU1BSUxfRFJJVkVSOi1sb2dnZXJ9JwogICAgICAtIEVNQUlMX1NNVFBfSE9TVD0kRU1BSUxfU01UUF9IT1NUCiAgICAgIC0gRU1BSUxfU01UUF9QT1JUPSRFTUFJTF9TTVRQX1BPUlQKICAgICAgLSBFTUFJTF9TTVRQX1VTRVI9JEVNQUlMX1NNVFBfVVNFUgogICAgICAtIEVNQUlMX1NNVFBfUEFTU1dPUkQ9JEVNQUlMX1NNVFBfUEFTU1dPUkQKICAgICAgLSBTSUdOX0lOX1BSRUZJTExFRD1mYWxzZQogICAgICAtICdERUJVR19NT0RFPSR7REVCVUdfTU9ERTotZmFsc2V9JwogICAgICAtICdURUxFTUVUUllfRU5BQkxFRD0ke1RFTEVNRVRSWV9FTkFCTEVEOi1mYWxzZX0nCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3JlczoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vMTI3LjAuMC4xOjMwMDAvaGVhbHRoeicKICAgICAgaW50ZXJ2YWw6IDJzCiAgICAgIHRpbWVvdXQ6IDEwcwogICAgICByZXRyaWVzOiAxNQogIHBvc3RncmVzOgogICAgaW1hZ2U6ICd0d2VudHljcm0vdHdlbnR5LXBvc3RncmVzOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFBPU1RHUkVTX1VTRVI9cG9zdGdyZXMKICAgICAgLSBQT1NUR1JFU19QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtIFBPU1RHUkVTX0RCPWRlZmF1bHQKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3BnLWRhdGE6L2JpdG5hbWkvcG9zdGdyZXNxbCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAKICByZWRpczoKICAgIGltYWdlOiAncmVkaXM6bGF0ZXN0JwogICAgdm9sdW1lczoKICAgICAgLSAncmVkaXMtZGF0YTovZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSByZWRpcy1jbGkKICAgICAgICAtIHBpbmcKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAo=", "tags": [ "crm", "self-hosted",

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 Id5f_B12U>RZ~y=R literal 0 HcmV?d00001 diff --git a/templates/compose/apprise-api.yaml b/templates/compose/apprise-api.yaml index e13450de1..ea6a9dd63 100644 --- a/templates/compose/apprise-api.yaml +++ b/templates/compose/apprise-api.yaml @@ -1,6 +1,12 @@ +# documentation: https://docs.linuxserver.io/images/docker-apprise-api/ +# slogan: Push Notifications API +# tags: api, apprise +# logo: svgs/apprise.png +# port: 8000 + services: apprise-api: - image: 'linuxserver/apprise-api:latest' + image: linuxserver/apprise-api:latest environment: - SERVICE_FQDN_APPRISE_8000 - PUID=1000 From 7fc73ef547909b9db2e9fcdeec43ee33ddbdce06 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 20:42:07 +0100 Subject: [PATCH 30/48] fix cyberchef --- public/svgs/cyberchef.jpeg | Bin 0 -> 14831 bytes templates/compose/cyberchef-x86.yaml | 16 ---------------- templates/compose/cyberchef.yaml | 23 +++++++++++++++++++++++ 3 files changed, 23 insertions(+), 16 deletions(-) create mode 100644 public/svgs/cyberchef.jpeg delete mode 100644 templates/compose/cyberchef-x86.yaml create mode 100644 templates/compose/cyberchef.yaml diff --git a/public/svgs/cyberchef.jpeg b/public/svgs/cyberchef.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..0405ac395d543c57a57303ef2f7cb017478950d0 GIT binary patch literal 14831 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 literal 0 HcmV?d00001 diff --git a/templates/compose/cyberchef-x86.yaml b/templates/compose/cyberchef-x86.yaml deleted file mode 100644 index 47dcc2aea..000000000 --- a/templates/compose/cyberchef-x86.yaml +++ /dev/null @@ -1,16 +0,0 @@ -services: - cyberchef: - image: 'ghcr.io/gchq/cyberchef:latest' - environment: - - SERVICE_FQDN_CYBERCHEF_80 - volumes: - - 'cyberchef-data:/app/data' - healthcheck: - test: - - CMD - - curl - - '-f' - - 'http://127.0.0.1:80' - interval: 30s - timeout: 10s - retries: 3 diff --git a/templates/compose/cyberchef.yaml b/templates/compose/cyberchef.yaml new file mode 100644 index 000000000..cc7b2b85d --- /dev/null +++ b/templates/compose/cyberchef.yaml @@ -0,0 +1,23 @@ +# documentation: https://github.com/gchq/CyberChef +# slogan: The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis +# tags: encryption, encoding, compression, data analysis, tools, development +# logo: svgs/cyberchef.jpeg +# port: 80 + +services: + cyberchef: + image: ghcr.io/gchq/cyberchef:latest + platform: linux/amd64 + environment: + - SERVICE_FQDN_CYBERCHEF_80 + volumes: + - cyberchef-data:/app/data + healthcheck: + test: + - CMD + - curl + - '-f' + - 'http://127.0.0.1:80' + interval: 30s + timeout: 10s + retries: 3 From 0602399d7381dbe31bb421f3ef69078fbed093a5 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Fri, 8 Nov 2024 20:47:04 +0100 Subject: [PATCH 31/48] fix dashy --- public/svgs/dashy.png | Bin 0 -> 59523 bytes templates/compose/dashy.yaml | 10 ++++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 public/svgs/dashy.png diff --git a/public/svgs/dashy.png b/public/svgs/dashy.png new file mode 100644 index 0000000000000000000000000000000000000000..78fabd25723094046678bd3c1667d2c945dd2aec GIT binary patch literal 59523 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