diff --git a/.github/workflows/python-pypi-test-upload.yml b/.github/workflows/python-pypi-test-upload.yml new file mode 100644 index 0000000..d73998a --- /dev/null +++ b/.github/workflows/python-pypi-test-upload.yml @@ -0,0 +1,49 @@ +# This workflow will install Python dependencies, run tests and lint with a single version of Python +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python + +name: Python application + +on: + push: + branches: [ "develop" ] + +permissions: + contents: read + +jobs: + + pypi-upload: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Set up Python 3.10 + uses: actions/setup-python@v3 + with: + python-version: "3.10" + - name: Install dependencies + run: | + python -m pip install --upgrade pip pipenv + if [ -f Pipfile ]; then pipenv install; fi + - name: Build Cython Code + run: | + pipenv run make + - name: Test with unittest + run: | + pipenv run python -m unittest + - name: Build Pip Packge + run: | + pipenv run VERSION_SUFIX=${GITHUB_RUN_ID} python setup.py sdist bdist_wheel + - name: Convert Pip Packge To ManyLinux + run: | + wget https://github.com/NixOS/patchelf/releases/download/0.17.0/patchelf-0.17.0.tar.gz + tar xf patchelf-0.17.0.tar.gz + cd patchelf-0.17.0 + ./configure + sudo make install + cd .. + pipenv run python -m auditwheel repair --plat manylinux_2_17_x86_64 dist/yoshi_seals-*.whl + - name: Upload Pip Packge + run: | + pipenv run TWINE_USERNAME=${{secrets.PYPI_USER}} TWINE_PASSWORD=${{secrets.PYPI_TEST_TOKEN}} python -m twine upload --repository-url https://test.pypi.org/legacy/ wheelhouse/* diff --git a/.github/workflows/python-pypi-upload.yml b/.github/workflows/python-pypi-upload.yml index bc6a0f1..ab27cf2 100644 --- a/.github/workflows/python-pypi-upload.yml +++ b/.github/workflows/python-pypi-upload.yml @@ -6,8 +6,6 @@ name: Python application on: push: branches: [ "master" ] - pull_request: - branches: [ "master" ] permissions: contents: read