Skip to main content

Awspice is a wrapper tool of Boto3 library to list inventory and manage your AWS infrastructure The objective of the wrapper is to abstract the use of AWS, being able to dig through all the data of our account. It belongs to ElevenPaths, Telefonica.

Project description

Version PyPI - Python Version Read the Docs Travis-CI Codacy

Table of content (Full doc in ReadTheDocs) :

What is Awspice?

Is a wrapper of Boto3 library to list inventory and manage your AWS infrastructure The objective of the wrapper is to make easier some common tasks in AWS, being able to dig through different regions and accounts.

Awspice make it easy to:

  • List all your EC2 instances for multiple regions and accounts

  • Get deployed infraestructure behind a Load Balancer.

  • List all instances with exposed critical ports like 22 or 3389

  • Get info about all certificates of your account/s

  • Find exposed S3 buckets


Installation

pip install awspice

Configuration

The client is built and configured using awspice.connect(). This method indicates the type of authentication and region on which you are going to work.

import awspice

# Region: eu-west-1 | Profile: Default
aws = awspice.connect()

# Using profiles
aws = awspice.connect(region='us-west-2', profile='dev_profile')
# Using access keys
aws = awspice.connect('us-west-2', access_key='AKIA***********', secret_key='/HR$4************')

Usage

Example: Get balancer and instances behind a domain.

aws = awspice.connect()

elb = aws.service.elb.get_loadbalancer_by('domain', 'donalddumb.com')
for elb_instance in elb['Instances']:
  instance = aws.service.ec2.get_instance_by('id', elb_instance['InstanceId'])

Example: List all unused volumes

all_regions = aws.service.ec2.get_regions()
volumes = awsmanager.service.ec2.get_volumes_by('status', 'available', regions=all_regions)

Example: Search instance in all accounts and regions by Public IP

profiles = aws.service.ec2.get_profiles()
regions = aws.service.ec2.get_regions()

for profile in profiles:
    aws.service.ec2.change_profile(profile)

    instance = aws.service.ec2.get_instance_by('publicip', '35.158.163.235', regions=regions)

    if instance:
        print 'Instance found: %s (Account: %s, Region: %s)' % (instance['InstanceId'], instance['RegionName'], instance['Authorization']['Value'])
        break

Project details


Download files

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

Source Distribution

awspice-1.7.2.tar.gz (28.6 kB view details)

Uploaded Source

Built Distribution

awspice-1.7.2-py2-none-any.whl (43.5 kB view details)

Uploaded Python 2

File details

Details for the file awspice-1.7.2.tar.gz.

File metadata

  • Download URL: awspice-1.7.2.tar.gz
  • Upload date:
  • Size: 28.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.16

File hashes

Hashes for awspice-1.7.2.tar.gz
Algorithm Hash digest
SHA256 785f1e8819c21322d7e0745ae10079337be0ac21ce41a4994be8e430f87c95cb
MD5 6e0731d215b319825fe69d8ddd672767
BLAKE2b-256 2afcc5b92b0e2351a21814861481d9e66ef6de39c7dd40ac95fd9bae47594f10

See more details on using hashes here.

File details

Details for the file awspice-1.7.2-py2-none-any.whl.

File metadata

  • Download URL: awspice-1.7.2-py2-none-any.whl
  • Upload date:
  • Size: 43.5 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.16

File hashes

Hashes for awspice-1.7.2-py2-none-any.whl
Algorithm Hash digest
SHA256 74992e245f71aaad58e277b1a90b9e7c083586c3ab57c649d309bd01ad91eb1a
MD5 61c5d3ead142761c8a04f877cc840206
BLAKE2b-256 f3801c344b4027f98d6c738f1caeaf15f45996be3a0075b35cdca392f1985479

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page