diff --git a/src/backend/migrations/20190219223711_root_config.js b/src/backend/migrations/20190219223711_root_config.js new file mode 100644 index 000000000..8bfa3de17 --- /dev/null +++ b/src/backend/migrations/20190219223711_root_config.js @@ -0,0 +1,37 @@ +'use strict'; + +const migrate_name = 'rootpath_config'; +const logger = require('../logger').migrate; + +/** + * Migrate + * + * @see http://knexjs.org/#Schema + * + * @param {Object} knex + * @param {Promise} Promise + * @returns {Promise} + */ +exports.up = function (knex/*, Promise*/) { + logger.info('[' + migrate_name + '] Migrating Up...'); + + return knex.schema.table('proxy_host', function (proxy_host) { + proxy_host.text('advanced_rootconfig').notNull().defaultTo(''); + proxy_host.integer('enabled_rootconfig').notNull().unsigned().defaultTo(0); + }) + .then(() => { + logger.info('[' + migrate_name + '] proxy_host Table altered'); + }); +}; + +/** + * Undo Migrate + * + * @param {Object} knex + * @param {Promise} Promise + * @returns {Promise} + */ +exports.down = function (knex, Promise) { + logger.warn('[' + migrate_name + '] You can\'t migrate down this one.'); + return Promise.resolve(true); +}; diff --git a/src/backend/schema/endpoints/proxy-hosts.json b/src/backend/schema/endpoints/proxy-hosts.json index df7cb1190..5cb9dac85 100644 --- a/src/backend/schema/endpoints/proxy-hosts.json +++ b/src/backend/schema/endpoints/proxy-hosts.json @@ -69,6 +69,12 @@ }, "meta": { "type": "object" + }, + "advanced_rootconfig": { + "type": "string" + }, + "enabled_rootconfig": { + "type": "boolean" } }, "properties": { @@ -128,6 +134,12 @@ }, "meta": { "$ref": "#/definitions/meta" + }, + "advanced_rootconfig": { + "$ref": "#/definitions/advanced_rootconfig" + }, + "enabled_rootconfig": { + "$ref": "#/definitions/enabled_rootconfig" } }, "links": [ @@ -215,6 +227,12 @@ }, "meta": { "$ref": "#/definitions/meta" + }, + "advanced_rootconfig": { + "$ref": "#/definitions/advanced_rootconfig" + }, + "enabled_rootconfig": { + "$ref": "#/definitions/enabled_rootconfig" } } }, @@ -285,6 +303,12 @@ }, "meta": { "$ref": "#/definitions/meta" + }, + "advanced_rootconfig": { + "$ref": "#/definitions/advanced_rootconfig" + }, + "enabled_rootconfig": { + "$ref": "#/definitions/enabled_rootconfig" } } }, diff --git a/src/backend/templates/proxy_host.conf b/src/backend/templates/proxy_host.conf index 52e70583d..52d55b96d 100644 --- a/src/backend/templates/proxy_host.conf +++ b/src/backend/templates/proxy_host.conf @@ -34,6 +34,8 @@ server { # Proxy! include conf.d/include/proxy.conf; + + {{advanced_rootconfig}} } } {% endif %} diff --git a/src/frontend/js/app/nginx/proxy/form.ejs b/src/frontend/js/app/nginx/proxy/form.ejs index 0962916f3..8d8dcea6c 100644 --- a/src/frontend/js/app/nginx/proxy/form.ejs +++ b/src/frontend/js/app/nginx/proxy/form.ejs @@ -59,7 +59,7 @@ -