Commit b5d81336 authored by Alain Takoudjou's avatar Alain Takoudjou

repman: fix instance input schema json format

parent 9fe1035e
{ {
"type": "object", "type": "object",
"$schema": "http://json-schema.org/draft-04/schema", "$schema": "http://json-schema.org/draft-04/schema",
"title": "Input Parameters", "title": "Input Parameters",
"properties": { "properties": {
"slave-frontend": { "slave-frontend": {
"title": "Web frontend", "title": "Web frontend",
"description": "Front end used to provide web access for internal services at the kvm.", "description": "Front end used to provide web access for internal services at the kvm.",
"properties": { "properties": {
"slave-domain": { "slave-domain": {
"title": "Slave frontend domain", "title": "Slave frontend domain",
"description": "Unique domain name for this slave frontend.", "description": "Unique domain name for this slave frontend.",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"instance-guid": { "instance-guid": {
"title": "Main Frontend Instance ID", "title": "Main Frontend Instance ID",
"description": "Unique identifier of the frontend instance, like \"SOFTINST-11031\".", "description": "Unique identifier of the frontend instance, like \"SOFTINST-11031\".",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"frontend-software-type": { "frontend-software-type": {
"title": "Frontend Software Type", "title": "Frontend Software Type",
"description": "Type of the frontend instance, like \"frontend\".", "description": "Type of the frontend instance, like \"frontend\".",
"type": "string" "type": "string"
}, },
"frontend-software-url": { "frontend-software-url": {
"title": "Frontend Software URL", "title": "Frontend Software URL",
"description": "Software Release URL of the frontend instance, like \"http://example.com/path/to/software.cfg\".", "description": "Software Release URL of the frontend instance, like \"http://example.com/path/to/software.cfg\".",
"type": "string", "type": "string",
"format": "uri", "format": "uri",
"default": "http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/software/apache-frontend/software.cfg" "default": "http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/software/apache-frontend/software.cfg"
} }
}, },
"type": "object" "type": "object"
}, },
"computer-memory-percent-threshold": { "computer-memory-percent-threshold": {
"title": "Computer memory percent threshold.", "title": "Computer memory percent threshold.",
"description": "Computer memory percent threshold.", "description": "Computer memory percent threshold.",
"type": "int", "type": "integer",
"default": 80 "default": 80
}, },
"monitor-interface-url": { "monitor-interface-url": {
"title": "Monitor Web Interface URL", "title": "Monitor Web Interface URL",
"description": "Give Url of HTML web interface that will be used to render this monitor instance.", "description": "Give Url of HTML web interface that will be used to render this monitor instance.",
"type": "string", "type": "string",
"format": "uri", "format": "uri",
"default": "https://monitor.app.officejs.com" "default": "https://monitor.app.officejs.com"
}, },
"monitor-cors-domains": { "monitor-cors-domains": {
"title": "Monitor CORS domains", "title": "Monitor CORS domains",
"description": "List of cors domains separated with space. Needed for ajax query on this monitor instance from a different domain.", "description": "List of cors domains separated with space. Needed for ajax query on this monitor instance from a different domain.",
"type": "string", "type": "string",
"default": "monitor.app.officejs.com" "default": "monitor.app.officejs.com"
}, },
"mail-from": { "mail-from": {
"title": "Mail From", "title": "Mail From",
"description": "Mail From address", "description": "Mail From address",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"mail-smtp-addr": { "mail-smtp-addr": {
"title": "Mail SMTP address", "title": "Mail SMTP address",
"description": "Mail SMTP address. Default: localhost:25", "description": "Mail SMTP address. Default: localhost:25",
"type": "string", "type": "string",
"default": "localhost:25" "default": "localhost:25"
}, },
"mail-smtp-password": { "mail-smtp-password": {
"title": "Mail SMTP password", "title": "Mail SMTP password",
"description": "Mail SMTP password", "description": "Mail SMTP password",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"mail-smtp-user": { "mail-smtp-user": {
"title": "Mail SMTP User", "title": "Mail SMTP User",
"description": "Mail SMTP User", "description": "Mail SMTP User",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"mail-to": { "mail-to": {
"title": "Mail To", "title": "Mail To",
"description": "", "description": "",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"tags": { "tags": {
"title": "Provisioning db tags", "title": "Provisioning db tags",
"description": "Provisioning db tags", "description": "Provisioning db tags",
"type": "string", "type": "string",
"default": "gtidstrict,bind,pkg,innodb,noquerycache,slow,pfs,linux,readonly,diskmonitor,sqlerror,compressbinlog,bm4ci,mroonga,utctime,readcommitted,nohandshake" "default": "gtidstrict,bind,pkg,innodb,noquerycache,slow,pfs,linux,readonly,diskmonitor,sqlerror,compressbinlog,bm4ci,mroonga,utctime,readcommitted,nohandshake"
}, },
"http-session-lifetime": { "http-session-lifetime": {
"title": "Web Session life time in s", "title": "Web Session life time in s",
"description": "Web interface Session life time in seconds. Default 86400", "description": "Web interface Session life time in seconds. Default 86400",
"type": "integer", "type": "integer",
"default": 86400 "default": 86400
}, },
"http-refresh-interval": { "http-refresh-interval": {
"title": "Web refresh interval in s", "title": "Web refresh interval in s",
"description": "Web interface refresh interval in s. Default 4s.", "description": "Web interface refresh interval in s. Default 4s.",
"type": "integer", "type": "integer",
"default": 4 "default": 4
}, },
"autorejoin": { "autorejoin": {
"title": "Automatic rejoin a failed master", "title": "Automatic rejoin a failed master",
"description": "Automatic rejoin a failed master (default true)", "description": "Automatic rejoin a failed master (default true)",
"type": "boolean", "type": "boolean",
"default": true "default": true
}, },
"autoseed": { "autoseed": {
"title": "Automatic join a standalone node", "title": "Automatic join a standalone node",
"description": "Automatic join a standalone node", "description": "Automatic join a standalone node",
"type": "boolean", "type": "boolean",
"default": true "default": true
}, },
"repman-cluster-dict": { "repman-cluster-dict": {
"title": "Replication Manager clusters definition", "title": "Replication Manager clusters definition",
"description": "Replication Manager clusters definition", "description": "Replication Manager clusters definition",
"patternProperties": { "patternProperties": {
".*": { ".*": {
"properties": { "properties": {
"name": { "name": {
"title": "Name of the cluster", "title": "Name of the cluster",
"description": "Name of the cluster: Should not contains spaces or any special characters.", "description": "Name of the cluster: Should not contains spaces or any special characters.",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"database-amount": { "database-amount": {
"title": "Amount of databases for cluster", "title": "Amount of databases for cluster",
"description": "Database amount to deploy with this cluster. Minimal amount is 2 required to enable replication.", "description": "Database amount to deploy with this cluster. Minimal amount is 2 required to enable replication.",
"type": "integer", "type": "integer",
"default": 2, "default": 2,
"minimum": 2 "minimum": 2
}, },
"-sla-0-computer_guid": { "-sla-0-computer_guid": {
"title": "Prefered Master Computer Guid", "title": "Prefered Master Computer Guid",
"description": "Computer Guid for prefered Master database.", "description": "Computer Guid for prefered Master database.",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"-sla-1-computer_guid": { "-sla-1-computer_guid": {
"title": "Slave 1 Computer Guid", "title": "Slave 1 Computer Guid",
"description": "Computer Guid for the first slave database.", "description": "Computer Guid for the first slave database.",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"-sla-2-computer_guid": { "-sla-2-computer_guid": {
"title": "Slave 2 Computer Guid", "title": "Slave 2 Computer Guid",
"description": "Computer Guid for the second slave database.", "description": "Computer Guid for the second slave database.",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"-sla-3-computer_guid": { "-sla-3-computer_guid": {
"title": "Slave 3 Computer Guid", "title": "Slave 3 Computer Guid",
"description": "Computer Guid for the third slave database.", "description": "Computer Guid for the third slave database.",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"-sla-4-computer_guid": { "-sla-4-computer_guid": {
"title": "Slave 4 Computer Guid", "title": "Slave 4 Computer Guid",
"description": "Computer Guid for the fourth slave database.", "description": "Computer Guid for the fourth slave database.",
"type": "string", "type": "string",
"default": "" "default": ""
}, },
"proxysql-user": { "proxysql-user": {
"title": "Proxysql username", "title": "Proxysql username",
"description": "Proxysql external user, default is 'external'.", "description": "Proxysql external user, default is 'external'.",
"type": "string", "type": "string",
"default": "external" "default": "external"
}, },
"proxy-tags": { "proxy-tags": {
"title": "Proxy tags", "title": "Proxy tags",
"description": "playbook configuration tags. Default: pkg,masterslave,linux,noreadwritesplit", "description": "playbook configuration tags. Default: pkg,masterslave,linux,noreadwritesplit",
"type": "string", "type": "string",
"default": "pkg,masterslave,linux,noreadwritesplit" "default": "pkg,masterslave,linux,noreadwritesplit"
}, },
"logical-backup-cron": { "logical-backup-cron": {
"title": "Mysqldump backup cron definition.", "title": "Mysqldump backup cron definition.",
"description": "Logical backup cron expression represents a set of times, using cron format.", "description": "Logical backup cron expression represents a set of times, using cron format.",
"type": "string", "type": "string",
"default": "0 21 * * *" "default": "0 21 * * *"
}, },
"physical-backup-cron": { "physical-backup-cron": {
"title": "Mariabackup cron definition", "title": "Mariabackup cron definition",
"description": "Physical backup cron expression represents a set of times, using cron format.", "description": "Physical backup cron expression represents a set of times, using cron format.",
"type": "string", "type": "string",
"default": "0 1 * * *" "default": "0 1 * * *"
}, },
"proxy-cpu-cores": { "proxy-cpu-cores": {
"title": "Proxy Cpu cores", "title": "Proxy Cpu cores",
"description": "Proxy Cpu cores. Default: 2", "description": "Proxy Cpu cores. Default: 2",
"type": "integer", "type": "integer",
"default": 2, "default": 2,
"minimum": 1 "minimum": 1
}, },
"proxy-memory": { "proxy-memory": {
"title": "Proxy Memory usage in giga bytes", "title": "Proxy Memory usage in giga bytes",
"description": "Proxy Memory usage in giga bytes. Default: 1G", "description": "Proxy Memory usage in giga bytes. Default: 1G",
"type": "integer", "type": "integer",
"default": 1, "default": 1,
"minimum": 1 "minimum": 1
}, },
"db-cpu-cores": { "db-cpu-cores": {
"title": "Database Cpu cores", "title": "Database Cpu cores",
"description": "Database Cpu cores. Default: 2", "description": "Database Cpu cores. Default: 2",
"type": "integer", "type": "integer",
"default": 2, "default": 2,
"minimum": 1 "minimum": 1
}, },
"db-disk-iops": { "db-disk-iops": {
"title": "Database Rnd IO/s", "title": "Database Rnd IO/s",
"description": "Rnd IO/s in seconds for micro service VM (default 300).", "description": "Rnd IO/s in seconds for micro service VM (default 300).",
"type": "integer", "type": "integer",
"default": 300 "default": 300
}, },
"db-memory": { "db-memory": {
"title": "Database memory in M", "title": "Database memory in M",
"description": "Memory in M for micro service VM (default 256)", "description": "Memory in M for micro service VM (default 256)",
"type": "integer", "type": "integer",
"default": 256, "default": 256,
"minimum": 256, "minimum": 256,
"multipleOf": 256 "multipleOf": 256
}, },
"db-memory-shared-pct": { "db-memory-shared-pct": {
"title": "Percent memory shared per buffer", "title": "Percent memory shared per buffer",
"description": "Percent memory shared per buffer (default \"threads:16,innodb:60,myisam:10,aria:10,rocksdb:1,tokudb:1,s3:1,archive:1,querycache:0\")", "description": "Percent memory shared per buffer (default \"threads:16,innodb:60,myisam:10,aria:10,rocksdb:1,tokudb:1,s3:1,archive:1,querycache:0\")",
"type": "string", "type": "string",
"default": "threads:16,innodb:60,myisam:10,aria:10,rocksdb:1,tokudb:1,s3:1,archive:1,querycache:0" "default": "threads:16,innodb:60,myisam:10,aria:10,rocksdb:1,tokudb:1,s3:1,archive:1,querycache:0"
}, },
"db-memory-threaded-pct": { "db-memory-threaded-pct": {
"title": "Percent memory allocted per threads", "title": "Percent memory allocted per threads",
"description": "Percent memory allocted per threads. (default \"tmp:70,join:20,sort:10\")", "description": "Percent memory allocted per threads. (default \"tmp:70,join:20,sort:10\")",
"type": "string", "type": "string",
"default": "tmp:70,join:20,sort:10" "default": "tmp:70,join:20,sort:10"
}, },
"innodb-file-per-table": { "innodb-file-per-table": {
"title": "enable Innodb file per table", "title": "enable Innodb file per table",
"description": "enable Innodb file per table. Possible value: 0=disabled, 1=enabled", "description": "enable Innodb file per table. Possible value: 0=disabled, 1=enabled",
"type": "integer", "type": "integer",
"default": 1, "default": 1,
"minimum": 0, "minimum": 0,
"maximum": 1 "maximum": 1
}, },
"use-ipv6": { "use-ipv6": {
"title": "Mariadb server listen on IPv6", "title": "Mariadb server listen on IPv6",
"description": "Listen on IPv6 instead of IPv4.", "description": "Listen on IPv6 instead of IPv4.",
"type": "boolean", "type": "boolean",
"default": true "default": true
}, },
"failover-mode": { "failover-mode": {
"title": "Failover mode", "title": "Failover mode",
"description": "Failover is manual or automatic (default \"manual\").", "description": "Failover is manual or automatic (default \"manual\").",
"type": "string", "type": "string",
"default": "manual", "default": "manual",
"enum": [ "enum": [
"manual", "manual",
"automatic" "automatic"
] ]
},
}, "failover-limit": {
"failover-limit": { "title": "Failover amount limit",
"title": "Failover amount limit", "description": "Failover is canceld if already failover this number of time (0: unlimited) (default 5).",
"description": "Failover is canceld if already failover this number of time (0: unlimited) (default 5).", "type": "integer",
"type": "integer", "default": 5
"default": 5 },
}, "failover-falsepositive-heartbeat": {
"failover-falsepositive-heartbeat": { "title": "Failover check slaves do not receive heartbeat",
"title": "Failover check slaves do not receive heartbeat", "description": "Failover checks that slaves do not receive heartbeat (default true).",
"description": "Failover checks that slaves do not receive heartbeat (default true).", "type": "boolean",
"type": "boolean", "default": true
"default": true },
}, "failover-falsepositive-heartbeat-timeout": {
"failover-falsepositive-heartbeat-timeout": { "title": "Failover check slaves do not receive heartbeat timeout",
"title": "Failover check slaves do not receive heartbeat timeout", "description": "Failover checks that slaves do not receive heartbeat detection timeout (default 3).",
"description": "Failover checks that slaves do not receive heartbeat detection timeout (default 3).", "type": "integer",
"type": "integer", "default": 3
"default": 3 },
}, "failover-falsepositive-ping-counter": {
"failover-falsepositive-ping-counter": { "title": "Failover amount of ping failures",
"title": "Failover amount of ping failures", "description": "Failover after this number of ping failures (interval 1s) (default 5).",
"description": "Failover after this number of ping failures (interval 1s) (default 5).", "type": "integer",
"type": "integer", "default": 5
"default": 5 },
}, "failover-max-slave-delay": {
"failover-max-slave-delay": { "title": "Failover election ignore slave with replication delay",
"title": "Failover election ignore slave with replication delay", "description": "Election ignore slave with replication delay over this time in sec (default 30).",
"description": "Election ignore slave with replication delay over this time in sec (default 30).", "type": "integer",
"type": "integer", "default": 30
"default": 30 },
}, "failover-readonly-state": {
"failover-readonly-state": { "title": "Failover Switchover set slaves as read-only",
"title": "Failover Switchover set slaves as read-only", "description": "Failover Switchover set slaves as read-only (default true).",
"description": "Failover Switchover set slaves as read-only (default true).", "type": "boolean",
"type": "boolean", "default": true
"default": true },
}, "failover-restart-unsafe": {
"failover-restart-unsafe": { "title": "Failover when cluster down if a slave is start first",
"title": "Failover when cluster down if a slave is start first", "description": "Failover when cluster down if a slave is start first.",
"description": "Failover when cluster down if a slave is start first.", "type": "boolean",
"type": "boolean", "default": false
"default": false },
}, "failover-time-limit": {
"failover-time-limit": { "title": "Cancel failover if time in sec not passed after previous failover",
"title": "Cancel failover if time in sec not passed after previous failover", "description": "Failover is canceled if timer in sec is not passed with previous failover (0: do not wait).",
"description": "Failover is canceled if timer in sec is not passed with previous failover (0: do not wait).", "type": "integer",
"type": "integer", "default": 0
"default": 0 },
}, "switchover-at-equal-gtid": {
"switchover-at-equal-gtid": { "title": "Switchover only when slaves are fully in sync",
"title": "Switchover only when slaves are fully in sync", "description": "Switchover only when slaves are fully in sync.",
"description": "Switchover only when slaves are fully in sync.", "type": "boolean",
"type": "boolean", "default": false
"default": false },
}, "switchover-slave-wait-catch": {
"switchover-slave-wait-catch": { "title": "Switchover wait for slave to catch with replication",
"title": "Switchover wait for slave to catch with replication", "description": "Switchover wait for slave to catch with replication, not needed in GTID mode but enable to detect possible issues like witing on old master (default true).",
"description": "Switchover wait for slave to catch with replication, not needed in GTID mode but enable to detect possible issues like witing on old master (default true).", "type": "boolean",
"type": "boolean", "default": true
"default": true },
}, "switchover-wait-kill": {
"switchover-wait-kill": { "title": "Switchover wait ms before killing threads on demoted master",
"title": "Switchover wait ms before killing threads on demoted master", "description": "Switchover wait this many milliseconds before killing threads on demoted master (default 5000).",
"description": "Switchover wait this many milliseconds before killing threads on demoted master (default 5000).", "type": "integer",
"type": "integer", "default": 5000
"default": 5000 },
}, "switchover-wait-trx": {
"switchover-wait-trx": { "title": "Cancel switchover after timeout seconds if can't aquire FTWRL",
"title": "Cancel switchover after timeout seconds if can't aquire FTWRL", "description": "Switchover is cancel after this timeout in second if can't aquire FTWRL (default 10).",
"description": "Switchover is cancel after this timeout in second if can't aquire FTWRL (default 10).", "type": "integer",
"type": "integer", "default": 10
"default": 10 },
}, "switchover-wait-write-query": {
"switchover-wait-write-query": { "title": "Cancel switchover after timeout if a write query is running",
"title": "Cancel switchover after timeout if a write query is running", "description": "Switchover is canceled if a write query is running for this time (default 10).",
"description": "Switchover is canceled if a write query is running for this time (default 10).", "type": "integer",
"type": "integer", "default": 10
"default": 10 }
} },
}, "type": "object"
"type": "object" }
} },
}, "type": "object"
"type": "object" }
} }
} }
}
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment