def __init__(self, node_type=None, conf_path=None, opts=None): ''' Set up main class ''' if conf_path is None: conf_path = '/etc/cauthon' if opts: self.opts = opts else: self.opts = cauthon.config.load_config( '{0}/cauthon'.format(conf_path), ) self.node_type = node_type self.master_opts = salt.config.master_config('{0}/master'.format(conf_path)) self.minion_opts = salt.config.minion_config('{0}/minion'.format(conf_path)) header_dict = {} header_dict['User-agent'] = self.opts.get('user-agent', DEFAULT_AGENT) self.session = requests.Session() self.session.auth = self.opts.get('auth', None) self.session.verify = self.opts.get('verify_ssl', True) self.session.headers.update(header_dict) cookie_jar = self.opts.get( 'cookie_jar', '/var/cache/cauthon/cookies.txt' ) self.session.cookies = cookielib.LWPCookieJar(cookie_jar) if not os.path.isfile(cookie_jar): self.session.cookies.save() self.session.cookies.load() self.proxies = self.opts.get('proxies', {}) self.base_dir = self.opts.get('base_dir', '/var/cache/cauthon/sites') self.db = Database() # pylint: disable=invalid-name self.db.connect(self.opts.get('db_driver', 'sqlite3')) self.sitemap_load() self.filters = Filters()