instance-slave-caddy-input-schema.json 7.75 KB
Newer Older
1
{
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
  "$schema": "http://json-schema.org/draft-04/schema",
  "properties": {
    "caddy_custom_http": {
      "default": "",
      "description": "Raw http configuration in python template format. Your site will be rejected if you use it without notification and approval of frontend administrators",
      "textarea": true,
      "title": "HTTP configuration",
      "type": "string"
    },
    "caddy_custom_https": {
      "default": "",
      "description": "Raw https configuration in python template format. Your site will be rejected if you use it without notification and approval of frontend administrators",
      "textarea": true,
      "title": "HTTPS configuration",
      "type": "string"
    },
    "custom_domain": {
      "description": "Custom Domain to use for the website",
      "pattern": "^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,6}$",
      "title": "Custom Domain",
      "type": "string"
    },
    "default-path": {
      "default": "",
      "description": "Provide default path to redirect user to when user access / (the site root)",
      "title": "type:zope Default Path",
      "type": "string"
    },
    "disable-no-cache-request": {
      "default": "false",
      "description": "If set to true, Cache-Control and Pragma requests headers will not be sent to cache and backend servers. This prevents clients from bypassing cache when enable_cache is true",
      "enum": [
        "false",
        "true"
      ],
      "title": "enable_cache: Disable 'no-cache' requests",
      "type": "string"
    },
    "disable-via-header": {
      "default": "false",
      "description": "If set to true, Via response headers will not be sent to client",
      "enum": [
        "false",
        "true"
      ],
      "title": "enable_cache: Disable 'Via' headers from cache",
      "type": "string"
    },
    "disabled-cookie-list": {
      "default": "",
52 53
      "description": "List of Cookies separated by space that will not be sent to cache and backend servers. This is especially useful to discard analytics tracking cookies when using Vary: Cookie cache headers",
      "title": "Disabled Cookies",
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
      "type": "string"
    },
    "enable-http2": {
      "default": "true",
      "description": "Use HTTP2 Protocol for the site",
      "enum": [
        "true",
        "false"
      ],
      "title": "Enable HTTP2 Protocol",
      "type": "string"
    },
    "enable_cache": {
      "default": "false",
      "description": "If set to true, http caching server (Apache Traffic Server) will be used between frontend Caddy and backend",
      "enum": [
        "false",
        "true"
      ],
      "title": "Enable Cache",
      "type": "string"
    },
    "https-only": {
      "default": "false",
      "description": "If set to true, http requests will be redirected to https",
      "enum": [
        "false",
        "true"
      ],
      "title": "HTTPS Only",
      "type": "string"
    },
    "https-url": {
      "description": "HTTPS Url of the backend if it is diferent from url parameter",
      "pattern": "^(http|https|ftp)://",
      "title": "HTTPS Backend URL",
      "type": "string"
    },
    "monitor-ipv4-test": {
      "default": "",
      "description": "IPv4 Address for the frontend keep monitoring with ping",
      "title": "IPv4 Address to Monitor Packet Lost",
      "type": "string"
    },
    "monitor-ipv6-test": {
      "default": "",
      "description": "IPv6 Address for the frontend keep monitoring with ping6 (without brackets)",
      "title": "IPv6 Address to Monitor Packet Lost",
      "type": "string"
    },
    "path": {
      "default": "",
      "description": "Path to proxy to in the backend",
      "title": "type:zope Backend Path",
      "type": "string"
    },
110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
    "websocket-path-list": {
      "default": "",
      "description": "Space separated list of path to the websocket application. If not set the whole slave will be websocket, if set then / will be HTTP, and /<websocket-path> will be WSS. In order to have ' ' in the space use '%20'",
      "title": "type:websocket Websocket Application Path List",
      "type": "string"
    },
    "websocket-transparent": {
      "default": "true",
      "description": "If set to false, websocket slave will be without Caddy's transparent proxy mode. Depending on the application the setting shall be false or true. Defaults to true for transparent proxying.",
      "enum": [
        "false",
        "true"
      ],
      "title": "type:websocket Transparent proxy",
      "type": "string"
    },
126 127
    "prefer-gzip-encoding-to-backend": {
      "default": "false",
128
      "description": "If set to true, frontend will rewrite Accept-Encoding request header to simply 'gzip' for all variants of Accept-Encoding containing 'gzip', in order to maximize cache hits for resources cached with Vary: Accept-Encoding when enable_cache is used",
129 130 131 132
      "enum": [
        "false",
        "true"
      ],
133
      "title": "Prefer gzip Encoding for Backend",
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
      "type": "string"
    },
    "re6st-optimal-test": {
      "default": "",
      "description": "IPv6 and IPv6 Address for the frontend test if re6st is on the optimal status (use ipv6,ipv4)",
      "title": "IPv6 and IPv4 Address to test Re6st",
      "type": "string"
    },
    "server-alias": {
      "default": "",
      "description": "Server Alias List separated by space",
      "title": "Server Alias",
      "type": "string"
    },
    "ssl-proxy-verify": {
      "default": "false",
150
      "description": "If set to true, Backend SSL Certificates will be checked and frontend will refuse to proxy if certificate is invalid",
151 152 153 154
      "enum": [
        "false",
        "true"
      ],
155
      "title": "Verify Backend Certificates",
156 157
      "type": "string"
    },
158 159 160 161 162 163 164 165 166 167 168 169 170
    "ssl_crt": {
      "default": "",
      "description": "Content of the SSL Certificate file. Deprecated, please use key-upload-url.",
      "textarea": true,
      "title": "[DEPRECATED] SSL Certificate",
      "type": "string"
    },
    "ssl_key": {
      "default": "",
      "description": "Content of the SSL Key file. Deprecated, please use key-upload-url.",
      "textarea": true,
      "title": "[DEPRECATED] SSL Key",
      "type": "string"
171 172 173 174 175 176 177
   },
    "ssl_ca_crt": {
      "default": "",
      "description": "Content of the CA certificate file. Deprecated, please use key-upload-url.",
      "textarea": true,
      "title": "[DEPRECATED] SSL Certificate Authority's Certificate",
      "type": "string"
178
    },
179 180
    "ssl_proxy_ca_crt": {
      "default": "",
181
      "description": "Content of the SSL Certificate Authority file of the backend (to be used with ssl-proxy-verify)",
182
      "textarea": true,
183
      "title": "SSL Backend Authority's Certificate",
184 185 186 187
      "type": "string"
    },
    "type": {
      "default": "",
188
      "description": "Type of slave. If redirect, the slave will redirect to the given url. If zope, the rewrite rules will be compatible with Virtual Host Monster. Implemented are default, zope, redirect, notebook and websocket, not implemneted is eventsource.",
189 190 191 192 193
      "enum": [
        "",
        "zope",
        "redirect",
        "notebook",
194
        "websocket",
195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220
        "eventsource"
      ],
      "title": "Backend Type",
      "type": "string"
    },
    "url": {
      "description": "Url of the backend",
      "pattern": "^(http|https|ftp)://",
      "title": "Backend URL",
      "type": "string"
    },
    "virtualhostroot-http-port": {
      "default": 80,
      "description": "Port where http requests to frontend will be redirected.",
      "title": "type:zope virtualhostroot-http-port",
      "type": "integer"
    },
    "virtualhostroot-https-port": {
      "default": 443,
      "description": "Port where https requests to frontend will be redirected.",
      "title": "type:zope virtualhostroot-https-port",
      "type": "integer"
    }
  },
  "title": "Input Parameters",
  "type": "object"
221
}