diff --git a/public/svgs/trigger.avif b/public/svgs/trigger.avif deleted file mode 100644 index 66500da9f..000000000 Binary files a/public/svgs/trigger.avif and /dev/null differ diff --git a/templates/compose/trigger-with-external-database.yaml b/templates/compose/trigger-with-external-database.yaml deleted file mode 100644 index 706d07067..000000000 --- a/templates/compose/trigger-with-external-database.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# documentation: https://trigger.dev -# slogan: The open source Background Jobs framework for TypeScript -# category: automation -# tags: trigger.dev, background jobs, typescript, trigger, jobs, cron, scheduler -# logo: svgs/trigger.png -# port: 3000 - -services: - trigger: - image: ghcr.io/triggerdotdev/trigger.dev:main - environment: - - SERVICE_URL_TRIGGER_3000 - - LOGIN_ORIGIN=$SERVICE_URL_TRIGGER - - APP_ORIGIN=$SERVICE_URL_TRIGGER - - MAGIC_LINK_SECRET=$SERVICE_PASSWORD_32_MAGIC - - ENCRYPTION_KEY=$SERVICE_PASSWORD_32_ENCRYPTION - - SESSION_SECRET=$SERVICE_PASSWORD_32_SESSION - - DATABASE_URL=${DATABASE_URL:?} - - DIRECT_URL=${DATABASE_URL:?} - - RUNTIME_PLATFORM=docker-compose - - NODE_ENV=production - - AUTH_GITHUB_CLIENT_ID=${AUTH_GITHUB_CLIENT_ID} - - AUTH_GITHUB_CLIENT_SECRET=${AUTH_GITHUB_CLIENT_SECRET} - - RESEND_API_KEY=${RESEND_API_KEY} - - FROM_EMAIL=${FROM_EMAIL} - - REPLY_TO_EMAIL=${REPLY_TO_EMAIL} - - REDIS_HOST=${REDIS_HOST} - - REDIS_PORT=${REDIS_PORT} - - REDIS_USERNAME=${REDIS_USERNAME} - - REDIS_PASSWORD=${REDIS_PASSWORD} - - REDIS_TLS_DISABLED=${REDIS_TLS_DISABLED:-true} - - healthcheck: - test: "timeout 10s bash -c ':> /dev/tcp/127.0.0.1/3000' || exit 1" - interval: 10s - timeout: 5s - retries: 5 diff --git a/templates/compose/trigger.yaml b/templates/compose/trigger.yaml index be385ecc7..c46b88634 100644 --- a/templates/compose/trigger.yaml +++ b/templates/compose/trigger.yaml @@ -1,58 +1,82 @@ -# documentation: https://trigger.dev -# slogan: The open source Background Jobs framework for TypeScript +# documentation: https://trigger.dev/docs/self-hosting/overview +# slogan: The open source background jobs platform for developers # category: automation -# tags: trigger.dev, background jobs, typescript, trigger, jobs, cron, scheduler +# tags: background-jobs, typescript, javascript, scheduling, workflows, automation, tasks, queues # logo: svgs/trigger.png # port: 3000 -x-common-env: &common-env - REMIX_APP_PORT: 3000 - NODE_ENV: production - RUNTIME_PLATFORM: docker-compose - V3_ENABLED: true - INTERNAL_OTEL_TRACE_DISABLED: 1 - INTERNAL_OTEL_TRACE_LOGGING_ENABLED: 0 - POSTGRES_USER: $SERVICE_USER_POSTGRES - POSTGRES_PASSWORD: $SERVICE_PASSWORD_POSTGRES - POSTGRES_DB: ${POSTGRES_DB:-trigger} - MAGIC_LINK_SECRET: $SERVICE_PASSWORD_32_MAGIC - SESSION_SECRET: $SERVICE_PASSWORD_32_SESSION - ENCRYPTION_KEY: $SERVICE_PASSWORD_32_ENCRYPTION - PROVIDER_SECRET: $SERVICE_PASSWORD_64_PROVIDER - COORDINATOR_SECRET: $SERVICE_PASSWORD_64_COORDINATOR - 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 - COORDINATOR_HOST: 127.0.0.1 - COORDINATOR_PORT: 9020 - WHITELISTED_EMAILS: "" - ADMIN_EMAILS: "" - DEFAULT_ORG_EXECUTION_CONCURRENCY_LIMIT: 300 - DEFAULT_ENV_EXECUTION_CONCURRENCY_LIMIT: 100 - DEPLOY_REGISTRY_HOST: docker.io - DEPLOY_REGISTRY_NAMESPACE: trigger - REGISTRY_HOST: ${DEPLOY_REGISTRY_HOST} - REGISTRY_NAMESPACE: ${DEPLOY_REGISTRY_NAMESPACE} - AUTH_GITHUB_CLIENT_ID: ${AUTH_GITHUB_CLIENT_ID} - AUTH_GITHUB_CLIENT_SECRET: ${AUTH_GITHUB_CLIENT_SECRET} - RESEND_API_KEY: ${RESEND_API_KEY} - FROM_EMAIL: ${FROM_EMAIL} - REPLY_TO_EMAIL: ${REPLY_TO_EMAIL} - LOGIN_ORIGIN: $SERVICE_URL_TRIGGER_3000 - APP_ORIGIN: $SERVICE_URL_TRIGGER_3000 - DEV_OTEL_EXPORTER_OTLP_ENDPOINT: $SERVICE_URL_TRIGGER_3000/otel - OTEL_EXPORTER_OTLP_ENDPOINT: $SERVICE_URL_TRIGGER_3000/otel - ELECTRIC_ORIGIN: http://electric:3000 - services: trigger: - image: ghcr.io/triggerdotdev/trigger.dev:v3 + image: ghcr.io/triggerdotdev/trigger.dev:v4.3.0 + # Root user is required for bootstrap and shared volume permissions + # See: https://github.com/triggerdotdev/trigger.dev/blob/main/hosting/docker/webapp/docker-compose.yml + user: root + command: | + sh -c "chown -R node:node /home/node/shared && exec ./scripts/entrypoint.sh" environment: - SERVICE_URL_TRIGGER_3000: "" - <<: *common-env + - SERVICE_URL_TRIGGER_3000 + - APP_ORIGIN=${SERVICE_URL_TRIGGER_3000} + - LOGIN_ORIGIN=${SERVICE_URL_TRIGGER_3000} + - API_ORIGIN=${SERVICE_URL_TRIGGER_3000} + - SESSION_SECRET=${SERVICE_PASSWORD_64_SESSION} + - MAGIC_LINK_SECRET=${SERVICE_PASSWORD_64_MAGICLINK} + - ENCRYPTION_KEY=${SERVICE_PASSWORD_ENCRYPTIONKEY} + - MANAGED_WORKER_SECRET=${SERVICE_PASSWORD_64_WORKERSECRET} + - TRIGGER_WORKER_TOKEN=${TRIGGER_WORKER_TOKEN} + - NODE_ENV=production + - APP_LOG_LEVEL=info + - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgresql:5432/${POSTGRES_DB:-trigger-db}?schema=public&sslmode=disable + - DIRECT_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgresql:5432/${POSTGRES_DB:-trigger-db}?schema=public&sslmode=disable + - REDIS_HOST=redis + - REDIS_PORT=6379 + - REDIS_TLS_DISABLED=true + - ELECTRIC_ORIGIN=http://electric:3000 + - DEV_OTEL_EXPORTER_OTLP_ENDPOINT=${DEV_OTEL_EXPORTER_OTLP_ENDPOINT:-} + - DEPLOY_REGISTRY_HOST=${DEPLOY_REGISTRY_HOST:-ghcr.io} + - DEPLOY_REGISTRY_PROTOCOL=${DEPLOY_REGISTRY_PROTOCOL:-https} + - DEPLOY_REGISTRY_NAMESPACE=${DEPLOY_REGISTRY_NAMESPACE:-trigger} + - V4_DEPLOY_REGISTRY_NAMESPACE=${DEPLOY_REGISTRY_NAMESPACE:-trigger} + - OBJECT_STORE_BASE_URL=${OBJECT_STORE_BASE_URL} + - OBJECT_STORE_ACCESS_KEY_ID=${OBJECT_STORE_ACCESS_KEY_ID} + - OBJECT_STORE_SECRET_ACCESS_KEY=${OBJECT_STORE_SECRET_ACCESS_KEY} + - CLICKHOUSE_URL=http://${SERVICE_USER_CLICKHOUSE}:${SERVICE_PASSWORD_64_CLICKHOUSE}@clickhouse:8123?secure=false + - CLICKHOUSE_LOG_LEVEL=info + - RUN_REPLICATION_ENABLED=1 + - RUN_REPLICATION_CLICKHOUSE_URL=http://${SERVICE_USER_CLICKHOUSE}:${SERVICE_PASSWORD_64_CLICKHOUSE}@clickhouse:8123 + - RUN_REPLICATION_LOG_LEVEL=info + - TRIGGER_BOOTSTRAP_ENABLED=1 + - TRIGGER_BOOTSTRAP_WORKER_GROUP_NAME=bootstrap + - TRIGGER_BOOTSTRAP_WORKER_TOKEN_PATH=/home/node/shared/worker_token + - DEFAULT_ORG_EXECUTION_CONCURRENCY_LIMIT=${DEFAULT_ORG_EXECUTION_CONCURRENCY_LIMIT:-300} + - DEFAULT_ENV_EXECUTION_CONCURRENCY_LIMIT=${DEFAULT_ENV_EXECUTION_CONCURRENCY_LIMIT:-100} + - AUTH_GITHUB_CLIENT_ID=${AUTH_GITHUB_CLIENT_ID:-} + - AUTH_GITHUB_CLIENT_SECRET=${AUTH_GITHUB_CLIENT_SECRET:-} + - EMAIL_TRANSPORT=${EMAIL_TRANSPORT:-smtp} + - RESEND_API_KEY=${RESEND_API_KEY} + - SMTP_HOST=${SMTP_HOST} + - SMTP_PORT=${SMTP_PORT} + - SMTP_USER=${SMTP_USER} + - SMTP_PASSWORD=${SMTP_PASSWORD} + - SMTP_SECURE=${SMTP_SECURE} + - FROM_EMAIL=${FROM_EMAIL} + - REPLY_TO_EMAIL=${REPLY_TO_EMAIL} + - WHITELISTED_EMAILS=${WHITELISTED_EMAILS} + - ADMIN_EMAILS=${ADMIN_EMAILS} + - GRACEFUL_SHUTDOWN_TIMEOUT=1000 + - INTERNAL_OTEL_TRACE_LOGGING_ENABLED=${INTERNAL_OTEL_TRACE_LOGGING_ENABLED:-0} + - TRIGGER_TELEMETRY_DISABLED=${TRIGGER_TELEMETRY_DISABLED:-true} + volumes: + - shared-data:/home/node/shared + healthcheck: + test: + - CMD + - node + - "-e" + - "require('http').get('http://127.0.0.1:3000/healthcheck',(r)=>process.exit(r.statusCode===200?0:1)).on('error',()=>process.exit(1))" + interval: 10s + timeout: 5s + retries: 5 + start_period: 10s depends_on: postgresql: condition: service_healthy @@ -60,87 +84,130 @@ services: condition: service_healthy electric: condition: service_healthy + clickhouse: + condition: service_healthy + + supervisor: + image: ghcr.io/triggerdotdev/supervisor:v4.3.0 + user: root + command: | + sh -c "chown -R node:node /home/node/shared && exec /usr/bin/dumb-init -- pnpm run --filter supervisor start" + environment: + - TRIGGER_API_URL=http://trigger:3000 + - OTEL_EXPORTER_OTLP_ENDPOINT=http://trigger:3000/otel + - TRIGGER_WORKER_TOKEN=${TRIGGER_WORKER_TOKEN:-file:///home/node/shared/worker_token} + - MANAGED_WORKER_SECRET=${SERVICE_PASSWORD_64_WORKERSECRET} + - TRIGGER_WORKLOAD_API_DOMAIN=${TRIGGER_WORKLOAD_API_DOMAIN} + - TRIGGER_WORKLOAD_API_PORT_EXTERNAL=8020 + - DOCKER_HOST=tcp://docker-proxy:2375 + - DOCKER_RUNNER_NETWORKS=${DOCKER_RUNNER_NETWORKS} + - DOCKER_AUTOREMOVE_EXITED_CONTAINERS=${DOCKER_AUTOREMOVE_EXITED_CONTAINERS:-1} + - DOCKER_REGISTRY_URL=https://${DEPLOY_REGISTRY_HOST:-ghcr.io} + - DOCKER_REGISTRY_USERNAME=${DEPLOY_REGISTRY_USERNAME} + - DOCKER_REGISTRY_PASSWORD=${DEPLOY_REGISTRY_PASSWORD} + - ENFORCE_MACHINE_PRESETS=1 + - TRIGGER_DEQUEUE_INTERVAL_MS=1000 + - DEBUG=${SUPERVISOR_DEBUG:-0} + volumes: + - shared-data:/home/node/shared healthcheck: - test: "timeout 10s bash -c ':> /dev/tcp/127.0.0.1/3000' || exit 1" + test: + - CMD + - node + - "-e" + - "require('http').get('http://127.0.0.1:8020/health',(r)=>process.exit(r.statusCode===200?0:1)).on('error',()=>process.exit(1))" interval: 10s timeout: 5s retries: 5 - - electric: - image: electricsql/electric - environment: - <<: *common-env depends_on: - postgresql: + trigger: + condition: service_healthy + docker-proxy: condition: service_healthy - healthcheck: - test: - - CMD-SHELL - - pwd - redis: - image: "redis:7" + docker-proxy: + image: tecnativa/docker-socket-proxy:v0.4.2 + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro environment: - - ALLOW_EMPTY_PASSWORD=yes + - LOG_LEVEL=info + - POST=${POST:-1} + - CONTAINERS=${CONTAINERS:-1} + - IMAGES=${IMAGES:-1} + - INFO=${INFO:-1} + - NETWORKS=${NETWORKS:-1} + - AUTH=${AUTH:-1} + - DISTRIBUTION=${DISTRIBUTION:-1} healthcheck: test: - CMD-SHELL - - "redis-cli -h localhost -p 6379 ping" - interval: 5s + - nc -z 127.0.0.1 2375 || exit 1 + interval: 30s timeout: 5s - retries: 3 - volumes: - - redis-data:/data + retries: 5 + postgresql: image: postgres:16-alpine + command: + - "-c" + - wal_level=logical + environment: + - POSTGRES_USER=${SERVICE_USER_POSTGRES} + - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES} + - POSTGRES_DB=${POSTGRES_DB:-trigger-db} volumes: - postgresql-data:/var/lib/postgresql/data - environment: - <<: *common-env - command: - - -c - - wal_level=logical healthcheck: test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] interval: 5s timeout: 20s retries: 10 - docker-provider: - image: ghcr.io/triggerdotdev/provider/docker:v3 - platform: linux/amd64 + redis: + image: redis:7-alpine volumes: - - /var/run/docker.sock:/var/run/docker.sock - user: root - depends_on: - trigger: - condition: service_healthy + - redis-data:/data + healthcheck: + test: + - CMD + - redis-cli + - ping + interval: 10s + timeout: 5s + retries: 5 + + electric: + image: electricsql/electric:1.2.9 environment: - <<: *common-env - PLATFORM_HOST: trigger - PLATFORM_WS_PORT: 3000 - SECURE_CONNECTION: "false" - PLATFORM_SECRET: $SERVICE_PASSWORD_64_PROVIDER - HTTP_SERVER_PORT: 9020 - coordinator: - image: ghcr.io/triggerdotdev/coordinator:v3 - platform: linux/amd64 + - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgresql:5432/${POSTGRES_DB:-trigger-db}?sslmode=disable + - ELECTRIC_SECRET=${SERVICE_PASSWORD_64_ELECTRIC} + - ELECTRIC_USAGE_REPORTING=false + healthcheck: + test: + - CMD + - curl + - "-f" + - "http://localhost:3000/v1/health" + interval: 10s + timeout: 5s + retries: 5 + depends_on: + postgresql: + condition: service_healthy + + clickhouse: + image: clickhouse/clickhouse-server:25.8 + environment: + - CLICKHOUSE_USER=${SERVICE_USER_CLICKHOUSE} + - CLICKHOUSE_PASSWORD=${SERVICE_PASSWORD_64_CLICKHOUSE} + - CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 volumes: - - /var/run/docker.sock:/var/run/docker.sock - user: root - ports: - - '127.0.0.1:9020:9020' - depends_on: - trigger: - condition: service_healthy - environment: - <<: *common-env - PLATFORM_HOST: trigger - PLATFORM_WS_PORT: 3000 - SECURE_CONNECTION: "false" - PLATFORM_SECRET: $SERVICE_PASSWORD_64_COORDINATOR - HTTP_SERVER_PORT: 9020 + - clickhouse-data:/var/lib/clickhouse + - clickhouse-logs:/var/log/clickhouse-server healthcheck: test: - CMD-SHELL - - pwd + - wget --no-verbose --tries=1 --spider http://localhost:8123/ping || exit 1 + interval: 10s + timeout: 5s + retries: 5 diff --git a/templates/service-templates-latest.json b/templates/service-templates-latest.json index 4a2c59f09..d5ed6fd29 100644 --- a/templates/service-templates-latest.json +++ b/templates/service-templates-latest.json @@ -4402,36 +4402,19 @@ "minversion": "0.0.0", "port": "9091" }, - "trigger-with-external-database": { - "documentation": "https://trigger.dev?utm_source=coolify.io", - "slogan": "The open source Background Jobs framework for TypeScript", - "compose": "c2VydmljZXM6CiAgdHJpZ2dlcjoKICAgIGltYWdlOiAnZ2hjci5pby90cmlnZ2VyZG90ZGV2L3RyaWdnZXIuZGV2Om1haW4nCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAKICAgICAgLSBMT0dJTl9PUklHSU49JFNFUlZJQ0VfVVJMX1RSSUdHRVIKICAgICAgLSBBUFBfT1JJR0lOPSRTRVJWSUNFX1VSTF9UUklHR0VSCiAgICAgIC0gTUFHSUNfTElOS19TRUNSRVQ9JFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICAgICAgLSBFTkNSWVBUSU9OX0tFWT0kU0VSVklDRV9QQVNTV09SRF8zMl9FTkNSWVBUSU9OCiAgICAgIC0gU0VTU0lPTl9TRUNSRVQ9JFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogICAgICAtICdEQVRBQkFTRV9VUkw9JHtEQVRBQkFTRV9VUkw6P30nCiAgICAgIC0gJ0RJUkVDVF9VUkw9JHtEQVRBQkFTRV9VUkw6P30nCiAgICAgIC0gUlVOVElNRV9QTEFURk9STT1kb2NrZXItY29tcG9zZQogICAgICAtIE5PREVfRU5WPXByb2R1Y3Rpb24KICAgICAgLSAnQVVUSF9HSVRIVUJfQ0xJRU5UX0lEPSR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgLSAnQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVD0ke0FVVEhfR0lUSFVCX0NMSUVOVF9TRUNSRVR9JwogICAgICAtICdSRVNFTkRfQVBJX0tFWT0ke1JFU0VORF9BUElfS0VZfScKICAgICAgLSAnRlJPTV9FTUFJTD0ke0ZST01fRU1BSUx9JwogICAgICAtICdSRVBMWV9UT19FTUFJTD0ke1JFUExZX1RPX0VNQUlMfScKICAgICAgLSAnUkVESVNfSE9TVD0ke1JFRElTX0hPU1R9JwogICAgICAtICdSRURJU19QT1JUPSR7UkVESVNfUE9SVH0nCiAgICAgIC0gJ1JFRElTX1VTRVJOQU1FPSR7UkVESVNfVVNFUk5BTUV9JwogICAgICAtICdSRURJU19QQVNTV09SRD0ke1JFRElTX1BBU1NXT1JEfScKICAgICAgLSAnUkVESVNfVExTX0RJU0FCTEVEPSR7UkVESVNfVExTX0RJU0FCTEVEOi10cnVlfScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OiAidGltZW91dCAxMHMgYmFzaCAtYyAnOj4gL2Rldi90Y3AvMTI3LjAuMC4xLzMwMDAnIHx8IGV4aXQgMSIKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1Cg==", - "tags": [ - "trigger.dev", - "background jobs", - "typescript", - "trigger", - "jobs", - "cron", - "scheduler" - ], - "category": "automation", - "logo": "svgs/trigger.png", - "minversion": "0.0.0", - "port": "3000" - }, "trigger": { - "documentation": "https://trigger.dev?utm_source=coolify.io", - "slogan": "The open source Background Jobs framework for TypeScript", - "compose": "eC1jb21tb24tZW52OgogIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICBSVU5USU1FX1BMQVRGT1JNOiBkb2NrZXItY29tcG9zZQogIFYzX0VOQUJMRUQ6IHRydWUKICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgSU5URVJOQUxfT1RFTF9UUkFDRV9MT0dHSU5HX0VOQUJMRUQ6IDAKICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgUE9TVEdSRVNfREI6ICcke1BPU1RHUkVTX0RCOi10cmlnZ2VyfScKICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogIEVOQ1JZUFRJT05fS0VZOiAkU0VSVklDRV9QQVNTV09SRF8zMl9FTkNSWVBUSU9OCiAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICBEQVRBQkFTRV9IT1NUOiAncG9zdGdyZXNxbDo1NDMyJwogIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogIFJFRElTX0hPU1Q6IHJlZGlzCiAgUkVESVNfUE9SVDogNjM3OQogIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogIENPT1JESU5BVE9SX0hPU1Q6IDEyNy4wLjAuMQogIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgQURNSU5fRU1BSUxTOiAnJwogIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICBERVBMT1lfUkVHSVNUUllfSE9TVDogZG9ja2VyLmlvCiAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICBSRUdJU1RSWV9OQU1FU1BBQ0U6ICcke0RFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0V9JwogIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICBSRVNFTkRfQVBJX0tFWTogJyR7UkVTRU5EX0FQSV9LRVl9JwogIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgTE9HSU5fT1JJR0lOOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwCiAgQVBQX09SSUdJTjogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMAogIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAvb3RlbAogIE9URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMC9vdGVsCiAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCnNlcnZpY2VzOgogIHRyaWdnZXI6CiAgICBpbWFnZTogJ2doY3IuaW8vdHJpZ2dlcmRvdGRldi90cmlnZ2VyLmRldjp2MycKICAgIGVudmlyb25tZW50OgogICAgICBTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDA6ICcnCiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMAogICAgICBERVZfT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwL290ZWwKICAgICAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3Jlc3FsOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIHJlZGlzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIGVsZWN0cmljOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDogInRpbWVvdXQgMTBzIGJhc2ggLWMgJzo+IC9kZXYvdGNwLzEyNy4wLjAuMS8zMDAwJyB8fCBleGl0IDEiCiAgICAgIGludGVydmFsOiAxMHMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogNQogIGVsZWN0cmljOgogICAgaW1hZ2U6IGVsZWN0cmljc3FsL2VsZWN0cmljCiAgICBlbnZpcm9ubWVudDoKICAgICAgUkVNSVhfQVBQX1BPUlQ6IDMwMDAKICAgICAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICAgICAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICAgICAgVjNfRU5BQkxFRDogdHJ1ZQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgICAgIFBPU1RHUkVTX1VTRVI6ICRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgICAgIE1BR0lDX0xJTktfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF8zMl9NQUdJQwogICAgICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogICAgICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfRU5DUllQVElPTgogICAgICBQUk9WSURFUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICAgICAgREFUQUJBU0VfSE9TVDogJ3Bvc3RncmVzcWw6NTQzMicKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBSRURJU19IT1NUOiByZWRpcwogICAgICBSRURJU19QT1JUOiA2Mzc5CiAgICAgIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogICAgICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICAgICAgQ09PUkRJTkFUT1JfUE9SVDogOTAyMAogICAgICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgICAgIEFETUlOX0VNQUlMUzogJycKICAgICAgREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAzMDAKICAgICAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICAgICAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogICAgICBERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOiB0cmlnZ2VyCiAgICAgIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICAgICAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX0lEOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICAgICAgRlJPTV9FTUFJTDogJyR7RlJPTV9FTUFJTH0nCiAgICAgIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMAogICAgICBBUFBfT1JJR0lOOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAvb3RlbAogICAgICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAvb3RlbAogICAgICBFTEVDVFJJQ19PUklHSU46ICdodHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzcWw6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSBwd2QKICByZWRpczoKICAgIGltYWdlOiAncmVkaXM6NycKICAgIGVudmlyb25tZW50OgogICAgICAtIEFMTE9XX0VNUFRZX1BBU1NXT1JEPXllcwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdyZWRpcy1jbGkgLWggbG9jYWxob3N0IC1wIDYzNzkgcGluZycKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDMKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3JlZGlzLWRhdGE6L2RhdGEnCiAgcG9zdGdyZXNxbDoKICAgIGltYWdlOiAncG9zdGdyZXM6MTYtYWxwaW5lJwogICAgdm9sdW1lczoKICAgICAgLSAncG9zdGdyZXNxbC1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICBSRU1JWF9BUFBfUE9SVDogMzAwMAogICAgICBOT0RFX0VOVjogcHJvZHVjdGlvbgogICAgICBSVU5USU1FX1BMQVRGT1JNOiBkb2NrZXItY29tcG9zZQogICAgICBWM19FTkFCTEVEOiB0cnVlCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfRElTQUJMRUQ6IDEKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9MT0dHSU5HX0VOQUJMRUQ6IDAKICAgICAgUE9TVEdSRVNfVVNFUjogJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUwogICAgICBQT1NUR1JFU19QQVNTV09SRDogJFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfREI6ICcke1BPU1RHUkVTX0RCOi10cmlnZ2VyfScKICAgICAgTUFHSUNfTElOS19TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX01BR0lDCiAgICAgIFNFU1NJT05fU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF8zMl9TRVNTSU9OCiAgICAgIEVOQ1JZUFRJT05fS0VZOiAkU0VSVklDRV9QQVNTV09SRF8zMl9FTkNSWVBUSU9OCiAgICAgIFBST1ZJREVSX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfUFJPVklERVIKICAgICAgQ09PUkRJTkFUT1JfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9DT09SRElOQVRPUgogICAgICBEQVRBQkFTRV9IT1NUOiAncG9zdGdyZXNxbDo1NDMyJwogICAgICBEQVRBQkFTRV9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQj9zc2xtb2RlPWRpc2FibGUnCiAgICAgIERJUkVDVF9VUkw6ICdwb3N0Z3JlczovLyRTRVJWSUNFX1VTRVJfUE9TVEdSRVM6JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVNAcG9zdGdyZXNxbDo1NDMyLyRQT1NUR1JFU19EQj9zc2xtb2RlPWRpc2FibGUnCiAgICAgIFJFRElTX0hPU1Q6IHJlZGlzCiAgICAgIFJFRElTX1BPUlQ6IDYzNzkKICAgICAgUkVESVNfVExTX0RJU0FCTEVEOiB0cnVlCiAgICAgIENPT1JESU5BVE9SX0hPU1Q6IDEyNy4wLjAuMQogICAgICBDT09SRElOQVRPUl9QT1JUOiA5MDIwCiAgICAgIFdISVRFTElTVEVEX0VNQUlMUzogJycKICAgICAgQURNSU5fRU1BSUxTOiAnJwogICAgICBERUZBVUxUX09SR19FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ6IDMwMAogICAgICBERUZBVUxUX0VOVl9FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ6IDEwMAogICAgICBERVBMT1lfUkVHSVNUUllfSE9TVDogZG9ja2VyLmlvCiAgICAgIERFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0U6IHRyaWdnZXIKICAgICAgUkVHSVNUUllfSE9TVDogJyR7REVQTE9ZX1JFR0lTVFJZX0hPU1R9JwogICAgICBSRUdJU1RSWV9OQU1FU1BBQ0U6ICcke0RFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0V9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfSUQ6ICcke0FVVEhfR0lUSFVCX0NMSUVOVF9JRH0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9TRUNSRVQ6ICcke0FVVEhfR0lUSFVCX0NMSUVOVF9TRUNSRVR9JwogICAgICBSRVNFTkRfQVBJX0tFWTogJyR7UkVTRU5EX0FQSV9LRVl9JwogICAgICBGUk9NX0VNQUlMOiAnJHtGUk9NX0VNQUlMfScKICAgICAgUkVQTFlfVE9fRU1BSUw6ICcke1JFUExZX1RPX0VNQUlMfScKICAgICAgTE9HSU5fT1JJR0lOOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAKICAgICAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMC9vdGVsCiAgICAgIE9URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMC9vdGVsCiAgICAgIEVMRUNUUklDX09SSUdJTjogJ2h0dHA6Ly9lbGVjdHJpYzozMDAwJwogICAgY29tbWFuZDoKICAgICAgLSAnLWMnCiAgICAgIC0gd2FsX2xldmVsPWxvZ2ljYWwKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAKICBkb2NrZXItcHJvdmlkZXI6CiAgICBpbWFnZTogJ2doY3IuaW8vdHJpZ2dlcmRvdGRldi9wcm92aWRlci9kb2NrZXI6djMnCiAgICBwbGF0Zm9ybTogbGludXgvYW1kNjQKICAgIHZvbHVtZXM6CiAgICAgIC0gJy92YXIvcnVuL2RvY2tlci5zb2NrOi92YXIvcnVuL2RvY2tlci5zb2NrJwogICAgdXNlcjogcm9vdAogICAgZGVwZW5kc19vbjoKICAgICAgdHJpZ2dlcjoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW52aXJvbm1lbnQ6CiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMAogICAgICBERVZfT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwL290ZWwKICAgICAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICAgIFBMQVRGT1JNX0hPU1Q6IHRyaWdnZXIKICAgICAgUExBVEZPUk1fV1NfUE9SVDogMzAwMAogICAgICBTRUNVUkVfQ09OTkVDVElPTjogJ2ZhbHNlJwogICAgICBQTEFURk9STV9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIEhUVFBfU0VSVkVSX1BPUlQ6IDkwMjAKICBjb29yZGluYXRvcjoKICAgIGltYWdlOiAnZ2hjci5pby90cmlnZ2VyZG90ZGV2L2Nvb3JkaW5hdG9yOnYzJwogICAgcGxhdGZvcm06IGxpbnV4L2FtZDY0CiAgICB2b2x1bWVzOgogICAgICAtICcvdmFyL3J1bi9kb2NrZXIuc29jazovdmFyL3J1bi9kb2NrZXIuc29jaycKICAgIHVzZXI6IHJvb3QKICAgIHBvcnRzOgogICAgICAtICcxMjcuMC4wLjE6OTAyMDo5MDIwJwogICAgZGVwZW5kc19vbjoKICAgICAgdHJpZ2dlcjoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW52aXJvbm1lbnQ6CiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX1VSTF9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMAogICAgICBERVZfT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAkU0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwL290ZWwKICAgICAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICAgIFBMQVRGT1JNX0hPU1Q6IHRyaWdnZXIKICAgICAgUExBVEZPUk1fV1NfUE9SVDogMzAwMAogICAgICBTRUNVUkVfQ09OTkVDVElPTjogJ2ZhbHNlJwogICAgICBQTEFURk9STV9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIEhUVFBfU0VSVkVSX1BPUlQ6IDkwMjAKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSBwd2QK", + "documentation": "https://trigger.dev/docs/self-hosting/overview?utm_source=coolify.io", + "slogan": "The open source background jobs platform for developers", + "compose": "c2VydmljZXM6CiAgdHJpZ2dlcjoKICAgIGltYWdlOiAnZ2hjci5pby90cmlnZ2VyZG90ZGV2L3RyaWdnZXIuZGV2OnY0LjMuMCcKICAgIHVzZXI6IHJvb3QKICAgIGNvbW1hbmQ6ICJzaCAtYyBcImNob3duIC1SIG5vZGU6bm9kZSAvaG9tZS9ub2RlL3NoYXJlZCAmJiBleGVjIC4vc2NyaXB0cy9lbnRyeXBvaW50LnNoXCJcbiIKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMAogICAgICAtICdBUFBfT1JJR0lOPSR7U0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwfScKICAgICAgLSAnTE9HSU5fT1JJR0lOPSR7U0VSVklDRV9VUkxfVFJJR0dFUl8zMDAwfScKICAgICAgLSAnQVBJX09SSUdJTj0ke1NFUlZJQ0VfVVJMX1RSSUdHRVJfMzAwMH0nCiAgICAgIC0gJ1NFU1NJT05fU0VDUkVUPSR7U0VSVklDRV9QQVNTV09SRF82NF9TRVNTSU9OfScKICAgICAgLSAnTUFHSUNfTElOS19TRUNSRVQ9JHtTRVJWSUNFX1BBU1NXT1JEXzY0X01BR0lDTElOS30nCiAgICAgIC0gJ0VOQ1JZUFRJT05fS0VZPSR7U0VSVklDRV9QQVNTV09SRF9FTkNSWVBUSU9OS0VZfScKICAgICAgLSAnTUFOQUdFRF9XT1JLRVJfU0VDUkVUPSR7U0VSVklDRV9QQVNTV09SRF82NF9XT1JLRVJTRUNSRVR9JwogICAgICAtICdUUklHR0VSX1dPUktFUl9UT0tFTj0ke1RSSUdHRVJfV09SS0VSX1RPS0VOfScKICAgICAgLSBOT0RFX0VOVj1wcm9kdWN0aW9uCiAgICAgIC0gQVBQX0xPR19MRVZFTD1pbmZvCiAgICAgIC0gJ0RBVEFCQVNFX1VSTD1wb3N0Z3Jlc3FsOi8vJHtTRVJWSUNFX1VTRVJfUE9TVEdSRVN9OiR7U0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU31AcG9zdGdyZXNxbDo1NDMyLyR7UE9TVEdSRVNfREI6LXRyaWdnZXItZGJ9P3NjaGVtYT1wdWJsaWMmc3NsbW9kZT1kaXNhYmxlJwogICAgICAtICdESVJFQ1RfVVJMPXBvc3RncmVzcWw6Ly8ke1NFUlZJQ0VfVVNFUl9QT1NUR1JFU306JHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTfUBwb3N0Z3Jlc3FsOjU0MzIvJHtQT1NUR1JFU19EQjotdHJpZ2dlci1kYn0/c2NoZW1hPXB1YmxpYyZzc2xtb2RlPWRpc2FibGUnCiAgICAgIC0gUkVESVNfSE9TVD1yZWRpcwogICAgICAtIFJFRElTX1BPUlQ9NjM3OQogICAgICAtIFJFRElTX1RMU19ESVNBQkxFRD10cnVlCiAgICAgIC0gJ0VMRUNUUklDX09SSUdJTj1odHRwOi8vZWxlY3RyaWM6MzAwMCcKICAgICAgLSAnREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVD0ke0RFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6LX0nCiAgICAgIC0gJ0RFUExPWV9SRUdJU1RSWV9IT1NUPSR7REVQTE9ZX1JFR0lTVFJZX0hPU1Q6LWdoY3IuaW99JwogICAgICAtICdERVBMT1lfUkVHSVNUUllfUFJPVE9DT0w9JHtERVBMT1lfUkVHSVNUUllfUFJPVE9DT0w6LWh0dHBzfScKICAgICAgLSAnREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRT0ke0RFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0U6LXRyaWdnZXJ9JwogICAgICAtICdWNF9ERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFPSR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTotdHJpZ2dlcn0nCiAgICAgIC0gJ09CSkVDVF9TVE9SRV9CQVNFX1VSTD0ke09CSkVDVF9TVE9SRV9CQVNFX1VSTH0nCiAgICAgIC0gJ09CSkVDVF9TVE9SRV9BQ0NFU1NfS0VZX0lEPSR7T0JKRUNUX1NUT1JFX0FDQ0VTU19LRVlfSUR9JwogICAgICAtICdPQkpFQ1RfU1RPUkVfU0VDUkVUX0FDQ0VTU19LRVk9JHtPQkpFQ1RfU1RPUkVfU0VDUkVUX0FDQ0VTU19LRVl9JwogICAgICAtICdDTElDS0hPVVNFX1VSTD1odHRwOi8vJHtTRVJWSUNFX1VTRVJfQ0xJQ0tIT1VTRX06JHtTRVJWSUNFX1BBU1NXT1JEXzY0X0NMSUNLSE9VU0V9QGNsaWNraG91c2U6ODEyMz9zZWN1cmU9ZmFsc2UnCiAgICAgIC0gQ0xJQ0tIT1VTRV9MT0dfTEVWRUw9aW5mbwogICAgICAtIFJVTl9SRVBMSUNBVElPTl9FTkFCTEVEPTEKICAgICAgLSAnUlVOX1JFUExJQ0FUSU9OX0NMSUNLSE9VU0VfVVJMPWh0dHA6Ly8ke1NFUlZJQ0VfVVNFUl9DTElDS0hPVVNFfToke1NFUlZJQ0VfUEFTU1dPUkRfNjRfQ0xJQ0tIT1VTRX1AY2xpY2tob3VzZTo4MTIzJwogICAgICAtIFJVTl9SRVBMSUNBVElPTl9MT0dfTEVWRUw9aW5mbwogICAgICAtIFRSSUdHRVJfQk9PVFNUUkFQX0VOQUJMRUQ9MQogICAgICAtIFRSSUdHRVJfQk9PVFNUUkFQX1dPUktFUl9HUk9VUF9OQU1FPWJvb3RzdHJhcAogICAgICAtIFRSSUdHRVJfQk9PVFNUUkFQX1dPUktFUl9UT0tFTl9QQVRIPS9ob21lL25vZGUvc2hhcmVkL3dvcmtlcl90b2tlbgogICAgICAtICdERUZBVUxUX09SR19FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ9JHtERUZBVUxUX09SR19FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ6LTMwMH0nCiAgICAgIC0gJ0RFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVD0ke0RFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDotMTAwfScKICAgICAgLSAnQVVUSF9HSVRIVUJfQ0xJRU5UX0lEPSR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEOi19JwogICAgICAtICdBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUPSR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDotfScKICAgICAgLSAnRU1BSUxfVFJBTlNQT1JUPSR7RU1BSUxfVFJBTlNQT1JUOi1zbXRwfScKICAgICAgLSAnUkVTRU5EX0FQSV9LRVk9JHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIC0gJ1NNVFBfSE9TVD0ke1NNVFBfSE9TVH0nCiAgICAgIC0gJ1NNVFBfUE9SVD0ke1NNVFBfUE9SVH0nCiAgICAgIC0gJ1NNVFBfVVNFUj0ke1NNVFBfVVNFUn0nCiAgICAgIC0gJ1NNVFBfUEFTU1dPUkQ9JHtTTVRQX1BBU1NXT1JEfScKICAgICAgLSAnU01UUF9TRUNVUkU9JHtTTVRQX1NFQ1VSRX0nCiAgICAgIC0gJ0ZST01fRU1BSUw9JHtGUk9NX0VNQUlMfScKICAgICAgLSAnUkVQTFlfVE9fRU1BSUw9JHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIC0gJ1dISVRFTElTVEVEX0VNQUlMUz0ke1dISVRFTElTVEVEX0VNQUlMU30nCiAgICAgIC0gJ0FETUlOX0VNQUlMUz0ke0FETUlOX0VNQUlMU30nCiAgICAgIC0gR1JBQ0VGVUxfU0hVVERPV05fVElNRU9VVD0xMDAwCiAgICAgIC0gJ0lOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEPSR7SU5URVJOQUxfT1RFTF9UUkFDRV9MT0dHSU5HX0VOQUJMRUQ6LTB9JwogICAgICAtICdUUklHR0VSX1RFTEVNRVRSWV9ESVNBQkxFRD0ke1RSSUdHRVJfVEVMRU1FVFJZX0RJU0FCTEVEOi10cnVlfScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3NoYXJlZC1kYXRhOi9ob21lL25vZGUvc2hhcmVkJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIG5vZGUKICAgICAgICAtICctZScKICAgICAgICAtICJyZXF1aXJlKCdodHRwJykuZ2V0KCdodHRwOi8vMTI3LjAuMC4xOjMwMDAvaGVhbHRoY2hlY2snLChyKT0+cHJvY2Vzcy5leGl0KHIuc3RhdHVzQ29kZT09PTIwMD8wOjEpKS5vbignZXJyb3InLCgpPT5wcm9jZXNzLmV4aXQoMSkpIgogICAgICBpbnRlcnZhbDogMTBzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDUKICAgICAgc3RhcnRfcGVyaW9kOiAxMHMKICAgIGRlcGVuZHNfb246CiAgICAgIHBvc3RncmVzcWw6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgcmVkaXM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgZWxlY3RyaWM6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICAgICAgY2xpY2tob3VzZToKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogIHN1cGVydmlzb3I6CiAgICBpbWFnZTogJ2doY3IuaW8vdHJpZ2dlcmRvdGRldi9zdXBlcnZpc29yOnY0LjMuMCcKICAgIHVzZXI6IHJvb3QKICAgIGNvbW1hbmQ6ICJzaCAtYyBcImNob3duIC1SIG5vZGU6bm9kZSAvaG9tZS9ub2RlL3NoYXJlZCAmJiBleGVjIC91c3IvYmluL2R1bWItaW5pdCAtLSBwbnBtIHJ1biAtLWZpbHRlciBzdXBlcnZpc29yIHN0YXJ0XCJcbiIKICAgIGVudmlyb25tZW50OgogICAgICAtICdUUklHR0VSX0FQSV9VUkw9aHR0cDovL3RyaWdnZXI6MzAwMCcKICAgICAgLSAnT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UPWh0dHA6Ly90cmlnZ2VyOjMwMDAvb3RlbCcKICAgICAgLSAnVFJJR0dFUl9XT1JLRVJfVE9LRU49JHtUUklHR0VSX1dPUktFUl9UT0tFTjotZmlsZTovLy9ob21lL25vZGUvc2hhcmVkL3dvcmtlcl90b2tlbn0nCiAgICAgIC0gJ01BTkFHRURfV09SS0VSX1NFQ1JFVD0ke1NFUlZJQ0VfUEFTU1dPUkRfNjRfV09SS0VSU0VDUkVUfScKICAgICAgLSAnVFJJR0dFUl9XT1JLTE9BRF9BUElfRE9NQUlOPSR7VFJJR0dFUl9XT1JLTE9BRF9BUElfRE9NQUlOfScKICAgICAgLSBUUklHR0VSX1dPUktMT0FEX0FQSV9QT1JUX0VYVEVSTkFMPTgwMjAKICAgICAgLSAnRE9DS0VSX0hPU1Q9dGNwOi8vZG9ja2VyLXByb3h5OjIzNzUnCiAgICAgIC0gJ0RPQ0tFUl9SVU5ORVJfTkVUV09SS1M9JHtET0NLRVJfUlVOTkVSX05FVFdPUktTfScKICAgICAgLSAnRE9DS0VSX0FVVE9SRU1PVkVfRVhJVEVEX0NPTlRBSU5FUlM9JHtET0NLRVJfQVVUT1JFTU9WRV9FWElURURfQ09OVEFJTkVSUzotMX0nCiAgICAgIC0gJ0RPQ0tFUl9SRUdJU1RSWV9VUkw9aHR0cHM6Ly8ke0RFUExPWV9SRUdJU1RSWV9IT1NUOi1naGNyLmlvfScKICAgICAgLSAnRE9DS0VSX1JFR0lTVFJZX1VTRVJOQU1FPSR7REVQTE9ZX1JFR0lTVFJZX1VTRVJOQU1FfScKICAgICAgLSAnRE9DS0VSX1JFR0lTVFJZX1BBU1NXT1JEPSR7REVQTE9ZX1JFR0lTVFJZX1BBU1NXT1JEfScKICAgICAgLSBFTkZPUkNFX01BQ0hJTkVfUFJFU0VUUz0xCiAgICAgIC0gVFJJR0dFUl9ERVFVRVVFX0lOVEVSVkFMX01TPTEwMDAKICAgICAgLSAnREVCVUc9JHtTVVBFUlZJU09SX0RFQlVHOi0wfScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3NoYXJlZC1kYXRhOi9ob21lL25vZGUvc2hhcmVkJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIG5vZGUKICAgICAgICAtICctZScKICAgICAgICAtICJyZXF1aXJlKCdodHRwJykuZ2V0KCdodHRwOi8vMTI3LjAuMC4xOjgwMjAvaGVhbHRoJywocik9PnByb2Nlc3MuZXhpdChyLnN0YXR1c0NvZGU9PT0yMDA/MDoxKSkub24oJ2Vycm9yJywoKT0+cHJvY2Vzcy5leGl0KDEpKSIKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1CiAgICBkZXBlbmRzX29uOgogICAgICB0cmlnZ2VyOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIGRvY2tlci1wcm94eToKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogIGRvY2tlci1wcm94eToKICAgIGltYWdlOiAndGVjbmF0aXZhL2RvY2tlci1zb2NrZXQtcHJveHk6djAuNC4yJwogICAgdm9sdW1lczoKICAgICAgLSAnL3Zhci9ydW4vZG9ja2VyLnNvY2s6L3Zhci9ydW4vZG9ja2VyLnNvY2s6cm8nCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBMT0dfTEVWRUw9aW5mbwogICAgICAtICdQT1NUPSR7UE9TVDotMX0nCiAgICAgIC0gJ0NPTlRBSU5FUlM9JHtDT05UQUlORVJTOi0xfScKICAgICAgLSAnSU1BR0VTPSR7SU1BR0VTOi0xfScKICAgICAgLSAnSU5GTz0ke0lORk86LTF9JwogICAgICAtICdORVRXT1JLUz0ke05FVFdPUktTOi0xfScKICAgICAgLSAnQVVUSD0ke0FVVEg6LTF9JwogICAgICAtICdESVNUUklCVVRJT049JHtESVNUUklCVVRJT046LTF9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICduYyAteiAxMjcuMC4wLjEgMjM3NSB8fCBleGl0IDEnCiAgICAgIGludGVydmFsOiAzMHMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogNQogIHBvc3RncmVzcWw6CiAgICBpbWFnZTogJ3Bvc3RncmVzOjE2LWFscGluZScKICAgIGNvbW1hbmQ6CiAgICAgIC0gJy1jJwogICAgICAtIHdhbF9sZXZlbD1sb2dpY2FsCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnUE9TVEdSRVNfVVNFUj0ke1NFUlZJQ0VfVVNFUl9QT1NUR1JFU30nCiAgICAgIC0gJ1BPU1RHUkVTX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU30nCiAgICAgIC0gJ1BPU1RHUkVTX0RCPSR7UE9TVEdSRVNfREI6LXRyaWdnZXItZGJ9JwogICAgdm9sdW1lczoKICAgICAgLSAncG9zdGdyZXNxbC1kYXRhOi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAKICByZWRpczoKICAgIGltYWdlOiAncmVkaXM6Ny1hbHBpbmUnCiAgICB2b2x1bWVzOgogICAgICAtICdyZWRpcy1kYXRhOi9kYXRhJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIHJlZGlzLWNsaQogICAgICAgIC0gcGluZwogICAgICBpbnRlcnZhbDogMTBzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDUKICBlbGVjdHJpYzoKICAgIGltYWdlOiAnZWxlY3RyaWNzcWwvZWxlY3RyaWM6MS4yLjknCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnREFUQUJBU0VfVVJMPXBvc3RncmVzcWw6Ly8ke1NFUlZJQ0VfVVNFUl9QT1NUR1JFU306JHtTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTfUBwb3N0Z3Jlc3FsOjU0MzIvJHtQT1NUR1JFU19EQjotdHJpZ2dlci1kYn0/c3NsbW9kZT1kaXNhYmxlJwogICAgICAtICdFTEVDVFJJQ19TRUNSRVQ9JHtTRVJWSUNFX1BBU1NXT1JEXzY0X0VMRUNUUklDfScKICAgICAgLSBFTEVDVFJJQ19VU0FHRV9SRVBPUlRJTkc9ZmFsc2UKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBjdXJsCiAgICAgICAgLSAnLWYnCiAgICAgICAgLSAnaHR0cDovL2xvY2FsaG9zdDozMDAwL3YxL2hlYWx0aCcKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1CiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3Jlc3FsOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgY2xpY2tob3VzZToKICAgIGltYWdlOiAnY2xpY2tob3VzZS9jbGlja2hvdXNlLXNlcnZlcjoyNS44JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ0NMSUNLSE9VU0VfVVNFUj0ke1NFUlZJQ0VfVVNFUl9DTElDS0hPVVNFfScKICAgICAgLSAnQ0xJQ0tIT1VTRV9QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfNjRfQ0xJQ0tIT1VTRX0nCiAgICAgIC0gQ0xJQ0tIT1VTRV9ERUZBVUxUX0FDQ0VTU19NQU5BR0VNRU5UPTEKICAgIHZvbHVtZXM6CiAgICAgIC0gJ2NsaWNraG91c2UtZGF0YTovdmFyL2xpYi9jbGlja2hvdXNlJwogICAgICAtICdjbGlja2hvdXNlLWxvZ3M6L3Zhci9sb2cvY2xpY2tob3VzZS1zZXJ2ZXInCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3dnZXQgLS1uby12ZXJib3NlIC0tdHJpZXM9MSAtLXNwaWRlciBodHRwOi8vbG9jYWxob3N0OjgxMjMvcGluZyB8fCBleGl0IDEnCiAgICAgIGludGVydmFsOiAxMHMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogNQo=", "tags": [ - "trigger.dev", - "background jobs", + "background-jobs", "typescript", - "trigger", - "jobs", - "cron", - "scheduler" + "javascript", + "scheduling", + "workflows", + "automation", + "tasks", + "queues" ], "category": "automation", "logo": "svgs/trigger.png", diff --git a/templates/service-templates.json b/templates/service-templates.json index 78337fe89..ce43c5d45 100644 --- a/templates/service-templates.json +++ b/templates/service-templates.json @@ -4402,36 +4402,19 @@ "minversion": "0.0.0", "port": "9091" }, - "trigger-with-external-database": { - "documentation": "https://trigger.dev?utm_source=coolify.io", - "slogan": "The open source Background Jobs framework for TypeScript", - "compose": "c2VydmljZXM6CiAgdHJpZ2dlcjoKICAgIGltYWdlOiAnZ2hjci5pby90cmlnZ2VyZG90ZGV2L3RyaWdnZXIuZGV2Om1haW4nCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIC0gTE9HSU5fT1JJR0lOPSRTRVJWSUNFX0ZRRE5fVFJJR0dFUgogICAgICAtIEFQUF9PUklHSU49JFNFUlZJQ0VfRlFETl9UUklHR0VSCiAgICAgIC0gTUFHSUNfTElOS19TRUNSRVQ9JFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICAgICAgLSBFTkNSWVBUSU9OX0tFWT0kU0VSVklDRV9QQVNTV09SRF8zMl9FTkNSWVBUSU9OCiAgICAgIC0gU0VTU0lPTl9TRUNSRVQ9JFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogICAgICAtICdEQVRBQkFTRV9VUkw9JHtEQVRBQkFTRV9VUkw6P30nCiAgICAgIC0gJ0RJUkVDVF9VUkw9JHtEQVRBQkFTRV9VUkw6P30nCiAgICAgIC0gUlVOVElNRV9QTEFURk9STT1kb2NrZXItY29tcG9zZQogICAgICAtIE5PREVfRU5WPXByb2R1Y3Rpb24KICAgICAgLSAnQVVUSF9HSVRIVUJfQ0xJRU5UX0lEPSR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgLSAnQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVD0ke0FVVEhfR0lUSFVCX0NMSUVOVF9TRUNSRVR9JwogICAgICAtICdSRVNFTkRfQVBJX0tFWT0ke1JFU0VORF9BUElfS0VZfScKICAgICAgLSAnRlJPTV9FTUFJTD0ke0ZST01fRU1BSUx9JwogICAgICAtICdSRVBMWV9UT19FTUFJTD0ke1JFUExZX1RPX0VNQUlMfScKICAgICAgLSAnUkVESVNfSE9TVD0ke1JFRElTX0hPU1R9JwogICAgICAtICdSRURJU19QT1JUPSR7UkVESVNfUE9SVH0nCiAgICAgIC0gJ1JFRElTX1VTRVJOQU1FPSR7UkVESVNfVVNFUk5BTUV9JwogICAgICAtICdSRURJU19QQVNTV09SRD0ke1JFRElTX1BBU1NXT1JEfScKICAgICAgLSAnUkVESVNfVExTX0RJU0FCTEVEPSR7UkVESVNfVExTX0RJU0FCTEVEOi10cnVlfScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OiAidGltZW91dCAxMHMgYmFzaCAtYyAnOj4gL2Rldi90Y3AvMTI3LjAuMC4xLzMwMDAnIHx8IGV4aXQgMSIKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1Cg==", - "tags": [ - "trigger.dev", - "background jobs", - "typescript", - "trigger", - "jobs", - "cron", - "scheduler" - ], - "category": "automation", - "logo": "svgs/trigger.png", - "minversion": "0.0.0", - "port": "3000" - }, "trigger": { - "documentation": "https://trigger.dev?utm_source=coolify.io", - "slogan": "The open source Background Jobs framework for TypeScript", - "compose": "eC1jb21tb24tZW52OgogIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICBSVU5USU1FX1BMQVRGT1JNOiBkb2NrZXItY29tcG9zZQogIFYzX0VOQUJMRUQ6IHRydWUKICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgSU5URVJOQUxfT1RFTF9UUkFDRV9MT0dHSU5HX0VOQUJMRUQ6IDAKICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgUE9TVEdSRVNfREI6ICcke1BPU1RHUkVTX0RCOi10cmlnZ2VyfScKICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogIEVOQ1JZUFRJT05fS0VZOiAkU0VSVklDRV9QQVNTV09SRF8zMl9FTkNSWVBUSU9OCiAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICBEQVRBQkFTRV9IT1NUOiAncG9zdGdyZXNxbDo1NDMyJwogIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogIFJFRElTX0hPU1Q6IHJlZGlzCiAgUkVESVNfUE9SVDogNjM3OQogIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogIENPT1JESU5BVE9SX0hPU1Q6IDEyNy4wLjAuMQogIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgQURNSU5fRU1BSUxTOiAnJwogIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICBERVBMT1lfUkVHSVNUUllfSE9TVDogZG9ja2VyLmlvCiAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICBSRUdJU1RSWV9OQU1FU1BBQ0U6ICcke0RFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0V9JwogIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICBSRVNFTkRfQVBJX0tFWTogJyR7UkVTRU5EX0FQSV9LRVl9JwogIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgTE9HSU5fT1JJR0lOOiAkU0VSVklDRV9GUUROX1RSSUdHRVJfMzAwMAogIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogIE9URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogIEVMRUNUUklDX09SSUdJTjogJ2h0dHA6Ly9lbGVjdHJpYzozMDAwJwpzZXJ2aWNlczoKICB0cmlnZ2VyOgogICAgaW1hZ2U6ICdnaGNyLmlvL3RyaWdnZXJkb3RkZXYvdHJpZ2dlci5kZXY6djMnCiAgICBlbnZpcm9ubWVudDoKICAgICAgU0VSVklDRV9GUUROX1RSSUdHRVJfMzAwMDogJycKICAgICAgUkVNSVhfQVBQX1BPUlQ6IDMwMDAKICAgICAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICAgICAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICAgICAgVjNfRU5BQkxFRDogdHJ1ZQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgICAgIFBPU1RHUkVTX1VTRVI6ICRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgICAgIE1BR0lDX0xJTktfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF8zMl9NQUdJQwogICAgICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogICAgICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfRU5DUllQVElPTgogICAgICBQUk9WSURFUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICAgICAgREFUQUJBU0VfSE9TVDogJ3Bvc3RncmVzcWw6NTQzMicKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBSRURJU19IT1NUOiByZWRpcwogICAgICBSRURJU19QT1JUOiA2Mzc5CiAgICAgIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogICAgICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICAgICAgQ09PUkRJTkFUT1JfUE9SVDogOTAyMAogICAgICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgICAgIEFETUlOX0VNQUlMUzogJycKICAgICAgREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAzMDAKICAgICAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICAgICAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogICAgICBERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOiB0cmlnZ2VyCiAgICAgIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICAgICAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX0lEOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICAgICAgRlJPTV9FTUFJTDogJyR7RlJPTV9FTUFJTH0nCiAgICAgIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogICAgICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3Jlc3FsOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIHJlZGlzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIGVsZWN0cmljOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDogInRpbWVvdXQgMTBzIGJhc2ggLWMgJzo+IC9kZXYvdGNwLzEyNy4wLjAuMS8zMDAwJyB8fCBleGl0IDEiCiAgICAgIGludGVydmFsOiAxMHMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogNQogIGVsZWN0cmljOgogICAgaW1hZ2U6IGVsZWN0cmljc3FsL2VsZWN0cmljCiAgICBlbnZpcm9ubWVudDoKICAgICAgUkVNSVhfQVBQX1BPUlQ6IDMwMDAKICAgICAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICAgICAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICAgICAgVjNfRU5BQkxFRDogdHJ1ZQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgICAgIFBPU1RHUkVTX1VTRVI6ICRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgICAgIE1BR0lDX0xJTktfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF8zMl9NQUdJQwogICAgICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogICAgICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfRU5DUllQVElPTgogICAgICBQUk9WSURFUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICAgICAgREFUQUJBU0VfSE9TVDogJ3Bvc3RncmVzcWw6NTQzMicKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBSRURJU19IT1NUOiByZWRpcwogICAgICBSRURJU19QT1JUOiA2Mzc5CiAgICAgIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogICAgICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICAgICAgQ09PUkRJTkFUT1JfUE9SVDogOTAyMAogICAgICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgICAgIEFETUlOX0VNQUlMUzogJycKICAgICAgREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAzMDAKICAgICAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICAgICAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogICAgICBERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOiB0cmlnZ2VyCiAgICAgIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICAgICAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX0lEOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICAgICAgRlJPTV9FTUFJTDogJyR7RlJPTV9FTUFJTH0nCiAgICAgIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogICAgICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3Jlc3FsOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gcHdkCiAgcmVkaXM6CiAgICBpbWFnZTogJ3JlZGlzOjcnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBBTExPV19FTVBUWV9QQVNTV09SRD15ZXMKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncmVkaXMtY2xpIC1oIGxvY2FsaG9zdCAtcCA2Mzc5IHBpbmcnCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiAzCiAgICB2b2x1bWVzOgogICAgICAtICdyZWRpcy1kYXRhOi9kYXRhJwogIHBvc3RncmVzcWw6CiAgICBpbWFnZTogJ3Bvc3RncmVzOjE2LWFscGluZScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3Bvc3RncmVzcWwtZGF0YTovdmFyL2xpYi9wb3N0Z3Jlc3FsL2RhdGEnCiAgICBlbnZpcm9ubWVudDoKICAgICAgUkVNSVhfQVBQX1BPUlQ6IDMwMDAKICAgICAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICAgICAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICAgICAgVjNfRU5BQkxFRDogdHJ1ZQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgICAgIFBPU1RHUkVTX1VTRVI6ICRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgICAgIE1BR0lDX0xJTktfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF8zMl9NQUdJQwogICAgICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogICAgICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfRU5DUllQVElPTgogICAgICBQUk9WSURFUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICAgICAgREFUQUJBU0VfSE9TVDogJ3Bvc3RncmVzcWw6NTQzMicKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBSRURJU19IT1NUOiByZWRpcwogICAgICBSRURJU19QT1JUOiA2Mzc5CiAgICAgIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogICAgICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICAgICAgQ09PUkRJTkFUT1JfUE9SVDogOTAyMAogICAgICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgICAgIEFETUlOX0VNQUlMUzogJycKICAgICAgREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAzMDAKICAgICAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICAgICAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogICAgICBERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOiB0cmlnZ2VyCiAgICAgIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICAgICAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX0lEOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICAgICAgRlJPTV9FTUFJTDogJyR7RlJPTV9FTUFJTH0nCiAgICAgIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogICAgICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICBjb21tYW5kOgogICAgICAtICctYycKICAgICAgLSB3YWxfbGV2ZWw9bG9naWNhbAogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAogIGRvY2tlci1wcm92aWRlcjoKICAgIGltYWdlOiAnZ2hjci5pby90cmlnZ2VyZG90ZGV2L3Byb3ZpZGVyL2RvY2tlcjp2MycKICAgIHBsYXRmb3JtOiBsaW51eC9hbWQ2NAogICAgdm9sdW1lczoKICAgICAgLSAnL3Zhci9ydW4vZG9ja2VyLnNvY2s6L3Zhci9ydW4vZG9ja2VyLnNvY2snCiAgICB1c2VyOiByb290CiAgICBkZXBlbmRzX29uOgogICAgICB0cmlnZ2VyOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICBlbnZpcm9ubWVudDoKICAgICAgUkVNSVhfQVBQX1BPUlQ6IDMwMDAKICAgICAgTk9ERV9FTlY6IHByb2R1Y3Rpb24KICAgICAgUlVOVElNRV9QTEFURk9STTogZG9ja2VyLWNvbXBvc2UKICAgICAgVjNfRU5BQkxFRDogdHJ1ZQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0RJU0FCTEVEOiAxCiAgICAgIElOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOiAwCiAgICAgIFBPU1RHUkVTX1VTRVI6ICRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgUE9TVEdSRVNfUEFTU1dPUkQ6ICRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX0RCOiAnJHtQT1NUR1JFU19EQjotdHJpZ2dlcn0nCiAgICAgIE1BR0lDX0xJTktfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF8zMl9NQUdJQwogICAgICBTRVNTSU9OX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfU0VTU0lPTgogICAgICBFTkNSWVBUSU9OX0tFWTogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfRU5DUllQVElPTgogICAgICBQUk9WSURFUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIENPT1JESU5BVE9SX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfNjRfQ09PUkRJTkFUT1IKICAgICAgREFUQUJBU0VfSE9TVDogJ3Bvc3RncmVzcWw6NTQzMicKICAgICAgREFUQUJBU0VfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBESVJFQ1RfVVJMOiAncG9zdGdyZXM6Ly8kU0VSVklDRV9VU0VSX1BPU1RHUkVTOiRTRVJWSUNFX1BBU1NXT1JEX1BPU1RHUkVTQHBvc3RncmVzcWw6NTQzMi8kUE9TVEdSRVNfREI/c3NsbW9kZT1kaXNhYmxlJwogICAgICBSRURJU19IT1NUOiByZWRpcwogICAgICBSRURJU19QT1JUOiA2Mzc5CiAgICAgIFJFRElTX1RMU19ESVNBQkxFRDogdHJ1ZQogICAgICBDT09SRElOQVRPUl9IT1NUOiAxMjcuMC4wLjEKICAgICAgQ09PUkRJTkFUT1JfUE9SVDogOTAyMAogICAgICBXSElURUxJU1RFRF9FTUFJTFM6ICcnCiAgICAgIEFETUlOX0VNQUlMUzogJycKICAgICAgREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAzMDAKICAgICAgREVGQVVMVF9FTlZfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOiAxMDAKICAgICAgREVQTE9ZX1JFR0lTVFJZX0hPU1Q6IGRvY2tlci5pbwogICAgICBERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOiB0cmlnZ2VyCiAgICAgIFJFR0lTVFJZX0hPU1Q6ICcke0RFUExPWV9SRUdJU1RSWV9IT1NUfScKICAgICAgUkVHSVNUUllfTkFNRVNQQUNFOiAnJHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX0lEOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfSUR9JwogICAgICBBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUOiAnJHtBVVRIX0dJVEhVQl9DTElFTlRfU0VDUkVUfScKICAgICAgUkVTRU5EX0FQSV9LRVk6ICcke1JFU0VORF9BUElfS0VZfScKICAgICAgRlJPTV9FTUFJTDogJyR7RlJPTV9FTUFJTH0nCiAgICAgIFJFUExZX1RPX0VNQUlMOiAnJHtSRVBMWV9UT19FTUFJTH0nCiAgICAgIExPR0lOX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgQVBQX09SSUdJTjogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgREVWX09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVDogJFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAvb3RlbAogICAgICBPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgRUxFQ1RSSUNfT1JJR0lOOiAnaHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICAgIFBMQVRGT1JNX0hPU1Q6IHRyaWdnZXIKICAgICAgUExBVEZPUk1fV1NfUE9SVDogMzAwMAogICAgICBTRUNVUkVfQ09OTkVDVElPTjogJ2ZhbHNlJwogICAgICBQTEFURk9STV9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X1BST1ZJREVSCiAgICAgIEhUVFBfU0VSVkVSX1BPUlQ6IDkwMjAKICBjb29yZGluYXRvcjoKICAgIGltYWdlOiAnZ2hjci5pby90cmlnZ2VyZG90ZGV2L2Nvb3JkaW5hdG9yOnYzJwogICAgcGxhdGZvcm06IGxpbnV4L2FtZDY0CiAgICB2b2x1bWVzOgogICAgICAtICcvdmFyL3J1bi9kb2NrZXIuc29jazovdmFyL3J1bi9kb2NrZXIuc29jaycKICAgIHVzZXI6IHJvb3QKICAgIHBvcnRzOgogICAgICAtICcxMjcuMC4wLjE6OTAyMDo5MDIwJwogICAgZGVwZW5kc19vbjoKICAgICAgdHJpZ2dlcjoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgZW52aXJvbm1lbnQ6CiAgICAgIFJFTUlYX0FQUF9QT1JUOiAzMDAwCiAgICAgIE5PREVfRU5WOiBwcm9kdWN0aW9uCiAgICAgIFJVTlRJTUVfUExBVEZPUk06IGRvY2tlci1jb21wb3NlCiAgICAgIFYzX0VOQUJMRUQ6IHRydWUKICAgICAgSU5URVJOQUxfT1RFTF9UUkFDRV9ESVNBQkxFRDogMQogICAgICBJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRDogMAogICAgICBQT1NUR1JFU19VU0VSOiAkU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiAkU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICBQT1NUR1JFU19EQjogJyR7UE9TVEdSRVNfREI6LXRyaWdnZXJ9JwogICAgICBNQUdJQ19MSU5LX1NFQ1JFVDogJFNFUlZJQ0VfUEFTU1dPUkRfMzJfTUFHSUMKICAgICAgU0VTU0lPTl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX1NFU1NJT04KICAgICAgRU5DUllQVElPTl9LRVk6ICRTRVJWSUNFX1BBU1NXT1JEXzMyX0VOQ1JZUFRJT04KICAgICAgUFJPVklERVJfU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9QUk9WSURFUgogICAgICBDT09SRElOQVRPUl9TRUNSRVQ6ICRTRVJWSUNFX1BBU1NXT1JEXzY0X0NPT1JESU5BVE9SCiAgICAgIERBVEFCQVNFX0hPU1Q6ICdwb3N0Z3Jlc3FsOjU0MzInCiAgICAgIERBVEFCQVNFX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgRElSRUNUX1VSTDogJ3Bvc3RncmVzOi8vJFNFUlZJQ0VfVVNFUl9QT1NUR1JFUzokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlc3FsOjU0MzIvJFBPU1RHUkVTX0RCP3NzbG1vZGU9ZGlzYWJsZScKICAgICAgUkVESVNfSE9TVDogcmVkaXMKICAgICAgUkVESVNfUE9SVDogNjM3OQogICAgICBSRURJU19UTFNfRElTQUJMRUQ6IHRydWUKICAgICAgQ09PUkRJTkFUT1JfSE9TVDogMTI3LjAuMC4xCiAgICAgIENPT1JESU5BVE9SX1BPUlQ6IDkwMjAKICAgICAgV0hJVEVMSVNURURfRU1BSUxTOiAnJwogICAgICBBRE1JTl9FTUFJTFM6ICcnCiAgICAgIERFRkFVTFRfT1JHX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMzAwCiAgICAgIERFRkFVTFRfRU5WX0VYRUNVVElPTl9DT05DVVJSRU5DWV9MSU1JVDogMTAwCiAgICAgIERFUExPWV9SRUdJU1RSWV9IT1NUOiBkb2NrZXIuaW8KICAgICAgREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRTogdHJpZ2dlcgogICAgICBSRUdJU1RSWV9IT1NUOiAnJHtERVBMT1lfUkVHSVNUUllfSE9TVH0nCiAgICAgIFJFR0lTVFJZX05BTUVTUEFDRTogJyR7REVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRX0nCiAgICAgIEFVVEhfR0lUSFVCX0NMSUVOVF9JRDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX0lEfScKICAgICAgQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVDogJyR7QVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVH0nCiAgICAgIFJFU0VORF9BUElfS0VZOiAnJHtSRVNFTkRfQVBJX0tFWX0nCiAgICAgIEZST01fRU1BSUw6ICcke0ZST01fRU1BSUx9JwogICAgICBSRVBMWV9UT19FTUFJTDogJyR7UkVQTFlfVE9fRU1BSUx9JwogICAgICBMT0dJTl9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIEFQUF9PUklHSU46ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwCiAgICAgIERFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ6ICRTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwL290ZWwKICAgICAgT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOiAkU0VSVklDRV9GUUROX1RSSUdHRVJfMzAwMC9vdGVsCiAgICAgIEVMRUNUUklDX09SSUdJTjogJ2h0dHA6Ly9lbGVjdHJpYzozMDAwJwogICAgICBQTEFURk9STV9IT1NUOiB0cmlnZ2VyCiAgICAgIFBMQVRGT1JNX1dTX1BPUlQ6IDMwMDAKICAgICAgU0VDVVJFX0NPTk5FQ1RJT046ICdmYWxzZScKICAgICAgUExBVEZPUk1fU0VDUkVUOiAkU0VSVklDRV9QQVNTV09SRF82NF9DT09SRElOQVRPUgogICAgICBIVFRQX1NFUlZFUl9QT1JUOiA5MDIwCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gcHdkCg==", + "documentation": "https://trigger.dev/docs/self-hosting/overview?utm_source=coolify.io", + "slogan": "The open source background jobs platform for developers", + "compose": "c2VydmljZXM6CiAgdHJpZ2dlcjoKICAgIGltYWdlOiAnZ2hjci5pby90cmlnZ2VyZG90ZGV2L3RyaWdnZXIuZGV2OnY0LjMuMCcKICAgIHVzZXI6IHJvb3QKICAgIGNvbW1hbmQ6ICJzaCAtYyBcImNob3duIC1SIG5vZGU6bm9kZSAvaG9tZS9ub2RlL3NoYXJlZCAmJiBleGVjIC4vc2NyaXB0cy9lbnRyeXBvaW50LnNoXCJcbiIKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDAKICAgICAgLSAnQVBQX09SSUdJTj0ke1NFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDB9JwogICAgICAtICdMT0dJTl9PUklHSU49JHtTRVJWSUNFX0ZRRE5fVFJJR0dFUl8zMDAwfScKICAgICAgLSAnQVBJX09SSUdJTj0ke1NFUlZJQ0VfRlFETl9UUklHR0VSXzMwMDB9JwogICAgICAtICdTRVNTSU9OX1NFQ1JFVD0ke1NFUlZJQ0VfUEFTU1dPUkRfNjRfU0VTU0lPTn0nCiAgICAgIC0gJ01BR0lDX0xJTktfU0VDUkVUPSR7U0VSVklDRV9QQVNTV09SRF82NF9NQUdJQ0xJTkt9JwogICAgICAtICdFTkNSWVBUSU9OX0tFWT0ke1NFUlZJQ0VfUEFTU1dPUkRfRU5DUllQVElPTktFWX0nCiAgICAgIC0gJ01BTkFHRURfV09SS0VSX1NFQ1JFVD0ke1NFUlZJQ0VfUEFTU1dPUkRfNjRfV09SS0VSU0VDUkVUfScKICAgICAgLSAnVFJJR0dFUl9XT1JLRVJfVE9LRU49JHtUUklHR0VSX1dPUktFUl9UT0tFTn0nCiAgICAgIC0gTk9ERV9FTlY9cHJvZHVjdGlvbgogICAgICAtIEFQUF9MT0dfTEVWRUw9aW5mbwogICAgICAtICdEQVRBQkFTRV9VUkw9cG9zdGdyZXNxbDovLyR7U0VSVklDRV9VU0VSX1BPU1RHUkVTfToke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVN9QHBvc3RncmVzcWw6NTQzMi8ke1BPU1RHUkVTX0RCOi10cmlnZ2VyLWRifT9zY2hlbWE9cHVibGljJnNzbG1vZGU9ZGlzYWJsZScKICAgICAgLSAnRElSRUNUX1VSTD1wb3N0Z3Jlc3FsOi8vJHtTRVJWSUNFX1VTRVJfUE9TVEdSRVN9OiR7U0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU31AcG9zdGdyZXNxbDo1NDMyLyR7UE9TVEdSRVNfREI6LXRyaWdnZXItZGJ9P3NjaGVtYT1wdWJsaWMmc3NsbW9kZT1kaXNhYmxlJwogICAgICAtIFJFRElTX0hPU1Q9cmVkaXMKICAgICAgLSBSRURJU19QT1JUPTYzNzkKICAgICAgLSBSRURJU19UTFNfRElTQUJMRUQ9dHJ1ZQogICAgICAtICdFTEVDVFJJQ19PUklHSU49aHR0cDovL2VsZWN0cmljOjMwMDAnCiAgICAgIC0gJ0RFVl9PVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQ9JHtERVZfT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UOi19JwogICAgICAtICdERVBMT1lfUkVHSVNUUllfSE9TVD0ke0RFUExPWV9SRUdJU1RSWV9IT1NUOi1naGNyLmlvfScKICAgICAgLSAnREVQTE9ZX1JFR0lTVFJZX1BST1RPQ09MPSR7REVQTE9ZX1JFR0lTVFJZX1BST1RPQ09MOi1odHRwc30nCiAgICAgIC0gJ0RFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0U9JHtERVBMT1lfUkVHSVNUUllfTkFNRVNQQUNFOi10cmlnZ2VyfScKICAgICAgLSAnVjRfREVQTE9ZX1JFR0lTVFJZX05BTUVTUEFDRT0ke0RFUExPWV9SRUdJU1RSWV9OQU1FU1BBQ0U6LXRyaWdnZXJ9JwogICAgICAtICdPQkpFQ1RfU1RPUkVfQkFTRV9VUkw9JHtPQkpFQ1RfU1RPUkVfQkFTRV9VUkx9JwogICAgICAtICdPQkpFQ1RfU1RPUkVfQUNDRVNTX0tFWV9JRD0ke09CSkVDVF9TVE9SRV9BQ0NFU1NfS0VZX0lEfScKICAgICAgLSAnT0JKRUNUX1NUT1JFX1NFQ1JFVF9BQ0NFU1NfS0VZPSR7T0JKRUNUX1NUT1JFX1NFQ1JFVF9BQ0NFU1NfS0VZfScKICAgICAgLSAnQ0xJQ0tIT1VTRV9VUkw9aHR0cDovLyR7U0VSVklDRV9VU0VSX0NMSUNLSE9VU0V9OiR7U0VSVklDRV9QQVNTV09SRF82NF9DTElDS0hPVVNFfUBjbGlja2hvdXNlOjgxMjM/c2VjdXJlPWZhbHNlJwogICAgICAtIENMSUNLSE9VU0VfTE9HX0xFVkVMPWluZm8KICAgICAgLSBSVU5fUkVQTElDQVRJT05fRU5BQkxFRD0xCiAgICAgIC0gJ1JVTl9SRVBMSUNBVElPTl9DTElDS0hPVVNFX1VSTD1odHRwOi8vJHtTRVJWSUNFX1VTRVJfQ0xJQ0tIT1VTRX06JHtTRVJWSUNFX1BBU1NXT1JEXzY0X0NMSUNLSE9VU0V9QGNsaWNraG91c2U6ODEyMycKICAgICAgLSBSVU5fUkVQTElDQVRJT05fTE9HX0xFVkVMPWluZm8KICAgICAgLSBUUklHR0VSX0JPT1RTVFJBUF9FTkFCTEVEPTEKICAgICAgLSBUUklHR0VSX0JPT1RTVFJBUF9XT1JLRVJfR1JPVVBfTkFNRT1ib290c3RyYXAKICAgICAgLSBUUklHR0VSX0JPT1RTVFJBUF9XT1JLRVJfVE9LRU5fUEFUSD0vaG9tZS9ub2RlL3NoYXJlZC93b3JrZXJfdG9rZW4KICAgICAgLSAnREVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUPSR7REVGQVVMVF9PUkdfRVhFQ1VUSU9OX0NPTkNVUlJFTkNZX0xJTUlUOi0zMDB9JwogICAgICAtICdERUZBVUxUX0VOVl9FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ9JHtERUZBVUxUX0VOVl9FWEVDVVRJT05fQ09OQ1VSUkVOQ1lfTElNSVQ6LTEwMH0nCiAgICAgIC0gJ0FVVEhfR0lUSFVCX0NMSUVOVF9JRD0ke0FVVEhfR0lUSFVCX0NMSUVOVF9JRDotfScKICAgICAgLSAnQVVUSF9HSVRIVUJfQ0xJRU5UX1NFQ1JFVD0ke0FVVEhfR0lUSFVCX0NMSUVOVF9TRUNSRVQ6LX0nCiAgICAgIC0gJ0VNQUlMX1RSQU5TUE9SVD0ke0VNQUlMX1RSQU5TUE9SVDotc210cH0nCiAgICAgIC0gJ1JFU0VORF9BUElfS0VZPSR7UkVTRU5EX0FQSV9LRVl9JwogICAgICAtICdTTVRQX0hPU1Q9JHtTTVRQX0hPU1R9JwogICAgICAtICdTTVRQX1BPUlQ9JHtTTVRQX1BPUlR9JwogICAgICAtICdTTVRQX1VTRVI9JHtTTVRQX1VTRVJ9JwogICAgICAtICdTTVRQX1BBU1NXT1JEPSR7U01UUF9QQVNTV09SRH0nCiAgICAgIC0gJ1NNVFBfU0VDVVJFPSR7U01UUF9TRUNVUkV9JwogICAgICAtICdGUk9NX0VNQUlMPSR7RlJPTV9FTUFJTH0nCiAgICAgIC0gJ1JFUExZX1RPX0VNQUlMPSR7UkVQTFlfVE9fRU1BSUx9JwogICAgICAtICdXSElURUxJU1RFRF9FTUFJTFM9JHtXSElURUxJU1RFRF9FTUFJTFN9JwogICAgICAtICdBRE1JTl9FTUFJTFM9JHtBRE1JTl9FTUFJTFN9JwogICAgICAtIEdSQUNFRlVMX1NIVVRET1dOX1RJTUVPVVQ9MTAwMAogICAgICAtICdJTlRFUk5BTF9PVEVMX1RSQUNFX0xPR0dJTkdfRU5BQkxFRD0ke0lOVEVSTkFMX09URUxfVFJBQ0VfTE9HR0lOR19FTkFCTEVEOi0wfScKICAgICAgLSAnVFJJR0dFUl9URUxFTUVUUllfRElTQUJMRUQ9JHtUUklHR0VSX1RFTEVNRVRSWV9ESVNBQkxFRDotdHJ1ZX0nCiAgICB2b2x1bWVzOgogICAgICAtICdzaGFyZWQtZGF0YTovaG9tZS9ub2RlL3NoYXJlZCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBub2RlCiAgICAgICAgLSAnLWUnCiAgICAgICAgLSAicmVxdWlyZSgnaHR0cCcpLmdldCgnaHR0cDovLzEyNy4wLjAuMTozMDAwL2hlYWx0aGNoZWNrJywocik9PnByb2Nlc3MuZXhpdChyLnN0YXR1c0NvZGU9PT0yMDA/MDoxKSkub24oJ2Vycm9yJywoKT0+cHJvY2Vzcy5leGl0KDEpKSIKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1CiAgICAgIHN0YXJ0X3BlcmlvZDogMTBzCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3Jlc3FsOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIHJlZGlzOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIGVsZWN0cmljOgogICAgICAgIGNvbmRpdGlvbjogc2VydmljZV9oZWFsdGh5CiAgICAgIGNsaWNraG91c2U6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICBzdXBlcnZpc29yOgogICAgaW1hZ2U6ICdnaGNyLmlvL3RyaWdnZXJkb3RkZXYvc3VwZXJ2aXNvcjp2NC4zLjAnCiAgICB1c2VyOiByb290CiAgICBjb21tYW5kOiAic2ggLWMgXCJjaG93biAtUiBub2RlOm5vZGUgL2hvbWUvbm9kZS9zaGFyZWQgJiYgZXhlYyAvdXNyL2Jpbi9kdW1iLWluaXQgLS0gcG5wbSBydW4gLS1maWx0ZXIgc3VwZXJ2aXNvciBzdGFydFwiXG4iCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSAnVFJJR0dFUl9BUElfVVJMPWh0dHA6Ly90cmlnZ2VyOjMwMDAnCiAgICAgIC0gJ09URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVD1odHRwOi8vdHJpZ2dlcjozMDAwL290ZWwnCiAgICAgIC0gJ1RSSUdHRVJfV09SS0VSX1RPS0VOPSR7VFJJR0dFUl9XT1JLRVJfVE9LRU46LWZpbGU6Ly8vaG9tZS9ub2RlL3NoYXJlZC93b3JrZXJfdG9rZW59JwogICAgICAtICdNQU5BR0VEX1dPUktFUl9TRUNSRVQ9JHtTRVJWSUNFX1BBU1NXT1JEXzY0X1dPUktFUlNFQ1JFVH0nCiAgICAgIC0gJ1RSSUdHRVJfV09SS0xPQURfQVBJX0RPTUFJTj0ke1RSSUdHRVJfV09SS0xPQURfQVBJX0RPTUFJTn0nCiAgICAgIC0gVFJJR0dFUl9XT1JLTE9BRF9BUElfUE9SVF9FWFRFUk5BTD04MDIwCiAgICAgIC0gJ0RPQ0tFUl9IT1NUPXRjcDovL2RvY2tlci1wcm94eToyMzc1JwogICAgICAtICdET0NLRVJfUlVOTkVSX05FVFdPUktTPSR7RE9DS0VSX1JVTk5FUl9ORVRXT1JLU30nCiAgICAgIC0gJ0RPQ0tFUl9BVVRPUkVNT1ZFX0VYSVRFRF9DT05UQUlORVJTPSR7RE9DS0VSX0FVVE9SRU1PVkVfRVhJVEVEX0NPTlRBSU5FUlM6LTF9JwogICAgICAtICdET0NLRVJfUkVHSVNUUllfVVJMPWh0dHBzOi8vJHtERVBMT1lfUkVHSVNUUllfSE9TVDotZ2hjci5pb30nCiAgICAgIC0gJ0RPQ0tFUl9SRUdJU1RSWV9VU0VSTkFNRT0ke0RFUExPWV9SRUdJU1RSWV9VU0VSTkFNRX0nCiAgICAgIC0gJ0RPQ0tFUl9SRUdJU1RSWV9QQVNTV09SRD0ke0RFUExPWV9SRUdJU1RSWV9QQVNTV09SRH0nCiAgICAgIC0gRU5GT1JDRV9NQUNISU5FX1BSRVNFVFM9MQogICAgICAtIFRSSUdHRVJfREVRVUVVRV9JTlRFUlZBTF9NUz0xMDAwCiAgICAgIC0gJ0RFQlVHPSR7U1VQRVJWSVNPUl9ERUJVRzotMH0nCiAgICB2b2x1bWVzOgogICAgICAtICdzaGFyZWQtZGF0YTovaG9tZS9ub2RlL3NoYXJlZCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSBub2RlCiAgICAgICAgLSAnLWUnCiAgICAgICAgLSAicmVxdWlyZSgnaHR0cCcpLmdldCgnaHR0cDovLzEyNy4wLjAuMTo4MDIwL2hlYWx0aCcsKHIpPT5wcm9jZXNzLmV4aXQoci5zdGF0dXNDb2RlPT09MjAwPzA6MSkpLm9uKCdlcnJvcicsKCk9PnByb2Nlc3MuZXhpdCgxKSkiCiAgICAgIGludGVydmFsOiAxMHMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogNQogICAgZGVwZW5kc19vbjoKICAgICAgdHJpZ2dlcjoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgICBkb2NrZXItcHJveHk6CiAgICAgICAgY29uZGl0aW9uOiBzZXJ2aWNlX2hlYWx0aHkKICBkb2NrZXItcHJveHk6CiAgICBpbWFnZTogJ3RlY25hdGl2YS9kb2NrZXItc29ja2V0LXByb3h5OnYwLjQuMicKICAgIHZvbHVtZXM6CiAgICAgIC0gJy92YXIvcnVuL2RvY2tlci5zb2NrOi92YXIvcnVuL2RvY2tlci5zb2NrOnJvJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gTE9HX0xFVkVMPWluZm8KICAgICAgLSAnUE9TVD0ke1BPU1Q6LTF9JwogICAgICAtICdDT05UQUlORVJTPSR7Q09OVEFJTkVSUzotMX0nCiAgICAgIC0gJ0lNQUdFUz0ke0lNQUdFUzotMX0nCiAgICAgIC0gJ0lORk89JHtJTkZPOi0xfScKICAgICAgLSAnTkVUV09SS1M9JHtORVRXT1JLUzotMX0nCiAgICAgIC0gJ0FVVEg9JHtBVVRIOi0xfScKICAgICAgLSAnRElTVFJJQlVUSU9OPSR7RElTVFJJQlVUSU9OOi0xfScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAnbmMgLXogMTI3LjAuMC4xIDIzNzUgfHwgZXhpdCAxJwogICAgICBpbnRlcnZhbDogMzBzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDUKICBwb3N0Z3Jlc3FsOgogICAgaW1hZ2U6ICdwb3N0Z3JlczoxNi1hbHBpbmUnCiAgICBjb21tYW5kOgogICAgICAtICctYycKICAgICAgLSB3YWxfbGV2ZWw9bG9naWNhbAogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ1BPU1RHUkVTX1VTRVI9JHtTRVJWSUNFX1VTRVJfUE9TVEdSRVN9JwogICAgICAtICdQT1NUR1JFU19QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVN9JwogICAgICAtICdQT1NUR1JFU19EQj0ke1BPU1RHUkVTX0RCOi10cmlnZ2VyLWRifScKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3Bvc3RncmVzcWwtZGF0YTovdmFyL2xpYi9wb3N0Z3Jlc3FsL2RhdGEnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3BnX2lzcmVhZHkgLVUgJCR7UE9TVEdSRVNfVVNFUn0gLWQgJCR7UE9TVEdSRVNfREJ9JwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgcmVkaXM6CiAgICBpbWFnZTogJ3JlZGlzOjctYWxwaW5lJwogICAgdm9sdW1lczoKICAgICAgLSAncmVkaXMtZGF0YTovZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSByZWRpcy1jbGkKICAgICAgICAtIHBpbmcKICAgICAgaW50ZXJ2YWw6IDEwcwogICAgICB0aW1lb3V0OiA1cwogICAgICByZXRyaWVzOiA1CiAgZWxlY3RyaWM6CiAgICBpbWFnZTogJ2VsZWN0cmljc3FsL2VsZWN0cmljOjEuMi45JwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gJ0RBVEFCQVNFX1VSTD1wb3N0Z3Jlc3FsOi8vJHtTRVJWSUNFX1VTRVJfUE9TVEdSRVN9OiR7U0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU31AcG9zdGdyZXNxbDo1NDMyLyR7UE9TVEdSRVNfREI6LXRyaWdnZXItZGJ9P3NzbG1vZGU9ZGlzYWJsZScKICAgICAgLSAnRUxFQ1RSSUNfU0VDUkVUPSR7U0VSVklDRV9QQVNTV09SRF82NF9FTEVDVFJJQ30nCiAgICAgIC0gRUxFQ1RSSUNfVVNBR0VfUkVQT1JUSU5HPWZhbHNlCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gY3VybAogICAgICAgIC0gJy1mJwogICAgICAgIC0gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMC92MS9oZWFsdGgnCiAgICAgIGludGVydmFsOiAxMHMKICAgICAgdGltZW91dDogNXMKICAgICAgcmV0cmllczogNQogICAgZGVwZW5kc19vbjoKICAgICAgcG9zdGdyZXNxbDoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogIGNsaWNraG91c2U6CiAgICBpbWFnZTogJ2NsaWNraG91c2UvY2xpY2tob3VzZS1zZXJ2ZXI6MjUuOCcKICAgIGVudmlyb25tZW50OgogICAgICAtICdDTElDS0hPVVNFX1VTRVI9JHtTRVJWSUNFX1VTRVJfQ0xJQ0tIT1VTRX0nCiAgICAgIC0gJ0NMSUNLSE9VU0VfUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEXzY0X0NMSUNLSE9VU0V9JwogICAgICAtIENMSUNLSE9VU0VfREVGQVVMVF9BQ0NFU1NfTUFOQUdFTUVOVD0xCiAgICB2b2x1bWVzOgogICAgICAtICdjbGlja2hvdXNlLWRhdGE6L3Zhci9saWIvY2xpY2tob3VzZScKICAgICAgLSAnY2xpY2tob3VzZS1sb2dzOi92YXIvbG9nL2NsaWNraG91c2Utc2VydmVyJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICd3Z2V0IC0tbm8tdmVyYm9zZSAtLXRyaWVzPTEgLS1zcGlkZXIgaHR0cDovL2xvY2FsaG9zdDo4MTIzL3BpbmcgfHwgZXhpdCAxJwogICAgICBpbnRlcnZhbDogMTBzCiAgICAgIHRpbWVvdXQ6IDVzCiAgICAgIHJldHJpZXM6IDUK", "tags": [ - "trigger.dev", - "background jobs", + "background-jobs", "typescript", - "trigger", - "jobs", - "cron", - "scheduler" + "javascript", + "scheduling", + "workflows", + "automation", + "tasks", + "queues" ], "category": "automation", "logo": "svgs/trigger.png",