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 52 53 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 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | 1 1 1 | 'use strict'; ;require.register("data/db_properties_info", function (exports, require, module) { /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ var App = require('app'); module.exports = { /** * object that shows property names for different kind of config properties * - radio button property (db_selector) - main config on which can depend other core properties * - properties used to generate connection url (host_name, db_name) * - properties that should be updated on radio buttons change (connection_url, driver, db_type, sql_jar_connector) * @see <code>setConnectionUrl<code> for details for connection_url * - properties that should be hidden in special case (user_name, password) * @see <code>handleSpecialUserPassProperties<code> method * @type {object} */ dpPropertiesByServiceMap: { 'HIVE': { db_selector: 'hive_database', db_name: 'ambari.hive.db.schema.name', connection_url: 'javax.jdo.option.ConnectionURL', db_type: 'hive_database_type', driver: 'javax.jdo.option.ConnectionDriverName', user_name: 'javax.jdo.option.ConnectionUserName', password: 'javax.jdo.option.ConnectionPassword' }, 'OOZIE': { db_selector: 'oozie_database', db_name: 'oozie.db.schema.name', connection_url: 'oozie.service.JPAService.jdbc.url', driver: 'oozie.service.JPAService.jdbc.driver', user_name: 'oozie.service.JPAService.jdbc.username', password: 'oozie.service.JPAService.jdbc.password' } }, /** * object that shows default(recommended) values for different db type; * properties that should have default value ['connection_url', 'driver', 'sql_jar_connector', 'db_type'] * some properties can be skipped but be sure they are not used. * @type {object} */ dpPropertiesMap: { 'MYSQL': { 'connection_url': 'jdbc:mysql://{0}/{1}', /** in case property has different default value for specific service it can be overriden in such way **/ 'HIVE': { 'connection_url': 'jdbc:mysql://{0}/{1}?createDatabaseIfNotExist=true' }, 'driver': 'mysql-connector-java.jar', 'sql_jar_connector': '/usr/share/java/mysql-connector-java.jar', 'db_type': 'mysql', 'db_name': 'MySQL', 'driver_download_url': 'https://dev.mysql.com/downloads/connector/j/', 'driver_name': 'MySQL Connector/J JDBC Driver' }, 'POSTGRES': { 'connection_url': 'jdbc:postgresql://{0}:5432/{1}', 'driver': 'org.postgresql.Driver', 'sql_jar_connector': '/usr/share/java/postgresql.jar', 'db_type': 'postgres', 'db_name': 'PostgreSQL', 'driver_download_url': 'https://jdbc.postgresql.org/', 'driver_name': 'PostgreSQL JDBC Driver' }, 'ORACLE': { 'connection_url': 'jdbc:oracle:thin:@//{0}:1521/{1}', 'driver': 'oracle.jdbc.driver.OracleDriver', 'sql_jar_connector': '/usr/share/java/ojdbc6.jar', 'db_type': 'oracle', 'db_name': 'Oracle', 'driver_download_url': 'http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html', 'driver_name': 'Oracle JDBC Driver' }, 'MSSQL': { 'connection_url': 'jdbc:sqlserver://{0};databaseName={1}', 'driver': 'com.microsoft.sqlserver.jdbc.SQLServerDriver', 'sql_jar_connector': '/usr/share/java/sqljdbc4.jar', 'db_type': 'mssql' }, 'MSSQL2': { 'connection_url': 'jdbc:sqlserver://{0};databaseName={1};integratedSecurity=true', 'driver': 'com.microsoft.sqlserver.jdbc.SQLServerDriver', 'sql_jar_connector': '/usr/share/java/sqljdbc4.jar', 'db_type': 'mssql' }, /** TODO: Remove SQLA from the list of databases once Ranger DB_FLAVOR=SQLA is replaced with SQL Anywhere */ 'SQLA': { 'connection_url': 'jdbc:sqlanywhere:host={0};database={1}', 'driver': 'sap.jdbc4.sqlanywhere.IDriver', 'sql_jar_connector': '/path_to_driver/sqla-client-jdbc.tar.gz', 'db_type': 'sqlanywhere' }, 'ANYWHERE': { 'connection_url': 'jdbc:sqlanywhere:host={0};database={1}', 'driver': 'sap.jdbc4.sqlanywhere.IDriver', 'sql_jar_connector': '/path_to_driver/sqla-client-jdbc.tar.gz', 'db_type': 'sqlanywhere' }, 'DERBY': { 'connection_url': 'jdbc:derby:${oozie.data.dir}/${oozie.db.schema.name}-db;create=true', 'driver': 'org.apache.derby.jdbc.EmbeddedDriver', 'db_type': 'derby' } } }; }); |