Skip to content

Commit

Permalink
Only publish when tagging
Browse files Browse the repository at this point in the history
  • Loading branch information
wtdcode committed Sep 26, 2024
1 parent 8bd254c commit 869968a
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 20 deletions.
3 changes: 1 addition & 2 deletions .github/workflows/Nuget-publishing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -428,14 +428,13 @@ jobs:
with:
path: ${{ github.workspace }}/bindings/dotnet/UnicornEngine/bin/Release/UnicornEngine.Unicorn.*.nupkg

# We often exceed limit so just release on tags
- name: 📦 Publish to Github Packages
if: startsWith(github.ref, 'refs/tags')
working-directory: bindings/dotnet/UnicornEngine
run: dotnet nuget push "bin/Release/UnicornEngine.Unicorn.*.nupkg" --source "github" --api-key "${{ secrets.GHPR_TOKEN }}"

# Nuget is more tolerate so let's release every commit
- name: 📦 Publish Nuget package
if: startsWith(github.ref, 'refs/tags')
working-directory: bindings/dotnet/UnicornEngine
run: dotnet nuget push "bin/Release/UnicornEngine.Unicorn.*.nupkg" -k "$NUGET_AUTH_TOKEN" -s https://api.nuget.org/v3/index.json
env:
Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/PyPI-publishing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ jobs:
python-ver: '3.8',
name: 'win32'
}
- {
os: ubuntu-latest,
arch: x64,
python-ver: '3.8',
name: 'musllinux'
}
- {
os: ubuntu-latest,
arch: x64,
Expand Down Expand Up @@ -129,6 +135,8 @@ jobs:
docker run --rm -v `pwd`/:/work dockcross/manylinux2014-x64 > ./dockcross
chmod +x ./dockcross
./dockcross bindings/python/build_wheel.sh
elif [ ${{ matrix.config.name }} == 'musllinux' ]; then
docker run --rm -v `pwd`:/work -w /work python:3.7-alpine sh /work/bindings/python/musl_wheel.sh
elif [ ${{ matrix.config.name }} == 'sdist' ]; then
cd bindings/python && python setup.py sdist
else
Expand Down
9 changes: 9 additions & 0 deletions bindings/python/musl_wheel.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/sh

# TODO: use cibuildwheel
apk update
apk add gcc make cmake pkgconfig linux-headers git musl-dev patchelf

python3 -m pip install -U pip setuptools auditwheel

cd bindings/python && python3 setup.py bdist_wheel && auditwheel repair dist/*.whl && mv -f wheelhouse/*.whl .
40 changes: 22 additions & 18 deletions bindings/python/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -180,24 +180,28 @@ def dummy_src():
cmdclass['sdist'] = custom_sdist
cmdclass['bdist_egg'] = custom_bdist_egg

# if 'bdist_wheel' in sys.argv and '--plat-name' not in sys.argv:
# idx = sys.argv.index('bdist_wheel') + 1
# sys.argv.insert(idx, '--plat-name')
# name = get_platform()
# if 'linux' in name:
# # linux_* platform tags are disallowed because the python ecosystem is fubar
# # linux builds should be built in the centos 5 vm for maximum compatibility
# # see https://github.com/pypa/manylinux
# # see also https://github.com/angr/angr-dev/blob/master/bdist.sh
# sys.argv.insert(idx + 1, 'manylinux1_' + platform.machine())
# elif 'mingw' in name:
# if IS_64BITS:
# sys.argv.insert(idx + 1, 'win_amd64')
# else:
# sys.argv.insert(idx + 1, 'win32')
# else:
# # https://www.python.org/dev/peps/pep-0425/
# sys.argv.insert(idx + 1, name.replace('.', '_').replace('-', '_'))
if 'bdist_wheel' in sys.argv and '--plat-name' not in sys.argv:
idx = sys.argv.index('bdist_wheel') + 1

name = get_platform()
if 'linux' in name:
# linux_* platform tags are disallowed because the python ecosystem is fubar
# linux builds should be built in the centos 5 vm for maximum compatibility
# see https://github.com/pypa/manylinux
# see also https://github.com/angr/angr-dev/blob/master/bdist.sh
# sys.argv.insert(idx + 1, 'manylinux1_' + platform.machine())
# Let auditwheel repair it
pass
elif 'mingw' in name:
sys.argv.insert(idx, '--plat-name')
if IS_64BITS:
sys.argv.insert(idx + 1, 'win_amd64')
else:
sys.argv.insert(idx + 1, 'win32')
else:
sys.argv.insert(idx, '--plat-name')
# https://www.python.org/dev/peps/pep-0425/
sys.argv.insert(idx + 1, name.replace('.', '_').replace('-', '_'))

try:
from setuptools.command.develop import develop
Expand Down

0 comments on commit 869968a

Please sign in to comment.