Skip to content

PyPI workflow#1645

Merged
aquynh merged 1 commit intocapstone-engine:masterfrom
chfl4gs:action
Nov 15, 2020
Merged

PyPI workflow#1645
aquynh merged 1 commit intocapstone-engine:masterfrom
chfl4gs:action

Conversation

@chfl4gs
Copy link
Copy Markdown

@chfl4gs chfl4gs commented Jun 15, 2020

Purpose:

  • Utilizing github action to build and publish python distribution packages including source package to pypi.org on repo [tag]. Build will still be triggered on [push].
  • Speed up project release process.

Binary distribution packages:
sdist, win32, win-amd64, manylinux1_x86_64, manylinux1_i686, macos_10.14_x86_64

Preparation:

  • Go to https://pypi.org/manage/account/#api-tokens and create a new API token for the Capstone-engine project on PyPI, limit the token scope to just this project. You can call it something like GitHub Actions CI/CD or anything that can be easily distinguishable in the token list. Don’t close the page just yet — you won’t see that token again.

  • In a separate browser tab or window, go to the Github Settings tab of capstone-engine/capstone repository and then click on Secrets in the left sidebar.

  • Create a new secret called pypi_pass and copy-paste the token generated from the first step.

  • Repeat the steps for test.pypi.org and create a secret named testpypi_pass with the testpypi token.

Build tools/Dockers
Using dockcross's manylinux1 images for Linux builds. Comply with PEP 513 requirements.

Artifacts
Workflow will produce zipped a artifact containing all the files for download/inspection/testing.

Workflows

  • Update VERSION according to PEP 440 and tag and release (manual)
  • Update setup.py for dev status classifiers. (manual)
  • Build wheel for respective OSes on push. (automated)
  • If tagged and builds completed, download artifacts and upload to Test PyPI. (automated)
  • If Test PyPi upload completed without any error, upload files to real PyPI site. (automated)

@aquynh aquynh merged commit 87d8aa3 into capstone-engine:master Nov 15, 2020
@aquynh
Copy link
Copy Markdown
Collaborator

aquynh commented Nov 15, 2020

merged, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants