Example #1
0
def download_report(report):
    res = requests.get(report['url'], timeout=600)
    if res.status_code == 200:
        s3_put(opts=dict(Body=res.content,
                         Key=to_hash(report['name']),
                         Bucket=os.getenv('S3_BUCKET'),
                         ContentType=report['content_type']),
               encrypt=False)
Example #2
0
def download_report(report):
    res = requests.get(report['url'], timeout=600)
    if res.status_code==200:
        s3_put(opts=dict(Body=res.content,
                        Key=to_hash(report['name']),
                        Bucket=os.getenv('S3_BUCKET'),
                        ContentType=report['content_type']),
                        encrypt=False)
Example #3
0
def fetch_report(report):
    pc = PlanMill(api_server=os.getenv('PLANMILL_URI'),
            api_user_id=os.getenv('PLANMILL_USER'),
            api_auth_key=os.getenv('PLANMILL_TOKEN'),)
    params = report['params'] or {}
    kw = {}
    res = pc.get_report(report['name'], params=params, **kw)

    # convert json to csv
    text = json_to_csv(res)

    # store
    s3_put(opts=dict(Body=text, Key=to_hash(report['name']), Bucket=os.getenv('S3_BUCKET'), ContentType=report['content_type']),
            encrypt=False)
Example #4
0
def fetch_report(report):
    pc = PlanMill(
        api_server=os.getenv('PLANMILL_URI'),
        api_user_id=os.getenv('PLANMILL_USER'),
        api_auth_key=os.getenv('PLANMILL_TOKEN'),
    )
    params = report['params'] or {}
    kw = {}
    res = pc.get_report(report['name'], params=params, **kw)

    # convert json to csv
    text = json_to_csv(res)

    # store
    s3_put(opts=dict(Body=text,
                     Key=to_hash(report['name']),
                     Bucket=os.getenv('S3_BUCKET'),
                     ContentType=report['content_type']),
           encrypt=False)
Example #5
0
def report(request, name):
    ct = request.GET.get('ct', None) # optional ContentType override
    res = s3_get(opts=dict(Key=to_hash(name), Bucket=os.getenv('S3_BUCKET')))
    return HttpResponse(res['Body'].read(), content_type=ct or res['ContentType'])
Example #6
0
def report(request, name):
    ct = request.GET.get('ct', None)  # optional ContentType override
    res = s3_get(opts=dict(Key=to_hash(name), Bucket=os.getenv('S3_BUCKET')))
    return HttpResponse(res['Body'].read(),
                        content_type=ct or res['ContentType'])