Ansible Galaxy: den Proxy für private Git-Abhängigkeiten umgehen
Proxy- und Bypass-Umgebung dort setzen, wo ansible-galaxy läuft, wenn öffentliche Collection-Downloads und private Git-Abhängigkeiten unterschiedliche Wege brauchen.
Die Installation einer Collection kann im selben Ablauf einen öffentlichen Galaxy-Dienst und einen privaten Git-Host kontaktieren. Wenn öffentlicher Datenverkehr einen Proxy benötigt, der private Host aber direkt erreichbar ist, geben Sie diese Aufteilung an den Prozess weiter, der ansible-galaxy ausführt.
export https_proxy='http://proxy.example:8080'
export no_proxy='gitlab.internal.example'
ansible-galaxy collection install -r requirements.ymlDies zeigt die Controller-Shell für eine vorhandene requirements-Datei. Fassen Sie den privaten Host mit allen anderen gewünschten Bypass-Einträgen zusammen. Wenn die öffentlichen Galaxy-Downloads einen öffentlichen Vermittler nutzen dürfen, liefert die HTTP-Proxy-Liste Kandidaten für https_proxy; behalten Sie die direkt erreichbaren privaten Git-Ausnahmen bei. Der Eintrag benennt den Zielhost, nicht den Proxy und keine vollständige Repository-URL.
Das environment-Schlüsselwort eines Playbooks konfiguriert die ausgewählte Umgebung der entfernten Aufgabe; es konfiguriert nicht Ansible selbst und stellt die Umgebung nicht rückwirkend für die Collection-Installation bereit.
Verfolgen Sie die fehlgeschlagene URL und den Downloader. Eine Collection kann von einer API, einer Archiv-URL oder Git stammen. Ein Git-Unterprozess kann auch eine eigene Proxy-Konfiguration haben, vergleichen Sie diese Konfiguration daher mit seiner geerbten Umgebung, wenn nur der Repository-Zugriff fehlschlägt. Behalten Sie auch alle weiteren privaten Archiv- oder Abhängigkeitshosts in der Routing-Richtlinie bei.