linux Specify numpy version on mac/win builds. #71
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
run-name: linux ${{ github.event.pull_request.title }} ${{ github.event.head_commit.message }} | |
# see https://docs.github.com/en/webhooks/webhook-events-and-payloads#pull_request | |
on: | |
push: | |
branches: [ master ] | |
pull_request: | |
branches: [ master ] | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
# installer is always built with a specific version of Python | |
os: [ubuntu-20.04] | |
python-version: ["3.12"] | |
env: | |
# define environment and configuration variables here. | |
# app_name is how the application will be named on the disk image. | |
# product_name is the name of the disk image (.dmg) that gets built. | |
# python_version specifies which version of Python to use. | |
# this should be regularly updated to the latest usable version. | |
app_name: "Nion Swift 16" | |
product_name: NionSwift-16.11.0 | |
platform: x86_64 | |
tool_source_version: 0.4.24 | |
steps: | |
- uses: actions/checkout@v4 | |
# first set up Python | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Display Python version | |
run: python -c "import sys; print(sys.version)" | |
# next build the installer (it's a disk image with the application). | |
- name: Build | |
run: | | |
wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage -O /usr/local/bin/appimagetool | |
chmod +x /usr/local/bin/appimagetool | |
python -m venv venv-appimage | |
source ./venv-appimage/bin/activate | |
python -m pip install appimage-builder | |
appimage-builder --recipe nionswift_appimage.yml | |
# finally, upload the artifacts of the build so that they are available on the GitHub action page. | |
- name: Upload Product | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ env.product_name }}-${{ env.platform }}.AppImage | |
path: ${{ env.product_name }}-${{ env.platform }}.AppImage |