# load environment variables in the beginning # because some modules need variables when import # for example, userManager/model.py import sys if sys.path[0].endswith("master"): sys.path[0] = sys.path[0][:-6] from flask import Flask, request # must first init loadenv from utils import tools, env # default CONFIG=/opt/docklet/local/docklet-running.conf config = env.getenv("CONFIG") tools.loadenv(config) # second init logging # must import logger after initlogging, ugly from utils.log import initlogging initlogging("docklet-master") from utils.log import logger import os import http.server, cgi, json, sys, shutil, traceback import xmlrpc.client from socketserver import ThreadingMixIn from utils import etcdlib, imagemgr from master import nodemgr, vclustermgr, notificationmgr, lockmgr, cloudmgr, jobmgr, taskmgr from utils.logs import logs from master import userManager, beansapplicationmgr, monitor, sysmgr, network, releasemgr
import os import getopt import sys, inspect this_folder = os.path.realpath(os.path.abspath(os.path.split(inspect.getfile(inspect.currentframe()))[0])) src_folder = os.path.realpath(os.path.abspath(os.path.join(this_folder,"..", "src"))) if src_folder not in sys.path: sys.path.insert(0, src_folder) from utils import tools, env config = env.getenv("CONFIG") tools.loadenv(config) masterips = env.getenv("MASTER_IPS").split(",") G_masterips = [] for masterip in masterips: G_masterips.append(masterip.split("@")[0] + ":" + str(env.getenv("MASTER_PORT"))) # must first init loadenv from utils.log import initlogging initlogging("docklet-user") from utils.log import logger from flask import Flask, request, session, render_template, redirect, send_from_directory, make_response, url_for, abort from functools import wraps from master import userManager,beansapplicationmgr, notificationmgr, lockmgr import threading,traceback from utils.model import User,db