Add lmde6 32bit build

i386 hack
Setup Node on each ste
From https://github.com/actions/upload-artifact/issues/616
pull/3297/head
Benson Muite 2024-10-17 21:41:20 +03:00 zatwierdzone przez Benson Muite
rodzic 7c0e1d0fb7
commit a0ff8f5c23
1 zmienionych plików z 112 dodań i 2 usunięć

Wyświetl plik

@ -59,7 +59,7 @@ jobs:
# for networkx
python -m pip install pandas
python -m pip install pyarrow
python -m pip install pyinstaller
# scipy gives us a ELF error when stripped
@ -84,6 +84,111 @@ jobs:
with:
name: inkstitch-linux
path: artifacts
lmde6-32:
# Node required for actions, install follows
# https://github.com/actions/upload-artifact/issues/616
runs-on: ubuntu-latest
container:
image: linuxmintd/lmde6-i386
volumes:
- ${{ github.workspace }}:/__e/node20
steps:
- name: Checkout repository
shell: bash
run: |
ls -lar /__e/node20 &&
apt-get update &&
apt-get install -y curl &&
curl -Lo /tmp/node.tar.gz https://unofficial-builds.nodejs.org/download/release/v20.17.0/node-v20.17.0-linux-x86.tar.gz &&
cd /__e/node20 &&
tar -x --strip-components=1 -f /tmp/node.tar.gz
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Replace `node` with an i386 version
shell: bash
run: |
ls -lar /__e/node20 &&
apt-get update &&
apt-get install -y curl &&
curl -Lo /tmp/node.tar.gz https://unofficial-builds.nodejs.org/download/release/v20.17.0/node-v20.17.0-linux-x86.tar.gz &&
cd /__e/node20 &&
tar -x --strip-components=1 -f /tmp/node.tar.gz
- name: install dependencies and build
shell: bash
run: |
apt-get update
apt-get install -y python3-dev python3-pip pipx ruby-full
gem install fpm
apt-get install -y python3-wheel
apt-get install -y gettext
# for wxPython
apt-get install -y libnotify4
apt-get install -y glib-networking libsdl2-dev libsdl2-2.0-0
# for PyGObject
apt-get install -y libgirepository1.0-dev libcairo2-dev
# for shapely
apt-get install -y build-essential libgtk-3-dev libgeos-dev cmake
apt-get install -y gcc g++ gfortran libopenblas-dev liblapack-dev
uname -a
python3 --version
python3 -m pip --version
python3 -m pip debug
python3 -m venv virtualenv
source virtualenv/bin/activate
virtualenv/bin/pip debug
virtualenv/bin/pip install pycairo
virtualenv/bin/pip install PyGObject
virtualenv/bin/pip install wxPython
virtualenv/bin/pip install -r requirements.txt
# for networkx
virtualenv/bin/pip install pandas
virtualenv/bin/pip install pyinstaller
# scipy gives us a ELF error when stripped
virtualenv/bin/pip uninstall --yes scipy
virtualenv/bin/pip install scipy --no-binary scipy
echo "${{ env.pythonLocation }}\bin" >> $GITHUB_PATH
deactivate
- name: test
shell: bash
run: |
source virtualenv/bin/activate
pytest
deactivate
- name: Package distributable
shell: bash
run: |
source virtualenv/bin/activate
make dist
deactivate
env:
BUILD: linux
INKSTITCH_GPG_KEY: ${{ secrets.INKSTITCH_GPG_KEY }}
- name: Upload artifact
shell: bash
run: |
ls -lar /__e/node20 &&
apt-get update &&
apt-get install -y curl &&
curl -Lo /tmp/node.tar.gz https://unofficial-builds.nodejs.org/download/release/v20.17.0/node-v20.17.0-linux-x86.tar.gz &&
cd /__e/node20 &&
tar -x --strip-components=1 -f /tmp/node.tar.gz
- uses: actions/upload-artifact@v4
with:
name: inkstitch-lmde6-32
path: artifacts
windows32:
runs-on: windows-2019
steps:
@ -353,7 +458,7 @@ jobs:
release:
runs-on: ubuntu-latest
needs: [linux, windows32, windows64, macx86, macarm64]
needs: [lmde6-32, linux, windows32, windows64, macx86, macarm64]
if: always()
steps:
- name: determine release info
@ -376,6 +481,11 @@ jobs:
with:
name: 'inkstitch-linux'
path: 'artifacts/'
- name: download linux32 apt
uses: actions/download-artifact@v4
with:
name: 'inkstitch-lmde6-32'
path: 'artifacts/'
- name: download windows32
uses: actions/download-artifact@v4
with: