Skip to main content

Poetry plugin to handle Azure Artifacts authentication

Project description

Poetry Azure Artifacts Plugin

Black pre-commit GitHub license PyPi versions PyPi downloads


This is a Poetry plugin that transparently takes care of authentication with Azure Artifacts feeds. This is heavily based on semgrep/poetry-codeartifact-plugin.

Usage

This plugin requires Python 3.9+ which is a bit less lenient than Poetry itself.

Install this plugin with

poetry self add poetry-azure-artifacts-plugin

or

pipx inject poetry poetry-azure-artifacts-plugin

In your pyproject.toml file, add your Azure Artifacts feed URL as a source.

[[tool.poetry.source]]
name = "ado"
url  = "https://pkgs.dev.azure.com/{organization}/_packaging/{feed}/pypi/simple/"
priority = "primary"

Now, when running poetry install, or poetry lock, Poetry will automatically fetch credentials for your Azure Artifacts feed, utilizing artifacts-keyring. Note: artifacts-keyring requires dotnet to be installed and available in your PATH.

This works by recognizing authentication failures to URLs containing pkgs.dev.azure.com and pkgs.visualstudio.com. If you have an on-premises Azure DevOps server, make the source name include the text azure-artifacts:

[[tool.poetry.source]]
name = "azure-artifacts-feed"
url  = "https://devops.mydomain.com/{organization}/_packaging/{feed}/pypi/simple/"
priority = "primary"

Development

Use the provided devcontainer or run the following for local development:

python -m pip install pipx --upgrade
pipx ensurepath
pipx install poetry
pipx install vscode-task-runner
# (Optionally) Add pre-commit plugin
poetry self add poetry-pre-commit-plugin

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

poetry_azure_artifacts_plugin-0.1.0.tar.gz (3.6 kB view hashes)

Uploaded Source

Built Distribution

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