instance-mariadb-schema.json 5.05 KB
Newer Older
1 2
{
  "$schema": "http://json-schema.org/draft-04/schema#",
3
  "type": "object",
4 5
  "properties": {
    "tcpv4-port": {
6 7
      "allOf": [
        {
8
          "$ref": "./schemas-definitions.json#/tcpv4port"
9 10 11 12 13
        },
        {
          "description": "Start allocating ports at this value, going downward"
        }
      ]
14 15 16
    },
    "database-list": {
      "description": "Databases to create and respective user credentials getting all privileges on it",
17 18 19 20 21 22 23
      "default": [
        {
          "name": "erp5",
          "user": "user",
          "password": "insecure"
        }
      ],
24 25
      "minItems": 1,
      "items": {
26 27 28 29 30
        "required": [
          "name",
          "user",
          "password"
        ],
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
        "properties": {
          "name": {
            "description": "Database name",
            "type": "string"
          },
          "user": {
            "description": "User name",
            "type": "string"
          },
          "password": {
            "description": "User password",
            "type": "string"
          }
        },
        "type": "object"
      },
      "type": "array"
    },
    "catalog-backup": {
      "description": "Backup control knobs",
      "properties": {
        "full-retention-days": {
          "description": "How many days full backups must be retained, -1 meaning full backups are disabled and 0 meaning no expiration",
          "default": 7,
          "minimum": -1,
          "type": "integer"
        },
        "incremental-retention-days": {
59
          "description": "How many days incremental backups (binlogs) must be retained, -1 meaning incremental backups are disabled and 0 meaning no expiration, defaulting to full-retention-days' value",
60 61 62 63 64 65
          "minimum": -1,
          "type": "integer"
        }
      },
      "type": "object"
    },
66 67 68
    "backup-periodicity": {
      "description": "When to backup, specified in the same format as for systemd.time(7) calendar events (years & seconds not supported, DoW & DoM can not be combined).",
      "default": "daily",
69
      "type": "string"
70
    },
71
    "innodb-buffer-pool-size": {
72 73 74 75
      "description": "See MariaDB documentation on innodb_buffer_pool_size",
      "minimum": 0,
      "type": "integer"
    },
76 77 78 79 80
    "innodb-buffer-pool-instances": {
      "description": "See MariaDB documentation on innodb_buffer_pool_instances",
      "minimum": 1,
      "type": "integer"
    },
81 82 83 84 85 86 87 88 89 90
    "innodb-log-file-size": {
      "description": "See MariaDB documentation on innodb_log_file_size",
      "minimum": 0,
      "type": "integer"
    },
    "innodb-log-buffer-size": {
      "description": "See MariaDB documentation on innodb_log_buffer_size",
      "minimum": 0,
      "type": "integer"
    },
91 92 93 94 95 96 97
    "innodb-file-per-table": {
      "description": "See MariaDB documentation on innodb_file_per_table",
      "minimum": 0,
      "maximum": 1,
      "default": 0,
      "type": "integer"
    },
98 99 100 101 102 103
    "long-query-time": {
      "description": "Number of seconds above which long queries are logged",
      "minimum": 0,
      "default": 1,
      "type": "number"
    },
104 105 106 107 108
    "max-connection-count": {
      "description": "See MariaDB documentation on max_connections. If not provided, a value suitable for the number of request Zope processes is chosen.",
      "minimum": 0,
      "type": "integer"
    },
109
    "relaxed-writes": {
110 111 112
      "description": "When enabled, sets innodb_flush_log_at_trx_commit = 0, innodb_flush_method = nosync, innodb_doublewrite = 0 and sync_frm = 0 - RTFM, those options are dangerous",
      "default": false,
      "type": "boolean"
113
    },
114 115 116 117 118 119 120 121 122 123
    "character-set-server": {
      "description": "The server default character set",
      "default": "utf8mb4",
      "type": "string"
    },
    "collation-server": {
      "description": "The server default collation",
      "default": "utf8mb4_general_ci",
      "type": "string"
    },
124 125 126 127 128 129
    "ssl": {
      "description": "Enable and define SSL support for network connections",
      "default": {},
      "properties": {
        "ca-crt": {
          "description": "Certificate Authority's certificate, in PEM format",
130
          "type": "string"
131 132 133 134 135 136 137 138
        },
        "crt": {
          "description": "Server's certificate, in PEM format (mandatory to enable SSL support)",
          "type": "string"
        },
        "key": {
          "description": "Server's key, in PEM format (mandatory to enable SSL support)",
          "type": "string"
139 140 141 142 143 144 145 146
        },
        "crl": {
          "description": "Server's certificate revocation list, in PEM format",
          "type": "string"
        },
        "cipher": {
          "description": "Permissible cipher specifications, separated by colons",
          "type": "string"
147 148 149
        }
      },
      "type": "object"
150 151 152 153 154
    },
    "odbc-ini": {
      "description": "Contents of odbc.ini file, see unixodbc document",
      "default": "",
      "type": "string"
155 156 157 158 159 160 161
    },
    "environment-variables": {
      "description": "Extra environment variables for mysqld may be required to use third party ODBC libraries for CONNECT storage engine.",
      "items": {
        "type": "string"
      },
      "type": "array"
162
    }
163 164
  }
}