Die UV-Authentifizierung schlägt bei Azure DevOps Artifacts unter Verwendung von Umgebungsvariablen fehl, funktioniert jPython

Python-Programme
Anonymous
 Die UV-Authentifizierung schlägt bei Azure DevOps Artifacts unter Verwendung von Umgebungsvariablen fehl, funktioniert j

Post by Anonymous »

Ich migriere ein Python-Projekt von pip zu uv unter Windows 11. Ich muss Pakete aus einem privaten Azure DevOps-Artefakt-Feed installieren.
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).
Wenn ich die Konfiguration umgehe und übergebe Wenn Sie das Token direkt in der Befehlszeile eingeben, 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/
Allerdings möchte ich dies in pyproject.toml konfigurieren und Umgebungsvariablen für die Anmeldeinformationen verwenden.
  • Code: Select all

    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/"
    
  • Umgebungsvariablen:
    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
    
    (Ich verwende genau das gleiche PAT, das im obigen CLI-Befehl funktioniert hat).
Wenn ich jetzt 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).
Warum kann uv die Anmeldeinformationen nicht aus den Umgebungsvariablen UV_INDEX_PRIVATE_REGISTRY_USERNAME abrufen?/

Code: Select all

_PASSWORD
, obwohl der Indexname mit „private-registry“ übereinstimmt?
Gibt es eine bestimmte Möglichkeit, Bindestriche (-) im Indexnamen bei der Zuordnung zu Umgebungsvariablen unter Windows zu behandeln, oder fehlt mir ein weiterer Konfigurationsschritt?
Umgebung:
  • Betriebssystem: Windows 11
  • Shell: CMD / PowerShell
  • UV-Version: neueste

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post