Skip to main content

Browse and manage AWS identity and organization resources.

Project description

aws_org_client

push release documentation

pypi github pages

Contents

Overview

This project is a python package, aimed at providing a simple interface with AWS organisation & identity services.

Using boto3 clients:

  • identitystore
  • organizations
  • sso-admin

Example Usage

Setup boto session & initialise organisations client to list accounts.

  import boto3
  from aws_org_client.organizations import Organizations
  session = boto3.Session(profile_name='my_profile', region_name='my_region')
  client = Organizations()
  client.list_accounts()

Example response:

  [
    {
      "Id": "string", 
      "Arn": "string", 
      "Email": "string", 
      "Name": "string", 
      "Status": "ACTIVE", 
      "JoinedMethod": "CREATED", 
      "JoinedTimestamp": datetime.datetime(1970, 1, 1, 00, 00, 00, 000000, tzinfo=tzlocal()) 
    }
  ]

Development

Requirements

  • Install python poetry.
  • You will need a working aws profile configured in your filesystem.

Setup

Initialise a poetry environment:

  poetry shell

Install dependencies:

  poetry install

Project processes

Coverage report

run coverage report:

  poetry run coverage run -m --source=aws_org_client pytest tests
  poetry run coverage report

Linting

run pylint with:

  poetry run pylint aws_org_client
  poetry run pylint tests

Formatting

run black formatter with:

  poetry run black .

SAST

run bandit scanner:

  poetry run bandit .

Documentation

this project uses sphinx to produce a static html site; published to github pages.

github actions takes care of building the site & publishing it.

to update the files used to build documentation use:

  poetry run sphinx-apidoc --ext-autodoc -f -o docs .

include any changes to the docs directory

Build Documentation locally

you may wish to build documentation locally before publishing it.

form the project root run:

  poetry run sphinx-build docs _build

this will create directory _build in the project root where you can load html in your browser.

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

aws_org_client-0.0.15.tar.gz (8.7 kB view hashes)

Uploaded Source

Built Distribution

aws_org_client-0.0.15-py3-none-any.whl (10.7 kB view hashes)

Uploaded Python 3

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