| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- name: AppImage
- on:
- push:
- paths:
- - '.github/workflows/appimage.yml'
- - 'python_appimage/**'
- jobs:
- Build:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- image: ['1', '2010', '2014']
- arch: [x86_64, i686]
- tag: [cp27-cp27m, cp27-cp27mu, cp35-cp35m, cp36-cp36m, cp37-cp37m,
- cp38-cp38]
- exclude:
- - image: '2014'
- tag: cp27-cp27m
- - image: '2014'
- tag: cp27-cp27mu
- steps:
- - uses: actions/checkout@v2
- - name: Build
- run: |
- # Build the AppImage
- python -m python_appimage build manylinux \
- ${{ matrix.image }}_${{ matrix.arch }} \
- ${{ matrix.tag }}
- # Export the AppImage name and the Python version
- appimage=$(ls python*.AppImage)
- SCRIPT=$(cat <<-END
- version = '${appimage}'[6:].split('.', 2)
- print('{:}.{:}'.format(*version[:2]))
- END
- )
- version=$(python -c "${SCRIPT}")
- echo "::set-env name=PYTHON_APPIMAGE::${appimage}"
- echo "::set-env name=PYTHON_VERSION::${version}"
- - uses: actions/upload-artifact@v1
- if: github.ref == 'refs/heads/master'
- with:
- name: python${{ env.PYTHON_VERSION }}-appimages
- path: ${{ env.PYTHON_APPIMAGE }}
- Release:
- needs: Build
- runs-on: ubuntu-latest
- if: github.ref == 'refs/heads/master'
- strategy:
- matrix:
- version: [2.7, 3.5, 3.6, 3.7, 3.8]
- steps:
- - uses: actions/download-artifact@v1
- with:
- name: python${{ matrix.version }}-appimages
- - name: Release
- uses: marvinpinto/action-automatic-releases@latest
- with:
- automatic_release_tag: python${{ matrix.version }}
- title: Python ${{ matrix.version }}
- files: |
- python${{ matrix.version }}-appimages/python*.AppImage
- repo_token: ${{ secrets.GITHUB_TOKEN }}
|