Skip to main content
Yanked

This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Consider using release 0.1.1 instead.
Reason given by maintainers: Not ready

AWS Data Tools

An set of opinioned (but flexible) Python libraries for querying and transforming data from various AWS APIs, as well as a CLI interface.

This is in early development.

Data Types and Sources

The goal of this package is to provide consistent, enriched schemas for data from both raw API calls and data from logged events. We should also be able to unwrap and parse data from messaging and streaming services like SNS, Kinesis, and EventBridge.

Here are some examples:

  • Query Organizations APIs to build consistent, denormalized models of organizations
  • Validate and enrich data from CloudTrail log events
  • Parse S3 and ELB access logs into JSON

This initial release only contains support for managing data from AWS Organizations APIs.

The following table shows what kinds of things may be supported in the future:

Library Name Description Data Type Data Sources Supported
organizations Organization and OU hierarchy, policies, and accounts API Organizations APIs ☑
cloudtrail Service API calls recorded by CloudTrail Log S3 / SNS / SQS / CloudWatch Logs / Kinesis / Kinesis Firehose ☐
s3 Access logs for S3 buckets Log S3 / SNS / SQS ☐
elb Access logs from Classic, Application, and Network Load Balancers Log S3 / SNS / SQS ☐
vpc_flow Traffic logs from VPCs Log S3 / CloudWatch Logs / Kinesis / Kinesis Firehose ☐
config Resource state change events from AWS Config Log S3 / SNS / SQS ☐
firehose Audit logs for Firehose delivery streams Log CloudWatch Logs / Kinesis / Kinesis Firehose ☐
ecs Container state change events Log CloudWatch Events / EventBridge ☐
ecr Repository events for stored images Log CloudWatch Events / EventBridge ☐

References:

Installing


NOTE: None of the following installation methods actually work. This is stubbed out to include possible future installation methods.


Using pip should work on any system with at least Python 3.9:

$ pip install aws-data-tools

MacOS

With homebrew:

$ brew install aws-data-tools-py

Using the pkg installer:

(This isn't how we'll want to do this. We want to bundle the application with all its dependencies, including Python itself. This probably means using pyInstaller to bundle an "app" image.)

$ LATEST=$(gh release list --repo timoguin/aws-data-tools-py | grep 'Latest' | cut -f1)
$ curl -sL https://github.com/segmentio/aws-okta/releases/download/aws-data-tools-py.pkg --output aws-data-tools-py_$LATEST.pkg
$ installer -pkg aws-data-tools.py_$LATEST.pkg -target /usr/local/bin

Windows

With chocolatey:

$ choco install aws-data-tools-py

Usage

Empty.

Testing

Organizations Data ETL

  • Bring up localstack instance (Pro) running IAM and Organizations (master account)
  • Seed instance with Organization data (OUs, accounts, policies)
  • Run script that performs ETL against data from the AWS Organizations APIs
  • Ensure generated data is the same as the seed data

Metadata

Release files for aws-data-tools 0.1.0a1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aws-data-tools 0.1.0a1
File Size Uploaded Provenance Actions
aws_data_tools-0.1.0a1.tar.gz 8.7 kB Without provenance Details for aws_data_tools-0.1.0a1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aws-data-tools 0.1.0a1
File Interpreter ABI Platform Actions
aws_data_tools-0.1.0a1-py3-none-any.whl Python 3 none any Details for aws_data_tools-0.1.0a1-py3-none-any.whl

Total release size: 17.3 kB

Release files / aws_data_tools-0.1.0a1.tar.gz

Download URL aws_data_tools-0.1.0a1.tar.gz
Size 8.7 kB
Tags Source
SHA-256 checksum
How to use checksums
8d7cdcf6c62ec1b5671a2a7aab72636b17d6f000e15c51c1daa93763b1dd9f65
BLAKE2b-256 checksum
How to use checksums
ec6f4c0cd07b3380ce88115423060f2ac3e8003e4475e7ca73b003ec80fe7b6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.6 CPython/3.9.2 Darwin/19.6.0

Release files / aws_data_tools-0.1.0a1-py3-none-any.whl

Download URL aws_data_tools-0.1.0a1-py3-none-any.whl
Size 8.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
335947db8e596afeeb730726871f6f3e6e305285fd8e0ccbd9a1b50d3c2a7437
BLAKE2b-256 checksum
How to use checksums
7e109a06ff6619f80f9b31e36b5ea8133a71084267cbb6d5729125987490b5f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.6 CPython/3.9.2 Darwin/19.6.0

Security for aws-data-tools 0.1.0a1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0a1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page