|
@@ -0,0 +1,69 @@
|
|
|
|
|
+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 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
|
|
|
|
|
+ with:
|
|
|
|
|
+ name: python${{ env.PYTHON_VERSION }}-appimages
|
|
|
|
|
+ path: ${{ env.PYTHON_APPIMAGE }}
|
|
|
|
|
+
|
|
|
|
|
+ Release:
|
|
|
|
|
+ needs: Build
|
|
|
|
|
+ runs-on: ubuntu-latest
|
|
|
|
|
+ strategy:
|
|
|
|
|
+ matrix:
|
|
|
|
|
+ version: [2.7, 3.4, 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 }}
|