Þegar núverandi provisioning-skrifta þarf að keyra pip í gegnum proxy, ræstu pip sem subprocess. Innri Python-aðgerðir pip eru ekki studd forritaskil.

import subprocess
import sys

subprocess.run([
    sys.executable,
    '-m', 'pip', 'install',
    '--proxy', 'http://proxy.example:8080',
    'example-package',
], check=True)

Notaðu fyrirhugaða pakkann og proxy-endapunktinn. Fyrir niðurhal opinberra pakka sem leyft er í gegnum opinberan millilið býður HTTP-proxylistinn upp á frambjóðendur fyrir HTTP-proxy-rökin. sys.executable velur Python-túlkinn sem keyrir skriftuna, þannig að forðast er að kalla óvart pip annarrar uppsetningar úr PATH.

Hvert rök taka sérstakt listaatriði. Engin skel er nauðsynleg, og proxy-slóðin þarf ekki auka par af innfelldum skeljar-gæsalappir. check=True kastar CalledProcessError ef uppsetningin mistekst, sem gerir provisioning-vinnuflæðinu kleift að meðhöndla þá mistök.

Stilltu niðurhalsleiðina á þessari pip-kallan eða í subprocess-umhverfi hennar. Requests-lota sem er stillt annars staðar í foreldrisforritinu stillir ekki sérstakt pip-ferlið.

Eftir uppsetninguna skaltu halda áfram venjulegum lífsferli umhverfis forritsins. Að setja upp í túlk sem er þegar í keyrslu tryggir ekki að núverandi innflutningur, skyndiminni eða slóðir hans endurspegli nýja pakkann strax.

Tengdir greinar