aboutsummaryrefslogtreecommitdiffstats
path: root/charms/trusty/contrail-webui/templates/config.global.js.j2
diff options
context:
space:
mode:
Diffstat (limited to 'charms/trusty/contrail-webui/templates/config.global.js.j2')
-rw-r--r--charms/trusty/contrail-webui/templates/config.global.js.j2315
1 files changed, 315 insertions, 0 deletions
diff --git a/charms/trusty/contrail-webui/templates/config.global.js.j2 b/charms/trusty/contrail-webui/templates/config.global.js.j2
new file mode 100644
index 0000000..50a6d02
--- /dev/null
+++ b/charms/trusty/contrail-webui/templates/config.global.js.j2
@@ -0,0 +1,315 @@
+/*
+ * Copyright (c) 2014 Juniper Networks, Inc. All rights reserved.
+ */
+
+var config = {};
+
+config.orchestration = {};
+/****************************************************************************
+ * Specify Orchestration Model
+ * Available models are:
+ * - openstack
+ * - cloudstack
+ * If you do not want to specify any model, set it to 'none'
+ *
+ *****************************************************************************/
+config.orchestration.Manager = 'openstack';
+
+/****************************************************************************
+ * This boolean flag indicates to communicate with Orchestration
+ * modules(networkManager, imageManager, computeManager, identityManager,
+ * storageManager), should the webServer communicate using the
+ * ip/port/authProtocol/apiVersion as specified in this file, or as returned
+ * from auth catalog list.
+ * Note: config.identityManager.apiVersion is not controlled by this boolean
+ * flag.
+ *
+ * true - These values should be taken from this config
+ * file.
+ * false - These values should be taken from auth catalog list
+ *
+ *****************************************************************************/
+config.serviceEndPointFromConfig = true;
+
+/****************************************************************************
+ * This boolean flag specifies wheather region list should be taken from config
+ * file or from keystone endpoint
+ * true - If set as true, then keystone endpoint is taken from
+ * config.regions
+ * false - If set as false, then keystone endpoint is taken from
+ * config.identityManager
+ *
+ ****************************************************************************/
+config.regionsFromConfig = false;
+
+/****************************************************************************
+ * Below are the configs for Api Server and analytics Service type & name as
+ * provisioned in keystone
+ *
+ * apiServiceType - Service Type for apiServer, default value is apiServer
+ * opServiceType - Service Type for analytics, default value is opServer
+ *
+ * Note: If there are multiple api server or analytices nodes in a specific
+ * region, then provision service type/name as ApiServer0, ApiServer1,
+ * ApiServer2 etc, similarly for analytics node: OpServer0, OpServer1,
+ * OpServer2 etc.
+ *
+ ****************************************************************************/
+config.endpoints = {};
+config.endpoints.apiServiceType = 'ApiServer';
+config.endpoints.opServiceType = 'OpServer';
+
+/****************************************************************************
+ * Mapping to region name with keystone endpoint
+ *
+ * For example:
+ * config.regions.RegionOne = 'http://nodeIp:5000/v2.0';
+ * config.regions.RegionTwo = 'http://nodeIp:5000/v3';
+ *
+ ****************************************************************************/
+config.regions = {};
+config.regions.RegionOne = 'http://{{ identity_admin[0]['service_hostname'] }}:{{ identity_admin[0]['service_port'] }}/v2.0';
+
+/****************************************************************************
+ * This boolean flag indicates if serviceEndPointFromConfig is set as false,
+ * then to take IP/Port/Protocol/Version information from auth catalog,
+ * should publicURL OR internalURL will be used.
+ *
+ * true - publicURL in endpoint will be used to retrieve IP/Port/Protocol/
+ * Version information
+ * false - internalURL in endpoint will be used to retrieve
+ * IP/Port/Protocol/Version information
+ *
+ * NOTE: if config.serviceEndPointFromConfig is set as true, then this flag
+ * does not have any effect.
+ *
+ *****************************************************************************/
+config.serviceEndPointTakePublicURL = true;
+
+/****************************************************************************
+ * Below are the config options for all Orchestration Modules below:
+ * - networkManager
+ * - imageManager
+ * - computeManager
+ * - identityManager
+ * - storageManager
+ * - cnfg
+ * - analytics
+ *
+ * Options:
+ * ip:
+ * IP to connect to for this Server.
+ * port:
+ * Port to connect to for this server
+ * authProtocol:
+ * Specify authProtocol either 'http' or 'https'
+ * apiVersion:
+ * REST API Version for this server to connect to.
+ * Specify a list of Versions in array notation.
+ * Below are the supported list of apiVersion for the modules as of now:
+ * imageManager - ['v1', 'v2']
+ * computeManager - ['v1.1', 'v2']
+ * identityManager - ['v2.0']
+ * storageManager - ['v1']
+ *
+ * Not applicable for cnfg/analytics as of now
+ * strictSSL:
+ * If true, requires certificates to be valid
+ * ca:
+ * An authority certificate to check the remote host against,
+ * if you do not want to specify then use ''
+ *****************************************************************************/
+config.networkManager = {};
+config.networkManager.ip = '127.0.0.1';
+config.networkManager.port = '9696'
+config.networkManager.authProtocol = 'http';
+config.networkManager.apiVersion = [];
+config.networkManager.strictSSL = false;
+config.networkManager.ca = '';
+
+config.imageManager = {};
+config.imageManager.ip = '127.0.0.1';
+config.imageManager.port = '9292';
+config.imageManager.authProtocol = 'http';
+config.imageManager.apiVersion = ['v1', 'v2'];
+config.imageManager.strictSSL = false;
+config.imageManager.ca = '';
+
+config.computeManager = {};
+config.computeManager.ip = '127.0.0.1';
+config.computeManager.port = '8774';
+config.computeManager.authProtocol = 'http';
+config.computeManager.apiVersion = ['v1.1', 'v2'];
+config.computeManager.strictSSL = false;
+config.computeManager.ca = '';
+
+config.identityManager = {};
+config.identityManager.ip = '{{ identity_admin[0]['service_hostname'] }}';
+config.identityManager.port = '{{ identity_admin[0]['service_port'] }}';
+config.identityManager.authProtocol = 'http';
+/******************************************************************************
+ * Note: config.identityManager.apiVersion is not controlled by boolean flag
+ * config.serviceEndPointFromConfig. If specified apiVersion here, then these
+ * API versions will be used while using REST API to identityManager.
+ * If want to use with default apiVersion(v2.0), then can specify it as
+ * empty array.
+ ******************************************************************************/
+config.identityManager.apiVersion = ['v2.0'];
+config.identityManager.strictSSL = false;
+config.identityManager.ca = '';
+
+config.storageManager = {};
+config.storageManager.ip = '127.0.0.1';
+config.storageManager.port = '8776';
+config.storageManager.authProtocol = 'http';
+config.storageManager.apiVersion = ['v1'];
+config.storageManager.strictSSL = false;
+config.storageManager.ca = '';
+
+// VNConfig API server and port.
+config.cnfg = {};
+config.cnfg.server_ip = '{{ contrail_api[0]['vip'] if contrail_api[0]['vip'] else contrail_api[0]['private-address'] }}';
+config.cnfg.server_port = '{{ contrail_api[0]['port'] }}';
+config.cnfg.authProtocol = 'http';
+config.cnfg.strictSSL = false;
+config.cnfg.ca = '';
+
+// Analytics API server and port.
+config.analytics = {};
+config.analytics.server_ip = '127.0.0.1';
+config.analytics.server_port = '8081';
+config.analytics.authProtocol = 'http';
+config.analytics.strictSSL = false;
+config.analytics.ca = '';
+
+// vcenter related parameters
+config.vcenter = {};
+config.vcenter.server_ip = '127.0.0.1'; //vCenter IP
+config.vcenter.server_port = '443'; //Port
+config.vcenter.authProtocol = 'https'; //http or https
+config.vcenter.datacenter = 'vcenter'; //datacenter name
+config.vcenter.dvsswitch = 'vswitch'; //dvsswitch name
+config.vcenter.strictSSL = false; //Validate the certificate or ignore
+config.vcenter.ca = ''; //specify the certificate key file
+config.vcenter.wsdl = '/var/lib/contrail-webui/contrail-web-core/webroot/js/vim.wsdl';
+
+/* Discovery Service */
+config.discoveryService = {};
+config.discoveryService.server_ip = '{{ contrail_discovery[0]['vip'] if contrail_discovery[0]['vip'] else contrail_discovery[0]['private-address'] }}';
+config.discoveryService.server_port = '{{ contrail_discovery[0]['port'] }}';
+/* Specifiy true if subscription to discovery server should be enabled, else
+ * specify false. Other than true/false value here is treated as true
+ */
+config.discoveryService.enable = true;
+
+/* Job Server */
+config.jobServer = {};
+config.jobServer.server_ip = '127.0.0.1';
+config.jobServer.server_port = '3000';
+
+/* Upload/Download Directory */
+config.files = {};
+config.files.download_path = '/tmp';
+
+/* Cassandra Server */
+config.cassandra = {};
+config.cassandra.server_ips = ['{{ cassandra|join('\', \'', attribute='private-address') }}'];
+config.cassandra.server_port = '{{ cassandra[0]['rpc_port'] if cassandra[0]['rpc_port'] else cassandra[0]['port'] }}';
+config.cassandra.enable_edit = false;
+
+/* KUE Job Scheduler */
+config.kue = {};
+config.kue.ui_port = '3002'
+
+/* IP List to listen on */
+config.webui_addresses = ['0.0.0.0'];
+
+/* Is insecure access to WebUI?
+ * If set as false, then all http request will be redirected
+ * to https, if set true, then no https request will be processed, but only http
+ * request
+ */
+config.insecure_access = {{ ((not config['use-https']) ~ '')|lower }};
+
+// HTTP port for NodeJS Server.
+config.http_port = '{{ config['http-port']|default('8080', true) }}';
+
+// HTTPS port for NodeJS Server.
+config.https_port = '{{ config['https-port']|default('8143', true) }}';
+
+// Activate/Deactivate Login.
+config.require_auth = false;
+
+/* Number of node worker processes for cluster. */
+config.node_worker_count = 1;
+
+/* Number of Parallel Active Jobs with same type */
+config.maxActiveJobs = 10;
+
+/* Redis DB index for Web-UI */
+config.redisDBIndex = 3;
+
+/* WebUI Redis Server */
+config.redis_server_port = '{{ redis[0]['port'] }}';
+config.redis_server_ip = '{{ redis[0]['hostname'] }}';
+config.redis_dump_file = '/var/lib/redis/dump-webui.rdb';
+config.redis_password = '';
+
+/* Logo File: Use complete path of logo file location */
+config.logo_file = '{{ config['logo-filename'] if config['logo-filename'] else logo_file }}';
+
+/* Favicon File: Use complete path of favicon file location */
+config.favicon_file = '{{ config['favicon-filename'] if config['favicon-filename'] else favicon_file }}';
+
+config.featurePkg = {};
+/* Add new feature Package Config details below */
+config.featurePkg.webController = {};
+config.featurePkg.webController.path = '{{ webcontroller_path }}';
+config.featurePkg.webController.enable = true;
+
+/* Enable/disable Stat Query Links in Sidebar*/
+config.qe = {};
+config.qe.enable_stat_queries = false;
+
+/* Configure level of logs, supported log levels are:
+ debug, info, notice, warning, error, crit, alert, emerg
+ */
+config.logs = {};
+config.logs.level = 'debug';
+
+/******************************************************************************
+ * Boolean flag getDomainProjectsFromApiServer indicates wheather the project
+ * list should come from API Server or Identity Manager.
+ * If Set
+ * - true, then project list will come from API Server
+ * - false, then project list will come from Identity Manager
+ * Default: false
+ *
+ ******************************************************************************/
+config.getDomainProjectsFromApiServer = false;
+/*****************************************************************************
+ * Boolean flag L2_enable indicates the default forwarding-mode of a network.
+ * Allowed values : true / false
+ * Set this flag to true if all the networks are to be L2 networks,
+ * set to false otherwise.
+ *****************************************************************************/
+config.network = {};
+config.network.L2_enable = false;
+
+/******************************************************************************
+ * Boolean flag getDomainsFromApiServer indicates wheather the domain
+ * list should come from API Server or Identity Manager.
+ * If Set
+ * - true, then domain list will come from API Server
+ * - false, then domain list will come from Identity Manager
+ * Default: true
+ * NOTE: if config.identityManager.apiVersion is set as v2.0, then this flag
+ * does not have any effect, in that case the domain list is retrieved
+ * from API Server.
+ *
+ *****************************************************************************/
+config.getDomainsFromApiServer = false;
+
+// Export this as a module.
+module.exports = config;
+