def init_app(app) -> None: """Configure an application instance.""" config = get_application_config(app) config.setdefault('CREDENTIALS_ROLE', 'arxiv-fulltext') config.setdefault( 'CREDENTIALS_URL', 'http://169.254.169.254/latest/meta-data/iam/security-credentials')
def init_app(app: object = None) -> None: """Set default configuration parameters for an application instance.""" config = get_application_config(app) config.setdefault('CLOUDWATCH_ENDPOINT', 'https://monitoring.us-east-1.amazonaws.com') config.setdefault('AWS_REGION', 'us-east-1') config.setdefault('CLOUDWATCH_VERIFY', 'true')
def get_session(app: object = None) -> CredentialsSession: """Create a new :class:`.CredentialsSession`.""" config = get_application_config(app) if bool(config.get('INSTANCE_CREDENTIALS')): role = config.get('CREDENTIALS_ROLE', "arxiv-fulltext") endpoint = config.get( 'CREDENTIALS_URL', 'http://169.254.169.254/latest/meta-data/iam/security-credentials') return InstanceCredentialsSession(endpoint, role, config) return PassthroughCredentialsSession('', '', config)
def get_session(app: object = None) -> MetricsSession: """Get a new metrics session.""" config = get_application_config(app) try: access_key, secret_key, token = credentials.get_credentials() except IOError as e: access_key, secret_key, token = None, None, None logger.debug('failed to load instance credentials: %s', str(e)) if access_key is None or secret_key is None: access_key = config.get('AWS_ACCESS_KEY_ID', None) secret_key = config.get('AWS_SECRET_ACCESS_KEY', None) token = config.get('AWS_SESSION_TOKEN', None) endpoint_url = config.get('CLOUDWATCH_ENDPOINT', None) region_name = config.get('AWS_REGION', 'us-east-1') verify = bool(config.get('CLOUDWATCH_VERIFY', 'true')) return MetricsSession(endpoint_url, access_key, secret_key, token, region_name, verify=verify)
def get_session(app: object = None) -> FullTextStoreSession: config = get_application_config(app) creds = credentials.current_session() try: access_key, secret_key, token = creds.get_credentials() except IOError as e: access_key, secret_key, token = None, None, None logger.debug('failed to load instance credentials: %s', str(e)) if access_key is None or secret_key is None: access_key = config.get('AWS_ACCESS_KEY_ID', None) secret_key = config.get('AWS_SECRET_ACCESS_KEY', None) token = config.get('AWS_SESSION_TOKEN', None) endpoint_url = config.get('DYNAMODB_ENDPOINT', None) region_name = config.get('AWS_REGION', 'us-east-1') version = config.get('VERSION', "0.0") verify = bool(config.get('DYNAMODB_VERIFY', "true")) return FullTextStoreSession(endpoint_url, access_key, secret_key, token, region_name, verify=verify, version=version)
def get_session(app: object = None) -> RetrievePDFSession: """Create a new :class:`.RetrievePDFSession`.""" config = get_application_config() whitelist = config.get('SOURCE_WHITELIST', 'arxiv.org,export.arxiv.org') return RetrievePDFSession(whitelist.split(','))
def init_app(app: object = None) -> None: """Configure an application instance.""" config = get_application_config(app) config.setdefault('SOURCE_WHITELIST', 'arxiv.org,export.arxiv.org')
def get_session(app: object = None) -> RequestExtractionSession: """Get a new extraction session.""" endpoint = get_application_config(app).get('EXTRACTION_ENDPOINT') if not endpoint: raise RuntimeError('EXTRACTION_ENDPOINT not set') return RequestExtractionSession(endpoint)
def get_session(app: object = None) -> FullTextSession: """Generate a new configured :class:`.FullTextSession`.""" config = get_application_config(app) image = config.get('FULLTEXT_DOCKER_IMAGE', 'arxiv/fulltext') return FullTextSession(image)
def init_app(app) -> None: """Configure an application instance.""" config = get_application_config(app) config.setdefault('FULLTEXT_DOCKER_IMAGE', 'arxiv/fulltext')