Skip to main content

Ado Wrapper

This is a Python Package which works as an interface to the Azure DevOps API

It is essentially a wrapper for the (horrible to work with) ADO API, and supports OOP principals.

Any resource can be fetched by calling the <resource>.get_by_id() function.

It also includes a solution for managing resources created by this script, which is extremely useful for testing the creation of random resources. To delete all resources created by this, run the main module with the "--delete-everything" flag.

If you're reading this readme not from the code, here's a link to the github repo

Setup

It's recommended you create your own ADO organisation and project for testing/development, this is easy and means that
you won't delete anything or cause problems, but may mean you're missing features such as certain teams or repos.

To test/add to this locally, you'll need to create a few files:

For tests, add tests/test_data.txt, which contains:

ADO Organisation name  
ADO Project name (e.g. MyProject)  
ADO Secondary project name (e.g. can be empty for your testing, so just an empty line unless you're testing the client)  
Email: e.g. first.last@company.com  
Pat token (with good perms), https://dev.azure.com/<ORG>/_usersSettings/tokens  
Existing User ID, print(AdoUser.get_by_email(ado_client, "first.last@company.com").origin_id)  
Existing user descriptor, print(AdoUser.get_by_email(ado_client, "first.last@company.com").descriptor_id)  

For development, I recommend adding a script.py with this boiler plate:

with open("credentials.txt", "r") as file:
    email, ado_access_token, ado_org_name, ado_project = file.read().split("\n")

from ado_wrapper import AdoClient, Secret
from ado_wrapper.resources import *
from ado_wrapper.errors import *
ado_client = AdoClient(email, ado_access_token, ado_org_name, ado_project)

And then fill credentials.txt with email, PAT, org, project on different lines.

Commands Used To Ensure Quality

pylint .
mypy . --strict
flake8 --ignore=E501,E126,E121,W503,W504,PBP --exclude=script.py
bandit -c pyproject.toml -r .
ruff check
black . --line-length 140
python3.11 -m pytest tests/ -vvvv -s

Metadata

Release files for ado_wrapper 1.47.0

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

Source distribution (sdist)

Source distribution for ado_wrapper 1.47.0
File Size Uploaded
ado_wrapper-1.47.0.tar.gz 106.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ado_wrapper 1.47.0
File Interpreter ABI Platform
ado_wrapper-1.47.0-py3-none-any.whl Python 3 none any Details

Total release size: 242.2 kB

Release files / ado_wrapper-1.47.0.tar.gz

Download URL ado_wrapper-1.47.0.tar.gz
Size 106.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7c06686c97f12fb30e25a45e4b2df4db0a3a58f27eea5ba3b5aba6622104974c
BLAKE2b-256 checksum
How to use checksums
f311434de6c895b6a4ae0cbfb9aa7c62093e5a874fd4e497e986b012aa51d099
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.11.11 Darwin/24.5.0

Release files / ado_wrapper-1.47.0-py3-none-any.whl

Download URL ado_wrapper-1.47.0-py3-none-any.whl
Size 135.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
052f36469252c1a2b27df21671309ec3953af677ccbe3de23caedfd8301787e3
BLAKE2b-256 checksum
How to use checksums
c01d57fa0284dd00f18b7c872357515ac488bcfcc27fe4ad3cb4389c2cc65d7a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.11.11 Darwin/24.5.0

Release history Release notifications | RSS feed

This release

1.47.0 This release

2 release files

1.42.1

2 release files

1.42.0

2 release files

1.41.0

2 release files

1.39.0

2 release files

1.38.0

2 release files

1.37.0

2 release files

1.36.0

2 release files

1.35.0

2 release files

1.34.0

2 release files

1.33.0

2 release files

1.32.0

2 release files

1.28.0

2 release files

1.27.0

2 release files

1.26.0

2 release files

1.25.0

2 release files

1.18.0

2 release files

1.17.0

2 release files

1.16.0

2 release files

1.15.0

2 release files

1.14.0

2 release files

1.11.0

2 release files

1.10.0

2 release files

1.9.0

2 release files

1.8.5

2 release files

1.8.4

2 release files

1.8.3

2 release files

1.8.2

2 release files

1.8.1

2 release files

1.8.0

2 release files

1.7.1

2 release files

1.7.0

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.5.0

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.9

2 release files

1.2.8

2 release files

1.2.7

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.3

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

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