Ketouem / Flask Boto3
Licence: mit
Flask extension that ties boto3 connectors to the application context
Stars: ✭ 27
Programming Languages
python
139335 projects - #7 most used programming language
Projects that are alternatives of or similar to Flask Boto3
Yesterday I Learned
Brainfarts are caused by the rupturing of the cerebral sphincter.
Stars: ✭ 50 (+85.19%)
Mutual labels: aws, flask
Shorty
🔗 A URL shortening service built using Flask and MySQL
Stars: ✭ 78 (+188.89%)
Mutual labels: aws, flask
Cloudmagick
CloudMagick is a serverless application which provides a dynamic image transformation like the small light module of apache2
Stars: ✭ 11 (-59.26%)
Mutual labels: aws
Step Functions Demo
This is a demo project, created as a part of the blog post. The project uses serverless for deployments.
Stars: ✭ 15 (-44.44%)
Mutual labels: aws
Localstack
💻 A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline!
Stars: ✭ 37,724 (+139618.52%)
Mutual labels: aws
Awslib scala
An idiomatic Scala wrapper around the AWS Java SDK
Stars: ✭ 20 (-25.93%)
Mutual labels: aws
Lambda Proxy Router
A simple router for AWS Lambda Proxy Functions
Stars: ✭ 14 (-48.15%)
Mutual labels: aws
Neurodo
A web tool for the analysis of cognitive dysfunction in patient journaling during Schizophrenia clinical drug trials
Stars: ✭ 14 (-48.15%)
Mutual labels: flask
System dashboard
Boilerplate project - Cross-Platform System Dashboard using Flask, React, Mobx and Web-Workers
Stars: ✭ 13 (-51.85%)
Mutual labels: flask
Os
This is the software framework for an OPSORO robot, to be used in conjunction with Ono2 or OPSORO grid and OPSOROHAT.
Stars: ✭ 11 (-59.26%)
Mutual labels: flask
Aws Auto Terminate Idle Emr
AWS Auto Terminate Idle AWS EMR Clusters Framework is an AWS based solution using AWS CloudWatch and AWS Lambda using a Python script that is using Boto3 to terminate AWS EMR clusters that have been idle for a specified period of time.
Stars: ✭ 21 (-22.22%)
Mutual labels: aws
Aws Extend Switch Roles
Extend your AWS IAM switching roles by Chrome extension, Firefox add-on, or Edge add-on
Stars: ✭ 862 (+3092.59%)
Mutual labels: aws
Caprover
Scalable PaaS (automated Docker+nginx) - aka Heroku on Steroids
Stars: ✭ 7,964 (+29396.3%)
Mutual labels: aws
Ecsctl
Command-line tool for managing AWS Elastic Container Service and Projects to run on it.
Stars: ✭ 15 (-44.44%)
Mutual labels: aws
flask-boto3
Flask extension that ties boto3 connectors to the application context. To be used with Python 3.6+.
Install
-
Via the cheeseshop
$ pip install flask-boto3
-
Locally with Pipenv
$ git clone [email protected]:Ketouem/flask-boto3.git $ cd flask-boto3 flask-boto3 $ pipenv install -e .
How-to
The main class flask_boto3.Boto3
takes a Flask application as its contructor's parameter:
from flask import Flask
from flask_boto3 import Boto3
app = Flask(__name__)
app.config['BOTO3_SERVICES'] = ['s3']
boto_flask = Boto3(app)
Then boto3
's clients and resources will be available as properties within the application context:
>>> with app.app_context():
print(boto_flask.clients)
print(boto_flask.resources)
{'s3': <botocore.client.S3 object at 0x..>}
{'s3': s3.ServiceResource()}
Configuration
flask-boto3 uses several keys from a Flask configuration objects to customize its behaviour:
-
BOTO3_ACCESS_KEY
&BOTO3_SECRET_KEY
: holds the AWS credentials, ifNone
the extension will rely onboto3
's default credentials lookup. -
BOTO3_REGION
: holds the region that will be used for all connectors. -
BOTO3_PROFILE
: holds the AWS profile. -
BOTO3_SERVICES
: holds, as a list, the name of the AWS resources you want to use (e.g.['sqs', 's3']
). -
BOTO3_OPTIONAL_PARAMS
: useful when you need to pass additional parameters to the connectors (e.g. for testing purposes), the format is adict
where the top-level keys are the name of the services you're using and for each the value is adict
containing to keysargs
(contains the parameters astuple
) andkwargs
(contains the parameters as adict
when they should be passed as keyword arguments).
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].