예제 #1
0
    def __init__(self, project_id):
        Env.read_envfile('.env')

        debug('Initializing')

        self.project_id = project_id
        self.gitlab = gitlab.Gitlab(env('GITLAB_ENDPOINT'),
                                    env('GITLAB_TOKEN'))
예제 #2
0
def cli():
    """Point TCL Slack bot"""
    logging.basicConfig(format='%(asctime)s - %(levelname)s - %(message)s',
                        datefmt='%d/%m/%Y %H:%M:%S',
                        stream=sys.stdout)

    logging.getLogger().setLevel(logging.INFO)

    logging.info('Initializing')

    Env.read_envfile('.env')
예제 #3
0
    def test_upload_non_interactive(self):
        pkgname = 'new_pkg'
        env = Env.read_envfile()

        self.assertTrue(
            os.environ.get('KECHAIN_URL'),
            "KECHAIN_URL is not set in environment, cannot perform this test")

        with temp_chdir() as d:
            runner = CliRunner()
            result = runner.invoke(kecpkg, ['new', pkgname, '--no-venv'])
            package_dir = get_package_dir(pkgname)
            self.assertTrue(os.path.exists(package_dir))

            os.chdir(package_dir)

            result = runner.invoke(kecpkg, ['build', pkgname])
            self.assertEqual(result.exit_code, 0)
            self.assertExists(os.path.join(package_dir, 'dist'))
            pkgpath = os.path.join(package_dir, 'dist',
                                   '{}-0.0.1-py3.5.kecpkg'.format(pkgname))
            self.assertExists(pkgpath)

            result = runner.invoke(
                kecpkg,
                [
                    'upload',
                    pkgname,
                    '--url',
                    os.environ.get('KECHAIN_URL'),
                    '--token',
                    os.environ.get('KECHAIN_TOKEN'),
                    '--scope-id',
                    os.environ.get('KECHAIN_SCOPE_ID'),
                    '--kecpkg',
                    pkgpath,
                    '--store'  # store the service_id in the settings (for teardown)
                ])
            self.assertEqual(result.exit_code, 0)

            # teardown the just uploaded service
            from kecpkg.settings import load_settings
            settings = load_settings(package_dir=get_package_dir(pkgname))

            from pykechain import get_project
            scope = get_project(url=os.environ.get('KECHAIN_URL'),
                                token=os.environ.get('KECHAIN_TOKEN'),
                                scope_id=os.environ.get('KECHAIN_SCOPE_ID'))
            service = scope.service(pk=settings.get('service_id'))
            service.delete()
예제 #4
0
from downloader.PersonalRecommendation import PersonalRecommendation
from downloader.FileAccessor import FileAccessor
from datetime import datetime
import logging
import sys
import os
import schedule
import time
import threading

app = Flask(__name__)
env = Env(HOST=dict(cast=str, default='0.0.0.0'),
          HTTP_PORT=dict(cast=int, default='5000'),
          DATA_DIR=dict(cast=str, default='data'),
          DOWNLOADS_PER_DAY=dict(cast=int, default='10'))
env.read_envfile()

logger = logging.getLogger()
logger.setLevel(logging.DEBUG)

handler = logging.StreamHandler(sys.stdout)
handler.setLevel(logging.DEBUG)
formatter = logging.Formatter(
    '%(asctime)s-%(name)s-%(levelname)s: %(message)s')
handler.setFormatter(formatter)
logger.addHandler(handler)

raw_file_accessor = FileAccessor(env.str('DATA_DIR'), 'raw', 'zip')
patched_file_accessor = FileAccessor(env.str('DATA_DIR'), 'patched', 'zip')
load_protection = LoadProtection(
    env.str('DATA_DIR'), max_downloads_per_day=env.int('DOWNLOADS_PER_DAY'))
예제 #5
0
# This Python file uses the following encoding: utf-8

import os

from envparse import Env

basedir = os.path.abspath(os.path.dirname(__file__))
env = Env()
env_file = os.environ.get('ENV', 'dev') + ".env"
env_file_path = os.path.join(basedir, 'conf', '.env_files', env_file)
env.read_envfile(env_file_path)


def get_path(*parts):
    return os.path.join(basedir, *parts)


class Config:
    NAME = env.str("NAME", default="hello_world")

    ENV = env.str("ENV", default="dev")
    DEBUG = env.bool("DEBUG", default=True)
    TESTING = env.bool("TESTING", default=False)
    SECRET_KEY = env.str("FLASK_SECRET_KEY", default="secret_key")

    # DB
    POSTGRES_USER = env.str("POSTGRES_USER", default="")
    POSTGRES_PASSWORD = env.str("POSTGRES_PASSWORD", default="")
    POSTGRES_DB_HOST = env.str("POSTGRES_DB_HOST", default="localhost")
    POSTGRES_DB_PORT = env.int("POSTGRES_DB_PORT", default=5433)
    POSTGRES_DB = env.str("POSTGRES_DB", default="helloworld_db")
예제 #6
0
#! /usr/bin/env python

import json
import sys
from warnings import catch_warnings

import click
from envparse import Env
from github.MainClass import DEFAULT_BASE_URL

from .github_api import GithubAPI

BASE_ENV_FILE_NAME = 'gh_chk_in_vars'

with catch_warnings(record=True):
    Env.read_envfile(f'/etc/{BASE_ENV_FILE_NAME}')
    Env.read_envfile(f'~/.config/.{BASE_ENV_FILE_NAME}')
    Env.read_envfile(f'~/.{BASE_ENV_FILE_NAME}')
    Env.read_envfile(f'.{BASE_ENV_FILE_NAME}')
    Env.read_envfile()

ENV_VAR_PREFIX = 'GH_CHK_IN_'
ENV_VAR_TMPL = f'{ENV_VAR_PREFIX}{{var_name}}'


@click.group()
@click.option('--github-url',
              default=DEFAULT_BASE_URL,
              envvar=ENV_VAR_TMPL.format(var_name='GITHUB_URL'))
@click.option('--private-key-file',
              prompt=True,
예제 #7
0
Generated by 'django-admin startproject' using Django 1.10.5.

For more information on this file, see
https://docs.djangoproject.com/en/1.10/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.10/ref/settings/
"""

import os
from os.path import expanduser
from envparse import Env

env_file = expanduser("~") + os.sep + '.roller_env'
env = Env()
env.read_envfile(env_file)
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.10/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!

SECRET_KEY = env('ROLLER_SECRET_KEY')
DBPASSWORD = env('ROLLER_DB_PASSWORD')
DBNAME = env('ROLLER_DB_NAME')
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = []
예제 #8
0
#! /usr/bin/env python

from datetime import datetime, timedelta
from warnings import catch_warnings

import click
from envparse import Env

import urllib3

from . import manager as lq_mgr

urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

with catch_warnings(record=True):
    Env.read_envfile('~/.liqpay_secrets')
    Env.read_envfile()

DATE_FORMAT = '%Y-%m-%d'

ENV_VAR_PREFIX = 'LQ_PAY_'
ENV_VAR_TMPL = '{prefix}{{var_name}}'.format(prefix=ENV_VAR_PREFIX)


def validate_date(ctx, param, value):
    return datetime.strptime(value, DATE_FORMAT)


def print_api_result(result_obj):
    click.echo(result_obj)
    result = result_obj['result']
예제 #9
0
#! /usr/bin/env python

from pathlib import Path
from warnings import catch_warnings

from envparse import Env

with catch_warnings(record=True):
    #Env.read_envfile(Path('..'))
    Env.read_envfile()

env = Env()

server_port = env('PORT', cast=int, default=8080)

app_id = env('GITHUB_APP_ID', cast=int)
install_id = env('GITHUB_INSTALL_ID', cast=int)
private_key_path = env('GITHUB_PRIVATE_KEY_PATH', default=None)
private_key = env('GITHUB_PRIVATE_KEY', default=None)

# oauth:
client_id = env('GITHUB_OAUTH_CLIENT_ID')
client_secret = env('GITHUB_OAUTH_CLIENT_SECRET')

gh_auth_url_tmpl = f'https://github.com/login/oauth/authorize?client_id={client_id}&redirect_uri=https%3A%2F%2F{{app_domain}}%2Flogin%2Foauth'
예제 #10
0
파일: run.py 프로젝트: EpocDotFr/titanic
def run(drill):
    logging.basicConfig(
        format='%(asctime)s - %(levelname)s - %(message)s',
        datefmt='%d/%m/%Y %H:%M:%S',
        stream=sys.stdout
    )

    logging.getLogger().setLevel(logging.INFO)

    Env.read_envfile('.env')

    survivors = env('SURVIVORS', cast=list, subcast=str)

    smtp_login = env('SMTP_LOGIN')
    smtp_password = env('SMTP_PASSWORD')
    smtp_host = env('SMTP_HOST')
    smtp_port = env('SMTP_PORT')
    smtp_tls = env.bool('SMTP_TLS', default=False)

    if drill:
        debug('[Drill mode]')

    try:
        sank_file = env('SIREN')+'.sank'
        
        if os.path.exists(sank_file):
            raise Exception('Titanic already sank, aborting')

        debug('Getting Titanic\'s status...')
        
        titanic = get_titanic(drill)
        
        debug('Checking Titanic\'s status...')

        if titanic['radie']:
            since = arrow.get(titanic['last_legal_update']).format('MMM, D YYYY')

            debug('Titanic sunk! {} isn\'t no more since {}!'.format(titanic['names']['best'], since))
            debug('There\'s {} survivors to contact.'.format(len(survivors)))
            
            debug('Sending telegrams to the survivors...')

            envelope = Envelope(
                from_addr=(smtp_login, 'The Titanic'),
                to_addr=survivors,
                subject='Titanic sunk!',
                html_body="""<h1>Ohmy, Titanic sunk!</h1>
                <p>There it is. {company} isn\'t, officially since <b>{since}</b>.</p>
                <p style="text-align: center"><img src="https://media.giphy.com/media/hmxZRW8mhs4ak/giphy.gif"></p>
                <p>Thank you all.</p>
                <hr>
                <p><small>This email was automatically sent by the <a href="https://github.com/EpocDotFr/titanic">Titanic</a>. Please don\'t reply.</small></p>""".format(company=titanic['names']['best'], since=since)
            )

            envelope.send(smtp_host, login=smtp_login, password=smtp_password, port=smtp_port, tls=smtp_tls)

            debug('Telegrams sent successfully!')

            open(sank_file, 'a').close()
        else:
            debug('Titanic still floating')
    except Exception as e:
        debug('  > {}'.format(e), err=True)
    def __init__(self):
        Env.read_envfile('.env')

        debug('Initializing')
예제 #12
0
from envparse import Env


env = Env(
    GITHUB_TOKEN=str,
    GITHUB_USERS=str,
    GITHUB_ORGS=str,
    DEBUG=dict(type=bool, default=False),
)

env.read_envfile()