Example #1
0
def process_reports(debug, workspace, polling):
    try:
        from requests import ConnectionError
    except ImportError:
        print(
            'Python requests was not found. Please install it with: pip install requests'
        )
        sys.exit(1)
    try:
        from sqlalchemy.exc import OperationalError
    except ImportError:
        print(
            'SQLAlchemy was not found please install it with: pip install sqlalchemy'
        )
        sys.exit(1)
    setUpLogger(debug)
    configuration = _conf()
    url = '{0}/_api/v2/info'.format(
        configuration.getServerURI() if FARADAY_UP else SERVER_URL)
    with app.app_context():
        try:
            check_faraday_server(url)
            import_external_reports(workspace, polling)
        except OperationalError as ex:
            print('{0}'.format(ex))
            print(
                'Please verify database is running or configuration on server.ini!'
            )
        except ConnectionError:
            print(
                'Can\'t connect to {0}. Please check if the server is running.'
                .format(url))
Example #2
0
def main():
    """Main.

    Main function for launcher.

    """
    os.chdir(FARADAY_BASE)

    global logger, args

    logger = getLogger("launcher")

    args = getParserArgs()
    setupFolders(CONST_FARADAY_FOLDER_LIST)
    setUpLogger(args.debug)

    if not args.nodeps:
        check_dependencies_or_exit()

    printBanner()
    if args.cert_path:
        os.environ[REQUESTS_CA_BUNDLE_VAR] = args.cert_path
    checkConfiguration(args.gui)
    setConf()
    checkCouchUrl()
    checkVersion()

    check_faraday_version()

    update()
    checkUpdates()
    startFaraday()
Example #3
0
def main():
    """Main.

    Main function for launcher.

    """
    os.chdir(FARADAY_BASE)

    global logger, args

    logger = getLogger("launcher")

    args = getParserArgs()
    setupFolders(CONST_FARADAY_FOLDER_LIST)
    setUpLogger(args.debug)

    if not args.nodeps:
        check_dependencies_or_exit()

    printBanner()
    if args.cert_path:
        os.environ[REQUESTS_CA_BUNDLE_VAR] = args.cert_path
    checkConfiguration(args.gui)
    setConf()
    checkCouchUrl()
    checkVersion()

    check_faraday_version()

    update()
    checkUpdates()
    startFaraday()
Example #4
0
def init():
    """Initializes what is needed before starting.

    For now we initialize logger and arguments setup.

    """

    global args
    global logger
    logger = None

    args = getParserArgs()
    setupFolders(CONST_FARADAY_FOLDER_LIST)
    setUpLogger(args.debug)
    logger = getLogger("launcher")
Example #5
0
def init():
    """Initializes what is needed before starting.

    For now we initialize logger and arguments setup.

    """

    global args
    global logger
    logger = None

    args = getParserArgs()
    setupFolders(CONST_FARADAY_FOLDER_LIST)
    setUpLogger(args.debug)
    logger = getLogger("launcher")
Example #6
0
def main():
    """Main.

    Main function for launcher.

    """

    init()
    if checkDependencies():
        printBanner()
        logger.info("Dependencies met.")
        if args.cert_path:
            os.environ['REQUESTS_CA_BUNDLE'] = args.cert_path
        checkConfiguration()
        setConf()
        checkCouchUrl()
        setUpLogger()
        update()
        checkUpdates()
        startFaraday()
    else:
        logger.error("Dependencies not met. Unable to start Faraday.")
Example #7
0
def main():
    """Main.

    Main function for launcher.

    """

    init()
    if checkDependencies():
        printBanner()
        logger.info("Dependencies met.")
        if args.cert_path:
            os.environ['REQUESTS_CA_BUNDLE'] = args.cert_path
        checkConfiguration()
        setConf()
        checkCouchUrl()
        setUpLogger()
        update()
        checkUpdates()
        startFaraday()
    else:
        logger.error("Dependencies not met. Unable to start Faraday.")
Example #8
0
def process_reports(debug, workspace, polling):
    try:
        from requests import ConnectionError
    except ImportError:
        print('Python requests was not found. Please install it with: pip install requests')
        sys.exit(1)
    try:
        from sqlalchemy.exc import OperationalError
    except ImportError:
        print('SQLAlchemy was not found please install it with: pip install sqlalchemy')
        sys.exit(1)
    setUpLogger(debug)
    configuration = _conf()
    url = '{0}/_api/v2/info'.format(configuration.getServerURI() if FARADAY_UP else SERVER_URL)
    with app.app_context():
        try:
            check_faraday_server(url)
            import_external_reports(workspace, polling)
        except OperationalError as ex:
            print('{0}'.format(ex))
            print('Please verify database is running or configuration on server.ini!')
        except ConnectionError:
            print('Can\'t connect to {0}. Please check if the server is running.'.format(url))
Example #9
0
def main():
    os.chdir(FARADAY_BASE)
    check_alembic_version()
    check_postgresql()
    parser = argparse.ArgumentParser()
    parser.add_argument('--ssl', action='store_true', help='enable HTTPS')
    parser.add_argument('--debug', action='store_true', help='run Faraday Server in debug mode')
    parser.add_argument('--start', action='store_true', help='run Faraday Server in background')
    parser.add_argument('--stop', action='store_true', help='stop Faraday Server')
    parser.add_argument('--restart', action='store_true', help='Restart Faraday Server')
    parser.add_argument('--nodeps', action='store_true', help='Skip dependency check')
    parser.add_argument('--no-setup', action='store_true', help=argparse.SUPPRESS)
    parser.add_argument('--port', help='Overides server.ini port configuration')
    parser.add_argument('--websocket_port', help='Overides server.ini websocket port configuration')
    parser.add_argument('--bind_address', help='Overides server.ini bind_address configuration')

    f = open(server.config.VERSION_FILE)
    f_version = f.read().strip()

    parser.add_argument('-v', '--version', action='version',
                        version='Faraday v{version}'.format(version=f_version))

    args = parser.parse_args()
    setUpLogger(args.debug)

    if args.debug:
        server.utils.logger.set_logging_level(server.config.DEBUG)

    if args.restart:
        restart_server(args.port)
        sys.exit()

    if args.stop:
        if args.port:
            sys.exit(0 if stop_server(args.port) else 1)
        else:
            ports = daemonize.get_ports_running()
            if not ports:
                logger.info('Faraday Server is not running')
            exit_code = 0
            for port in ports:
                exit_code += 0 if stop_server(port) else 1
            sys.exit(exit_code)

    else:
        if not args.port:
            args.port = '5985'


    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    result = sock.connect_ex((args.bind_address or server.config.faraday_server.bind_address, int(args.port or server.config.faraday_server.port)))

    if is_server_running(args.port) and result == 0:
        sys.exit(1)

    if result == 0:
        logger.error("Faraday Server port in use. Check your processes and run the server again...")
        sys.exit(1)

    # Overwrites config option if SSL is set by argument
    if args.ssl:
        server.config.ssl.enabled = 'true'

    if not args.no_setup:
        setup_environment(not args.nodeps)

    if args.port:
        server.config.faraday_server.port = args.port

    if args.bind_address:
        server.config.faraday_server.bind_address = args.bind_address

    if args.websocket_port:
        server.config.faraday_server.websocket_port = args.websocket_port

    if args.start:
        # Starts a new process on background with --ignore-setup
        # and without --start nor --stop
        devnull = open('/dev/null', 'w')
        params = ['/usr/bin/env', 'python2.7', os.path.join(server.config.FARADAY_BASE, __file__), '--no-setup']
        arg_dict = vars(args)
        for arg in arg_dict:
            if arg not in ["start", "stop"] and arg_dict[arg]:
                params.append('--'+arg)
                if arg_dict[arg] != True:
                    params.append(arg_dict[arg])
        logger.info('Faraday Server is running as a daemon')
        subprocess.Popen(params, stdout=devnull, stderr=devnull)

    elif not args.start:
        run_server(args)
Example #10
0
def main():
    os.chdir(FARADAY_BASE)
    check_alembic_version()
    check_postgresql()
    parser = argparse.ArgumentParser()
    parser.add_argument('--ssl', action='store_true', help='enable HTTPS')
    parser.add_argument('--debug',
                        action='store_true',
                        help='run Faraday Server in debug mode')
    parser.add_argument('--start',
                        action='store_true',
                        help='run Faraday Server in background')
    parser.add_argument('--stop',
                        action='store_true',
                        help='stop Faraday Server')
    parser.add_argument('--restart',
                        action='store_true',
                        help='Restart Faraday Server')
    parser.add_argument('--nodeps',
                        action='store_true',
                        help='Skip dependency check')
    parser.add_argument('--no-setup',
                        action='store_true',
                        help=argparse.SUPPRESS)
    parser.add_argument('--port',
                        help='Overides server.ini port configuration')
    parser.add_argument(
        '--websocket_port',
        help='Overides server.ini websocket port configuration')
    parser.add_argument('--bind_address',
                        help='Overides server.ini bind_address configuration')

    f = open(server.config.VERSION_FILE)
    f_version = f.read().strip()

    parser.add_argument('-v',
                        '--version',
                        action='version',
                        version='Faraday v{version}'.format(version=f_version))

    args = parser.parse_args()
    setUpLogger(args.debug)

    if args.debug:
        server.utils.logger.set_logging_level(server.config.DEBUG)

    if args.restart:
        restart_server(args.port)
        sys.exit()

    if args.stop:
        if args.port:
            sys.exit(0 if stop_server(args.port) else 1)
        else:
            ports = daemonize.get_ports_running()
            if not ports:
                logger.info('Faraday Server is not running')
            exit_code = 0
            for port in ports:
                exit_code += 0 if stop_server(port) else 1
            sys.exit(exit_code)

    else:
        if not args.port:
            args.port = '5985'

    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    result = sock.connect_ex(
        (args.bind_address or server.config.faraday_server.bind_address,
         int(args.port or server.config.faraday_server.port)))

    if is_server_running(args.port) and result == 0:
        sys.exit(1)

    if result == 0:
        logger.error(
            "Faraday Server port in use. Check your processes and run the server again..."
        )
        sys.exit(1)

    # Overwrites config option if SSL is set by argument
    if args.ssl:
        server.config.ssl.enabled = 'true'

    if not args.no_setup:
        setup_environment(not args.nodeps)

    if args.port:
        server.config.faraday_server.port = args.port

    if args.bind_address:
        server.config.faraday_server.bind_address = args.bind_address

    if args.websocket_port:
        server.config.faraday_server.websocket_port = args.websocket_port

    if args.start:
        # Starts a new process on background with --ignore-setup
        # and without --start nor --stop
        devnull = open('/dev/null', 'w')
        params = [
            '/usr/bin/env', 'python2.7',
            os.path.join(server.config.FARADAY_BASE, __file__), '--no-setup'
        ]
        arg_dict = vars(args)
        for arg in arg_dict:
            if arg not in ["start", "stop"] and arg_dict[arg]:
                params.append('--' + arg)
                if arg_dict[arg] != True:
                    params.append(arg_dict[arg])
        logger.info('Faraday Server is running as a daemon')
        subprocess.Popen(params, stdout=devnull, stderr=devnull)

    elif not args.start:
        run_server(args)