2016-12-12 2 views
0

Ich hatte einige Probleme herauszufinden, wie ich mein Python-Paket auf PyPi aufbereitet, damit ich es leicht mit anderen Abhängigkeiten für andere Projekte installieren kann (zB mit einem Anforderungseintrag oder einem einfachen 'pip install xyz') - eine solche ist hier aufgeführt Creating PyPi package - Could not find a version that satisfies the requirement iso8601. Dies führte mich zu einem anderen Kaninchenloch, was zu einer anderen Frage führte:Wie kann man testen, dass die PyPi-Installation funktioniert, bevor man zu PyPi wechselt? (Python)

Wie kann ich testen, um sicherzustellen, dass der my pip install Befehl vor dem Drücken meines Pakets mit einer Freigabe zu PyPi funktioniert?

Antwort

1

Wenn Sie nur testen müssen, ob pip install von dem gebauten Paket funktioniert, können Sie es erstellen und dann pip verwenden, um es vom lokalen Dateisystem zu installieren.

python setup.py sdist 
pip install dist/mypackage-1.0.tar.gz 

Wenn Sie python setup.py install bereits ausgeführt worden sind, sicherzustellen, dass Sie laufen:

pip uninstall mypackage 

deinstallieren erste vorhandenes Paket. Sie können auf seltsame Situationen stoßen, wenn Sie lokal python setup.py install und pip mischen, also führen Sie pip uninstall mehrere Male aus, bis kein Paket mehr zu entfernen ist, um sicher zu sein.

+0

Schön, das ist hilfreich. Vielen Dank! Es scheint, dass die Verwendung von pip install installs direkt von den prod-Ressourcen gedacht ist, gibt es eine Entsprechung für pip-Installation -i https://testpypi.python.org/pypi ? Meistens versuche ich nur Abhängigkeiten zu erkennen und zu beheben, die an beiden Orten nicht existieren. – noname

+0

Was meinst du mit beiden Orten? Ich wollte Testpypi erwähnen, war mir aber nicht sicher, ob es nur das verwendet oder auf echtes PyPi zurückgreift. Ist das das Thema, von dem du sprichst? –

+0

Ja, ich denke, wir sind auf der gleichen Seite. Grundsätzlich gehen einige Pakete, die ich verwende, nicht auf das echte PyPi zurück, wenn die Versionierung auf der Test-vs-Prod-PyPi-Verpackung anders ist, was Tests für den Staging-Bereich unmöglich gemacht hat. Ich könnte es einfach ignorieren und den Prod env verwenden, da dies kaputt scheint, aber das scheint falsch zu sein. – noname

Verwandte Themen