Skip to content

Commit

Permalink
Merge 551830b into 29ee08c
Browse files Browse the repository at this point in the history
  • Loading branch information
MikeSullivan7 authored May 10, 2024
2 parents 29ee08c + 551830b commit 05d4c3d
Show file tree
Hide file tree
Showing 2 changed files with 97 additions and 2 deletions.
96 changes: 96 additions & 0 deletions .github/workflows/pyinstaller_windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: PyInstaller Windows Build

on:
pull_request:
branches:
- 'main'
- 'release-*'
release:

jobs:
test:
runs-on: windows-latest

steps:
- uses: actions/checkout@v4
with:
# Needed to get tags so that git describe works during package build
fetch-depth: "0"

- name: Get Date
id: get-date
run: |
echo "date=$(/bin/date -u "+%Y%V")" >> $GITHUB_OUTPUT
shell: bash

- name: Cache Miniforge and Pip packages
uses: actions/cache@v4
env:
CACHE_NUMBER: 0
with:
path: |
~/conda_pkgs_dir
~/.cache/pip
key:
${{runner.os}}-condapkg-${{env.CACHE_NUMBER}}-${{steps.get-date.outputs.date}}-${{hashFiles('environment-dev.yml','conda/meta.yaml')}}

- name: Setup Miniforge
uses: conda-incubator/setup-miniconda@v3
with:
miniforge-version: latest
activate-environment: mantidimaging-dev
auto-activate-base: false
use-mamba: true

- name: Cache Miniforge environment
uses: actions/cache@v4
id: cache-miniforge-environment
env:
CACHE_NUMBER: 0
with:
path: ${{env.CONDA}}/envs/mantidimaging-dev
key:
${{runner.os}}-condaenv-${{env.CACHE_NUMBER}}-${{steps.get-date.outputs.date}}-${{hashFiles('environment-dev.yml','conda/meta.yaml')}}

- name: Mantid Imaging developer dependencies
if: steps.cache-miniforge-environment.outputs.cache-hit != 'true'
shell: bash -l {0}
run: |
conda deactivate
python ./setup.py create_dev_env
- name: List versions
shell: bash -l {0}
run: |
conda env list
python --version; conda list ; pip list
- name: cuda-toolkit
uses: Jimver/cuda-toolkit@v0.2.15
with:
cuda: '10.2.89'

- name: PyInstaller Build
shell: bash -l {0}
env:
CONDA_CUPY_CUDA_PATH: ${{env.CUDA_PATH}}
run: |
conda activate mantidimaging-dev
set
echo "Cuda path: $CUDA_PATH"
echo "path: $PATH"
echo "dev env path: '${{env.CONDA}}/envs/mantidimaging-dev'"
cd packaging
python PackageWithPyInstaller.py
- name: Archive PyInstalled File
uses: actions/upload-artifact@v3
with:
name: MantidImagingSpec
path: packaging/MantidImaging.spec

- name: Archive PyInstalled File
uses: actions/upload-artifact@v3
with:
name: MantidImaging
path: packaging/dist
3 changes: 1 addition & 2 deletions packaging/PackageWithPyInstaller.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

def create_run_options():
run_options = [
'../mantidimaging/__main__.py', '--name=MantidImaging', '--additional-hooks-dir=hooks', '--onedir',
'../mantidimaging/__main__.py', '--name=MantidImaging', '--additional-hooks-dir=hooks',
'--icon=../images/mantid_imaging_unstable_64px.ico'
]

Expand Down Expand Up @@ -95,5 +95,4 @@ def add_exclude_modules(run_options):
# The default limit is 1000, meaning a recursion error would occur at around 115 nested imports.
# A limit of 5000 means the error should occur at about 660 nested imports.
sys.setrecursionlimit(sys.getrecursionlimit() * 5)

PyInstaller.__main__.run(create_run_options())

0 comments on commit 05d4c3d

Please sign in to comment.