Ich stehe vor einem seltsamen Problem, bei dem die Authentifizierung einwandfrei funktioniert, wenn ich das Token über CLI in die URL einbette, aber mit 401 Nicht autorisiert fehlschlägt, wenn ich versuche, Umgebungsvariablen zu verwenden (was die empfohlene sichere Methode ist).
Was FUNKTIONIERT (Beweisen Sie dieses Token und URL sind gültig):
Wenn ich die Konfiguration umgehe und das Token direkt in der Befehlszeile übergebe, wird es korrekt installiert:
Code: Select all
uv add my-package --index-url https://python-internal:[email protected]/my-org/Assets/_packaging/python-internal/pypi/simple/
Was FEHLT (Der Konfigurationsansatz):
Ich möchte dies in pyproject.toml konfigurieren und Umgebungsvariablen für die Anmeldeinformationen verwenden.
1. pyproject.toml:
Code: Select all
[project]
name = "my-project"
version = "0.1.0"
requires-python = ">=3.11"
dependencies = []
[[tool.uv.index]]
name = "private-registry"
url = "https://pkgs.dev.azure.com/my-org/Assets/_packaging/python-internal/pypi/simple/"
Ich habe diese Variablen festgelegt (sowohl über die .env-Datei als auch manuell mit „Set in CMD“ versucht):
Code: Select all
set UV_INDEX_PRIVATE_REGISTRY_USERNAME=python-internal
set UV_INDEX_PRIVATE_REGISTRY_PASSWORD=MY_LONG_PAT
3. Der Fehler:
Wenn ich uv add my-package ausführe, erhalte ich Folgendes:
Code: Select all
× No solution found when resolving dependencies:
╰─▶ Because my-package was not found in the package registry...
hint: An index URL (https://pkgs.dev.azure.com/...) could not be queried due to a lack of valid authentication credentials (401 Unauthorized).
Gibt es eine spezielle Möglichkeit, Bindestriche (-) im Indexnamen zu behandeln, wenn Umgebungsvariablen unter Windows zugeordnet werden, oder fehlt mir ein weiterer Konfigurationsschritt?
Umgebung:
- Betriebssystem: Windows 11
- Shell: CMD / PowerShell
- UV-Version: (neueste)
Mobile version