Como publicar o utilitário do console no PyPI em 1 minuto


Tendo desenvolvido um utilitário de console, você decide publicá-lo no PyPI. Bem, realmente, o que poderia ser melhor do que disponibilizá-lo através da instalação do pip ? Pesquisando o que é necessário para isso, você pode se deparar com a única postagem que encontrei sobre um tópico que, não apenas a partir de 2014, também exige que você crie um monte de pastas e arquivos para coisas completamente desnecessárias.


Como resolver esse problema sem muita dor de cabeça em 2019? Eu já fiz essa pergunta e, portanto, depois de ler uma tonelada de documentação, criei este tutorial para você. Aqui está um guia passo a passo.


1. Crie uma conta no PyPI ( link de registro )


2. Crie um ponto de entrada para o aplicativo (por exemplo, um arquivo entry.py com o seguinte conteúdo)


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

3. Instale poesia


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

(Você pode instalar a poesia de maneira diferente, por exemplo, pip install --user poetry - approx. Transl.)


4. Crie um ambiente


 cd myproject #    ,    poetry init 

5. Configure o comando do console (para fazer isso, adicione as seguintes linhas ao arquivo pyproject.toml que aparece )


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

NOME DO APLICATIVO   deve ser alterado para o nome do comando do console.


6. Publique o utilitário! (use o nome de usuário e a senha da etapa 1)


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

Feito! Agora a outra pessoa precisa de apenas dois comandos para instalar:


 $ sudo pip install PROJECT-NAME $ APPLICATION-NAME 

Onde NOME DO PROJETO é o nome que você deu ao projeto na etapa 4 e NOME DO APLICATIVO é o nome da equipe da etapa 5.




Atualização de versão


Sempre que você quiser atualizar um módulo, basta alterar o número da versão no arquivo pyproject.toml :


 version = "0.1.0" 

E repita a etapa 6:


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



Bônus: personalize o Travis para publicação automática


Adicione as seguintes linhas ao arquivo .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 

E defina as variáveis ​​de ambiente PYPI_USER e PYPI_PASS para travis-ci.com . Depois disso, você pode publicar o pacote usando os comandos:


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

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


All Articles