{
  "manifest_version": "1.0.0",
  "template": {
    "id": "dfbef62a-2d15-45bd-a040-5737293b5253",
    "slug": "jitsi-meet",
    "name": "Jitsi Meet | (Just Updated) Self-Hosted Video Calls, Users via Env Var",
    "description": "Self-hosted video calls. Add users by setting one env var, no admin login",
    "url": "https://railway.com/deploy/jitsi-meet",
    "upstream": {
      "image": "jitsi/web:stable-11031"
    }
  },
  "status": "unvalidated",
  "validated_at": null,
  "success_rate_30d": null,
  "services": [
    {
      "name": "jvb",
      "source": {
        "image": "jitsi/jvb:stable-11031"
      },
      "needs_volume": true,
      "volume_mount_path": "/config",
      "http": false
    },
    {
      "name": "prosody",
      "source": {
        "image": "jitsi/prosody:stable-11031"
      },
      "needs_volume": true,
      "volume_mount_path": "/config",
      "http": false
    },
    {
      "name": "web",
      "source": {
        "image": "jitsi/web:stable-11031"
      },
      "needs_volume": true,
      "volume_mount_path": "/config",
      "http": true
    },
    {
      "name": "jicofo",
      "source": {
        "image": "jitsi/jicofo:stable-11031"
      },
      "needs_volume": true,
      "volume_mount_path": "/config",
      "http": false
    }
  ],
  "required_inputs": [
    {
      "key": "TZ",
      "service": "jvb",
      "description": "Provide a value for TZ.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_PORT",
      "service": "jvb",
      "description": "Provide a value for JVB_PORT.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "PUBLIC_URL",
      "service": "jvb",
      "description": "Provide a value for PUBLIC_URL.",
      "secret": false,
      "strategy": "railway_provided",
      "railway_source": "railway_domain"
    },
    {
      "key": "XMPP_SERVER",
      "service": "jvb",
      "description": "Provide a value for XMPP_SERVER.",
      "secret": false,
      "strategy": "railway_provided",
      "railway_source": "railway_private_domain"
    },
    {
      "key": "JVB_AUTH_USER",
      "service": "jvb",
      "description": "Provide a value for JVB_AUTH_USER.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_BREWERY_MUC",
      "service": "jvb",
      "description": "Provide a value for JVB_BREWERY_MUC.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_AUTH_DOMAIN",
      "service": "jvb",
      "description": "Provide a value for XMPP_AUTH_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_AUTH_PASSWORD",
      "service": "jvb",
      "description": "Provide a value for JVB_AUTH_PASSWORD.",
      "secret": true,
      "strategy": "railway_provided",
      "railway_source": "reference_variable"
    },
    {
      "key": "XMPP_INTERNAL_MUC_DOMAIN",
      "service": "jvb",
      "description": "Provide a value for XMPP_INTERNAL_MUC_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_TCP_HARVESTER_DISABLED",
      "service": "jvb",
      "description": "Provide a value for JVB_TCP_HARVESTER_DISABLED.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "TZ",
      "service": "prosody",
      "description": "Provide a value for TZ.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "AUTH_TYPE",
      "service": "prosody",
      "description": "Provide a value for AUTH_TYPE.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "ENABLE_AUTH",
      "service": "prosody",
      "description": "Provide a value for ENABLE_AUTH.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_DOMAIN",
      "service": "prosody",
      "description": "Provide a value for XMPP_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "ENABLE_GUESTS",
      "service": "prosody",
      "description": "Provide a value for ENABLE_GUESTS.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_AUTH_USER",
      "service": "prosody",
      "description": "Provide a value for JVB_AUTH_USER.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "PROSODY_USERS",
      "service": "prosody",
      "description": "Provide a value for PROSODY_USERS.",
      "secret": false,
      "strategy": "generate",
      "generate": "random_base64_32"
    },
    {
      "key": "XMPP_MUC_DOMAIN",
      "service": "prosody",
      "description": "Provide a value for XMPP_MUC_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JICOFO_AUTH_USER",
      "service": "prosody",
      "description": "Provide a value for JICOFO_AUTH_USER.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_AUTH_DOMAIN",
      "service": "prosody",
      "description": "Provide a value for XMPP_AUTH_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_AUTH_PASSWORD",
      "service": "prosody",
      "description": "Provide a value for JVB_AUTH_PASSWORD.",
      "secret": true,
      "strategy": "generate",
      "generate": "strong_password"
    },
    {
      "key": "XMPP_GUEST_DOMAIN",
      "service": "prosody",
      "description": "Provide a value for XMPP_GUEST_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JICOFO_AUTH_PASSWORD",
      "service": "prosody",
      "description": "Provide a value for JICOFO_AUTH_PASSWORD.",
      "secret": true,
      "strategy": "generate",
      "generate": "strong_password"
    },
    {
      "key": "XMPP_RECORDER_DOMAIN",
      "service": "prosody",
      "description": "Provide a value for XMPP_RECORDER_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JICOFO_COMPONENT_SECRET",
      "service": "prosody",
      "description": "Provide a value for JICOFO_COMPONENT_SECRET.",
      "secret": true,
      "strategy": "generate",
      "generate": "random_base64_32"
    },
    {
      "key": "XMPP_INTERNAL_MUC_DOMAIN",
      "service": "prosody",
      "description": "Provide a value for XMPP_INTERNAL_MUC_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "TZ",
      "service": "web",
      "description": "Provide a value for TZ.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "AUTH_TYPE",
      "service": "web",
      "description": "Provide a value for AUTH_TYPE.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "PUBLIC_URL",
      "service": "web",
      "description": "Provide a value for PUBLIC_URL.",
      "secret": false,
      "strategy": "railway_provided",
      "railway_source": "railway_domain"
    },
    {
      "key": "ENABLE_AUTH",
      "service": "web",
      "description": "Provide a value for ENABLE_AUTH.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_DOMAIN",
      "service": "web",
      "description": "Provide a value for XMPP_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "DISABLE_HTTPS",
      "service": "web",
      "description": "Provide a value for DISABLE_HTTPS.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "ENABLE_GUESTS",
      "service": "web",
      "description": "Provide a value for ENABLE_GUESTS.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_AUTH_USER",
      "service": "web",
      "description": "Provide a value for JVB_AUTH_USER.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_MUC_DOMAIN",
      "service": "web",
      "description": "Provide a value for XMPP_MUC_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JICOFO_AUTH_USER",
      "service": "web",
      "description": "Provide a value for JICOFO_AUTH_USER.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_AUTH_DOMAIN",
      "service": "web",
      "description": "Provide a value for XMPP_AUTH_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JVB_AUTH_PASSWORD",
      "service": "web",
      "description": "Provide a value for JVB_AUTH_PASSWORD.",
      "secret": true,
      "strategy": "railway_provided",
      "railway_source": "reference_variable"
    },
    {
      "key": "XMPP_GUEST_DOMAIN",
      "service": "web",
      "description": "Provide a value for XMPP_GUEST_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "ENABLE_LETSENCRYPT",
      "service": "web",
      "description": "Provide a value for ENABLE_LETSENCRYPT.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_BOSH_URL_BASE",
      "service": "web",
      "description": "Provide a value for XMPP_BOSH_URL_BASE.",
      "secret": false,
      "strategy": "railway_provided",
      "railway_source": "railway_private_domain"
    },
    {
      "key": "ENABLE_HTTP_REDIRECT",
      "service": "web",
      "description": "Provide a value for ENABLE_HTTP_REDIRECT.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JICOFO_AUTH_PASSWORD",
      "service": "web",
      "description": "Provide a value for JICOFO_AUTH_PASSWORD.",
      "secret": true,
      "strategy": "railway_provided",
      "railway_source": "reference_variable"
    },
    {
      "key": "XMPP_RECORDER_DOMAIN",
      "service": "web",
      "description": "Provide a value for XMPP_RECORDER_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "ENABLE_XMPP_WEBSOCKET",
      "service": "web",
      "description": "Provide a value for ENABLE_XMPP_WEBSOCKET.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "ENABLE_COLIBRI_WEBSOCKET",
      "service": "web",
      "description": "Provide a value for ENABLE_COLIBRI_WEBSOCKET.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "TZ",
      "service": "jicofo",
      "description": "Provide a value for TZ.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "AUTH_TYPE",
      "service": "jicofo",
      "description": "Provide a value for AUTH_TYPE.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "ENABLE_AUTH",
      "service": "jicofo",
      "description": "Provide a value for ENABLE_AUTH.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_DOMAIN",
      "service": "jicofo",
      "description": "Provide a value for XMPP_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_SERVER",
      "service": "jicofo",
      "description": "Provide a value for XMPP_SERVER.",
      "secret": false,
      "strategy": "railway_provided",
      "railway_source": "railway_private_domain"
    },
    {
      "key": "JVB_BREWERY_MUC",
      "service": "jicofo",
      "description": "Provide a value for JVB_BREWERY_MUC.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_MUC_DOMAIN",
      "service": "jicofo",
      "description": "Provide a value for XMPP_MUC_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JICOFO_AUTH_USER",
      "service": "jicofo",
      "description": "Provide a value for JICOFO_AUTH_USER.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "XMPP_AUTH_DOMAIN",
      "service": "jicofo",
      "description": "Provide a value for XMPP_AUTH_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    },
    {
      "key": "JICOFO_AUTH_PASSWORD",
      "service": "jicofo",
      "description": "Provide a value for JICOFO_AUTH_PASSWORD.",
      "secret": true,
      "strategy": "railway_provided",
      "railway_source": "reference_variable"
    },
    {
      "key": "JICOFO_COMPONENT_SECRET",
      "service": "jicofo",
      "description": "Provide a value for JICOFO_COMPONENT_SECRET.",
      "secret": true,
      "strategy": "railway_provided",
      "railway_source": "reference_variable"
    },
    {
      "key": "XMPP_INTERNAL_MUC_DOMAIN",
      "service": "jicofo",
      "description": "Provide a value for XMPP_INTERNAL_MUC_DOMAIN.",
      "secret": false,
      "strategy": "ask_user"
    }
  ],
  "deploy": {
    "mcp": {
      "server": "railway",
      "tool": "deploy_template",
      "args": {
        "template_code": "jitsi-meet"
      }
    },
    "cli": "railway deploy --template jitsi-meet",
    "api": {
      "method": "POST",
      "path": "/graphql/v2",
      "body": {
        "query": "mutation templateDeploy($input: TemplateDeployV2Input!) { templateDeployV2(input: $input) { projectId workflowId } }",
        "variables": {
          "input": {
            "templateId": "dfbef62a-2d15-45bd-a040-5737293b5253",
            "serializedConfig": {
              "buckets": {},
              "services": {
                "036a5113-b21a-471b-b340-a90038ff2cd2": {
                  "icon": null,
                  "name": "jvb",
                  "deploy": {
                    "startCommand": null,
                    "healthcheckPath": null,
                    "restartPolicyType": "ON_FAILURE",
                    "restartPolicyMaxRetries": 10
                  },
                  "source": {
                    "image": "jitsi/jvb:stable-11031"
                  },
                  "variables": {
                    "TZ": {
                      "isOptional": false,
                      "defaultValue": "{{TZ}}"
                    },
                    "JVB_PORT": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_PORT}}"
                    },
                    "PUBLIC_URL": {
                      "isOptional": false,
                      "defaultValue": "https://${{web.RAILWAY_PUBLIC_DOMAIN}}"
                    },
                    "XMPP_SERVER": {
                      "isOptional": false,
                      "defaultValue": "${{prosody.RAILWAY_PRIVATE_DOMAIN}}"
                    },
                    "JVB_AUTH_USER": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_AUTH_USER}}"
                    },
                    "JVB_BREWERY_MUC": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_BREWERY_MUC}}"
                    },
                    "XMPP_AUTH_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_AUTH_DOMAIN}}"
                    },
                    "JVB_AUTH_PASSWORD": {
                      "isOptional": false,
                      "defaultValue": "${{prosody.JVB_AUTH_PASSWORD}}"
                    },
                    "XMPP_INTERNAL_MUC_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_INTERNAL_MUC_DOMAIN}}"
                    },
                    "JVB_TCP_HARVESTER_DISABLED": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_TCP_HARVESTER_DISABLED}}"
                    }
                  },
                  "volumeMounts": {
                    "036a5113-b21a-471b-b340-a90038ff2cd2": {
                      "mountPath": "/config"
                    }
                  }
                },
                "0c0bb6e9-2aaa-4009-bd28-4bf428eda657": {
                  "icon": null,
                  "name": "prosody",
                  "deploy": {
                    "startCommand": "/bin/sh -c '(i=0; while [ ! -f /config/prosody.cfg.lua ] && [ $i -lt 60 ]; do i=$((i+1)); sleep 2; done; sleep 5; echo \"$PROSODY_USERS\" | tr \",\" \"\\n\" | while IFS=: read -r u p; do [ -n \"$u\" ] || continue; prosodyctl --config /config/prosody.cfg.lua deluser \"$u@$XMPP_DOMAIN\" >/dev/null 2>&1; prosodyctl --config /config/prosody.cfg.lua register \"$u\" \"$XMPP_DOMAIN\" \"$p\" && echo \"[users] registered $u\" || echo \"[users] FAILED $u\"; done) & exec /init'",
                    "healthcheckPath": null,
                    "restartPolicyType": "ON_FAILURE",
                    "restartPolicyMaxRetries": 10
                  },
                  "source": {
                    "image": "jitsi/prosody:stable-11031"
                  },
                  "variables": {
                    "TZ": {
                      "isOptional": false,
                      "defaultValue": "{{TZ}}"
                    },
                    "AUTH_TYPE": {
                      "isOptional": false,
                      "defaultValue": "{{AUTH_TYPE}}"
                    },
                    "ENABLE_AUTH": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_AUTH}}"
                    },
                    "XMPP_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_DOMAIN}}"
                    },
                    "ENABLE_GUESTS": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_GUESTS}}"
                    },
                    "JVB_AUTH_USER": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_AUTH_USER}}"
                    },
                    "PROSODY_USERS": {
                      "isOptional": false,
                      "defaultValue": "{{PROSODY_USERS}}"
                    },
                    "XMPP_MUC_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_MUC_DOMAIN}}"
                    },
                    "JICOFO_AUTH_USER": {
                      "isOptional": false,
                      "defaultValue": "{{JICOFO_AUTH_USER}}"
                    },
                    "XMPP_AUTH_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_AUTH_DOMAIN}}"
                    },
                    "JVB_AUTH_PASSWORD": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_AUTH_PASSWORD}}"
                    },
                    "XMPP_GUEST_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_GUEST_DOMAIN}}"
                    },
                    "JICOFO_AUTH_PASSWORD": {
                      "isOptional": false,
                      "defaultValue": "{{JICOFO_AUTH_PASSWORD}}"
                    },
                    "XMPP_RECORDER_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_RECORDER_DOMAIN}}"
                    },
                    "JICOFO_COMPONENT_SECRET": {
                      "isOptional": false,
                      "defaultValue": "{{JICOFO_COMPONENT_SECRET}}"
                    },
                    "XMPP_INTERNAL_MUC_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_INTERNAL_MUC_DOMAIN}}"
                    }
                  },
                  "volumeMounts": {
                    "0c0bb6e9-2aaa-4009-bd28-4bf428eda657": {
                      "mountPath": "/config"
                    }
                  }
                },
                "1bf284bf-68ef-4d4a-9a00-9bb7c34de1e4": {
                  "icon": null,
                  "name": "web",
                  "deploy": {
                    "startCommand": null,
                    "healthcheckPath": "",
                    "restartPolicyType": "ON_FAILURE",
                    "restartPolicyMaxRetries": 10
                  },
                  "source": {
                    "image": "jitsi/web:stable-11031"
                  },
                  "variables": {
                    "TZ": {
                      "isOptional": false,
                      "defaultValue": "{{TZ}}"
                    },
                    "AUTH_TYPE": {
                      "isOptional": false,
                      "defaultValue": "{{AUTH_TYPE}}"
                    },
                    "PUBLIC_URL": {
                      "isOptional": false,
                      "defaultValue": "https://${{RAILWAY_PUBLIC_DOMAIN}}"
                    },
                    "ENABLE_AUTH": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_AUTH}}"
                    },
                    "XMPP_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_DOMAIN}}"
                    },
                    "DISABLE_HTTPS": {
                      "isOptional": false,
                      "defaultValue": "{{DISABLE_HTTPS}}"
                    },
                    "ENABLE_GUESTS": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_GUESTS}}"
                    },
                    "JVB_AUTH_USER": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_AUTH_USER}}"
                    },
                    "XMPP_MUC_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_MUC_DOMAIN}}"
                    },
                    "JICOFO_AUTH_USER": {
                      "isOptional": false,
                      "defaultValue": "{{JICOFO_AUTH_USER}}"
                    },
                    "XMPP_AUTH_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_AUTH_DOMAIN}}"
                    },
                    "JVB_AUTH_PASSWORD": {
                      "isOptional": false,
                      "defaultValue": "${{prosody.JVB_AUTH_PASSWORD}}"
                    },
                    "XMPP_GUEST_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_GUEST_DOMAIN}}"
                    },
                    "ENABLE_LETSENCRYPT": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_LETSENCRYPT}}"
                    },
                    "XMPP_BOSH_URL_BASE": {
                      "isOptional": false,
                      "defaultValue": "http://${{prosody.RAILWAY_PRIVATE_DOMAIN}}:5280"
                    },
                    "ENABLE_HTTP_REDIRECT": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_HTTP_REDIRECT}}"
                    },
                    "JICOFO_AUTH_PASSWORD": {
                      "isOptional": false,
                      "defaultValue": "${{prosody.JICOFO_AUTH_PASSWORD}}"
                    },
                    "XMPP_RECORDER_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_RECORDER_DOMAIN}}"
                    },
                    "ENABLE_XMPP_WEBSOCKET": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_XMPP_WEBSOCKET}}"
                    },
                    "ENABLE_COLIBRI_WEBSOCKET": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_COLIBRI_WEBSOCKET}}"
                    }
                  },
                  "networking": {
                    "serviceDomains": {
                      "<hasDomain>:80": {
                        "port": 80
                      }
                    }
                  },
                  "volumeMounts": {
                    "1bf284bf-68ef-4d4a-9a00-9bb7c34de1e4": {
                      "mountPath": "/config"
                    }
                  }
                },
                "edabe425-9ea1-4ff9-b15d-5ba81a4601db": {
                  "icon": null,
                  "name": "jicofo",
                  "deploy": {
                    "startCommand": null,
                    "healthcheckPath": null,
                    "restartPolicyType": "ON_FAILURE",
                    "restartPolicyMaxRetries": 10
                  },
                  "source": {
                    "image": "jitsi/jicofo:stable-11031"
                  },
                  "variables": {
                    "TZ": {
                      "isOptional": false,
                      "defaultValue": "{{TZ}}"
                    },
                    "AUTH_TYPE": {
                      "isOptional": false,
                      "defaultValue": "{{AUTH_TYPE}}"
                    },
                    "ENABLE_AUTH": {
                      "isOptional": false,
                      "defaultValue": "{{ENABLE_AUTH}}"
                    },
                    "XMPP_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_DOMAIN}}"
                    },
                    "XMPP_SERVER": {
                      "isOptional": false,
                      "defaultValue": "${{prosody.RAILWAY_PRIVATE_DOMAIN}}"
                    },
                    "JVB_BREWERY_MUC": {
                      "isOptional": false,
                      "defaultValue": "{{JVB_BREWERY_MUC}}"
                    },
                    "XMPP_MUC_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_MUC_DOMAIN}}"
                    },
                    "JICOFO_AUTH_USER": {
                      "isOptional": false,
                      "defaultValue": "{{JICOFO_AUTH_USER}}"
                    },
                    "XMPP_AUTH_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_AUTH_DOMAIN}}"
                    },
                    "JICOFO_AUTH_PASSWORD": {
                      "isOptional": false,
                      "defaultValue": "${{prosody.JICOFO_AUTH_PASSWORD}}"
                    },
                    "JICOFO_COMPONENT_SECRET": {
                      "isOptional": false,
                      "defaultValue": "${{prosody.JICOFO_COMPONENT_SECRET}}"
                    },
                    "XMPP_INTERNAL_MUC_DOMAIN": {
                      "isOptional": false,
                      "defaultValue": "{{XMPP_INTERNAL_MUC_DOMAIN}}"
                    }
                  },
                  "volumeMounts": {
                    "edabe425-9ea1-4ff9-b15d-5ba81a4601db": {
                      "mountPath": "/config"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "post_deploy": {},
  "resources": {
    "expected_services": 4,
    "needs_volume": true
  },
  "generated_at": "2026-09-23T10:14:44.639Z",
  "generator_version": "0.1.0"
}
