Skip to content

Commit 6217271

Browse files
committed
Fix cross-platform executable build environment
1 parent f11727c commit 6217271

2 files changed

Lines changed: 27 additions & 9 deletions

File tree

.github/workflows/build-executables.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ on:
66
tags:
77
- "v*"
88

9+
env:
10+
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
11+
912
jobs:
1013
build:
1114
name: Build on ${{ matrix.os }}
@@ -17,13 +20,10 @@ jobs:
1720
include:
1821
- os: macos-latest
1922
artifact_name: FSS-Navigator-macOS
20-
executable_name: FSS-Navigator
2123
- os: windows-latest
2224
artifact_name: FSS-Navigator-Windows
23-
executable_name: FSS-Navigator.exe
2425
- os: ubuntu-latest
2526
artifact_name: FSS-Navigator-Linux
26-
executable_name: FSS-Navigator
2727

2828
steps:
2929
- name: Checkout repository
@@ -33,27 +33,28 @@ jobs:
3333
uses: conda-incubator/setup-miniconda@v3
3434
with:
3535
activate-environment: fssnav
36-
environment-file: environment.yml
37-
auto-activate-base: false
36+
environment-file: environment-ci.yml
37+
auto-activate: false
38+
use-mamba: true
3839

39-
- name: Install PyInstaller
40+
- name: Run tests
4041
shell: bash -l {0}
4142
run: |
4243
conda activate fssnav
43-
pip install pyinstaller
44+
pytest Computations/Code/tests
4445
4546
- name: Build executable
4647
shell: bash -l {0}
4748
run: |
4849
conda activate fssnav
4950
pyinstaller --name FSS-Navigator --onedir run_app.py
5051
51-
- name: Copy project files into bundle
52+
- name: Copy app files into bundle
5253
shell: bash -l {0}
5354
run: |
5455
cp -R Computations dist/FSS-Navigator/
55-
cp requirements.txt dist/FSS-Navigator/
5656
cp README.md dist/FSS-Navigator/
57+
cp requirements.txt dist/FSS-Navigator/
5758
5859
- name: Zip bundle on macOS/Linux
5960
if: runner.os != 'Windows'

environment-ci.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: fssnav
2+
channels:
3+
- conda-forge
4+
dependencies:
5+
- python=3.12
6+
- pip
7+
- pip:
8+
- streamlit
9+
- pandas
10+
- pytest
11+
- nbconvert
12+
- nbformat
13+
- pymupdf
14+
- pillow
15+
- python-docx
16+
- python-pptx
17+
- pyinstaller

0 commit comments

Comments
 (0)