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.17.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aws_org_client-0.0.17-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file aws_org_client-0.0.17.tar.gz.

File metadata

  • Download URL: aws_org_client-0.0.17.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.13.1 Darwin/23.6.0

File hashes

Hashes for aws_org_client-0.0.17.tar.gz
Algorithm Hash digest
SHA256 e24cfdca0ba732564c77a3dfcc751adc2c12247042fe06a84a09bbc8e997d013
MD5 44205dc666b63084f15b862521339291
BLAKE2b-256 8013ffe3d5577d4d3e06fb3f5871459471ee32064be82acdbb63e4868abf4ac1

See more details on using hashes here.

File details

Details for the file aws_org_client-0.0.17-py3-none-any.whl.

File metadata

  • Download URL: aws_org_client-0.0.17-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.13.1 Darwin/23.6.0

File hashes

Hashes for aws_org_client-0.0.17-py3-none-any.whl
Algorithm Hash digest
SHA256 50f32884380dc1404c476d8419a92463bde9f331299907278fe8007c3ef54dc5
MD5 371d35545f41300e8f24a1508e8622ef
BLAKE2b-256 b1d0e618b6dbe7e02b0be8c7ffe0f2d21b3f900c9471d81152e0135774e17dbb

See more details on using hashes here.

Supported by

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