Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Intsights open-source library for some AWS resources and high level management objects for distributed backend systems

Project description

Welcome to Taco!

Taco

TL;DR

Taco is an open-source library that will help you navigate the AWS maze. You would be able to build a state of the art AWS based platform without the complexity that tends to accompany processes like this. On top of that, Taco contains CloudFormation detailed and yet simplistic templates for AWS based CI/CD process that, at the time of writing, you won't find this kind of templates anywhere else.

What is in my Taco?

  • Pythonic wrappers to essential AWS services and pythonic modules that implement high-level logic like cloud RefCounter and Mutex.
  • CI/CD instructions - Taco reveals to you how to build a CI/CD processes using AWS products by sharing detailed CloudFomation templates of CodeBuild, IAM roles, and CodePipeline.

Requirements:

Why Should You Choose Taco? BECAUSE IT IS SIMPLE!

Do you want to create new SQS and send there a message? No problem!

sqs = sqs_wrapper.SQSWrapper(aws_access_key=aws_access_key,
                             aws_secret_key=aws_secret_key,
                             region_name=region_name)
sqs_creation_config = sqs_configs.SQSCreationConfig(queue_name,
                                                    enable_dead_letter_queue=True,
                                                    force_clean_queue=False,
                                                    visibility_timeout_seconds=60)
sqs.create_queue(sqs_creation_config)
sqs.send_message(queue_name=queue_name, data=message_body, delay_seconds=delay_seconds)

WAIT! THERE IS MORE! Taco’s pythonic wrappers require exactly the same 4 parameters for initialization - Faw code lines and you have access to 4th most common AWS services:

# ---- Logger ----
logger = taco.logger.logger.get_logger(name='initialize_wrappers_samples')

wrappers_default_kwargs = {
    'logger': logger,
    'aws_access_key': aws_access_key,
    'aws_secret_key': aws_secret_key,
    'region_name': region_name
}

# SQS
sqs = sqs_wrapper.SQSWrapper(**wrappers_default_kwargs)

# S3 wrapper
s3 = s3_wrapper.S3Wrapper(**wrappers_default_kwargs)

# Auto Scaler
auto_scaler = auto_scaler_wrapper.AutoScalerWrapper(**wrappers_default_kwargs)

# DynamoDB - without auto scaler
dynamodb = dynamodb_wrapper.DynamoDBWrapper(**wrappers_default_kwargs)
dynamodb_with_auto_scaler = dynamodb_wrapper.DynamoDBWrapper(auto_scaler=auto_scaler, **wrappers_default_kwargs)

*We know your jaw just dropped, we can wait you will pick her up :)

Look beyond what you see - Documentation and More Details:

In case you want to dig a little dipper (with or without your Taco) to have a better understanding, we highly recommend you to:

  • Examine our test files and samples - These files are the place to get to know this project details.
  • Read the following blog posts (Don't worry, they do have TL; DR):
    • Taco’s pythonic Wrappers - You will understand how magnificent this open-source aws pythonic wrappers. They are like the high-level wrappers boto3 never had. Moreover, you will find logic implementations using Taco’s wrappers like
    • Taco’s CI/CD instruction - Do you use AWS services and wish to set up a catting edge CI/CD processe using CloudFomation, CodeBuild and CodePipeline ? Just read this post. Although it is a long post, we spare no details.

So Long, and Thanks for All the Fish.

Project details


Release history Release notifications

This version

0.0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for IntsightsTaco, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size IntsightsTaco-0.0.1-py2.7.egg (95.2 kB) File type Egg Python version 2.7 Upload date Hashes View hashes
Filename, size IntsightsTaco-0.0.1-py3-none-any.whl (46.4 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size IntsightsTaco-0.0.1.tar.gz (25.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page