Cómo publicar la utilidad de consola en PyPI en 1 minuto


Después de desarrollar una utilidad de consola, decide publicarla en PyPI. Bueno, realmente, ¿qué podría ser mejor que hacerlo disponible a través de la instalación de pip ? Al buscar en Google lo que se necesita para esto, es posible que te topes con la única publicación que encontré sobre un tema que, no solo a partir de 2014, también requiere que crees un montón de carpetas y archivos para cosas (innecesarias) completamente innecesarias.


¿Cómo resolver este problema sin demasiado dolor de cabeza en 2019? Ya hice esta pregunta y, por lo tanto, después de leer un montón de documentación, creé este tutorial para usted. Aquí hay una guía paso a paso.


1. Cree una cuenta en PyPI ( enlace de registro )


2. Cree un punto de entrada a la aplicación (por ejemplo, un archivo entry.py con los siguientes contenidos)


def main(): print("It's alive!") 

3. Instala poesía


 curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python source $HOME/.poetry/env 

(Puede instalar la poesía de manera diferente, por ejemplo, pip install --user poetry - aprox. Transl.)


4. Crear un ambiente


 cd myproject #    ,    poetry init 

5. Configure el comando de consola (para hacer esto, agregue las siguientes líneas al archivo pyproject.toml que aparece )


 [tool.poetry.scripts] APPLICATION-NAME = 'entry:main' 

APLICACIÓN-NOMBRE   debe cambiarse al nombre del comando de la consola.


6. ¡Publica la utilidad! (use el nombre de usuario y la contraseña del paso 1)


 poetry publish --username PYPI_USERNAME --password PYPI_PASS --build 

Hecho Ahora la otra persona necesita solo dos comandos para instalar:


 $ sudo pip install PROJECT-NAME $ APPLICATION-NAME 

Donde PROJECT-NAME es el nombre que le dio al proyecto en el paso 4 y APPLICATION-NAME es el nombre del equipo del paso 5.




Actualización de la versión


Siempre que desee actualizar un módulo, simplemente cambie el número de versión en el archivo pyproject.toml :


 version = "0.1.0" 

Y repita el paso 6:


 poetry publish --username PYPI_USERNAME --password PYPI_PASS --build 



Bonificación: personalizar Travis para publicación automática


Agregue las siguientes líneas al archivo .travis.yml


 language: python dist: xenial before_install: - curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python - source $HOME/.poetry/env install: - poetry install script: - poetry build deploy: - provider: script skip_cleanup: true script: poetry publish --username $PYPI_USER --password $PYPI_PASS on: branch: master python: '3.7' tags: true 

Y configure las variables de entorno PYPI_USER y PYPI_PASS en travis-ci.com . Después de eso, puede publicar el paquete usando los comandos:


 git tag -a v1.2 # Replace version number with yours git push --tags 

Source: https://habr.com/ru/post/456304/


All Articles