Open
Conversation
scbedd
reviewed
Apr 14, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR switches the repo/tooling default Python package index from PyPI to Azure SDK’s Central Feed Services (CFS), with opt-out behavior when PyPI is explicitly requested.
Changes:
- Add repo-root
uv.tomlto makeuvdefault to the Azure SDK CFS index. - Update
azpysdkto default pip/uv installs to CFS, with a new--pypiflag to force PyPI. - Update docs and CI (GitHub Actions) to configure pip/uv package indexes to CFS.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
uv.toml |
Configures uv’s default index to the Azure SDK CFS feed. |
eng/tools/azure-sdk-tools/tests/test_pypi_client.py |
Adjusts PyPI-only tests to explicitly construct a client targeting pypi.org. |
eng/tools/azure-sdk-tools/azpysdk/main.py |
Adds CFS default index behavior and a --pypi bypass flag; restores env vars on exit. |
doc/tool_usage_guide.md |
Documents CFS default behavior, authentication needs, and --pypi usage. |
CONTRIBUTING.md |
Adds contributor guidance for CFS usage and authentication options. |
.github/workflows/azure-sdk-tools.yml |
Uses a new composite action to set CFS index env vars in the workflow jobs. |
.github/actions/configure-package-indexes/action.yml |
New composite action to export PIP_INDEX_URL and UV_DEFAULT_INDEX via GITHUB_ENV. |
Comment on lines
+60
to
+65
| parser.add_argument( | ||
| "--pypi", | ||
| action="store_true", | ||
| default=False, | ||
| help="Use PyPI directly instead of the CFS (Central Feed Services) feed.", | ||
| ) |
There was a problem hiding this comment.
--pypi is added as a top-level flag, but unlike --isolate/--python it can’t be specified after the subcommand (e.g., azpysdk mypy . --pypi will be rejected by argparse). If you want consistent CLI behavior with the other “global-ish” flags, consider also adding --pypi to the common parent parser (using default=argparse.SUPPRESS) so it works both before and after the subcommand.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
closes #46237
uv pipauto install from CFS instead of PyPI