Test Installer #59
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: Test Installer | |
on: | |
workflow_dispatch: | |
workflow_run: | |
workflows: [Build VisualNeuro] | |
types: | |
- completed | |
jobs: | |
test-installer: | |
if: ${{ github.event.workflow_run.conclusion == 'success' }} | |
strategy: | |
matrix: | |
os: [windows, macos, linux] | |
include: | |
- system: windows | |
os: 'windows-latest' | |
installer: 'visualneuro-installer-win' | |
- system: macos | |
os: 'macos-13' # for now macos-latest == macos-12 since macos-13 is still "beta" | |
installer: 'visualneuro-installer-macos' | |
#- system: linux | |
# os: 'ubuntu-22.04' | |
# installer: 'visualneuro-installer-ubuntu' | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Download artifact | |
uses: dawidd6/action-download-artifact@v2 | |
with: | |
name: ${{ matrix.installer }} | |
workflow: visualneuro.yml | |
############################################################################### | |
# Windows | |
############################################################################### | |
- name: Run Windows Installer | |
if: runner.os == 'Windows' | |
shell: pwsh | |
run: | | |
# find the name of the installer | |
$exe = Get-ChildItem -Name "Visual*.exe" | |
# launch the nsis installer in "silent mode" (/S), should run without user interaction | |
Invoke-expression "./'$exe' /S" | |
# this will spawn the installer in the background so we need to wait for it to finish | |
$proc = Get-Process | where {$_.ProcessName -like "Visual Neuro-*"} | Select-Object -First 1 | |
if ($proc) { | |
Wait-Process -Id $proc.id | |
} | |
- name: Run Visual Neuro | |
if: runner.os == 'Windows' | |
shell: pwsh | |
run: | | |
$ver = (Get-ChildItem -Name C:/"Program Files/Visual Neuro"/*) | |
Invoke-expression "C:/'Program Files/Visual Neuro/$ver/bin/Visual Neuro.exe' --logconsole --quit" | |
############################################################################### | |
# Macos | |
############################################################################### | |
- name: Run MacOS Installer | |
if: runner.os == 'macOS' | |
shell: bash | |
run: | | |
# Find the name of the installer | |
DMG=$(ls Visual*.dmg) | |
# Mount installer image | |
hdiutil attach "$DMG" | |
# Install by copying Visual Neuro.app to applications folder | |
cp -r "/Volumes/${DMG%%.dmg}/Visual Neuro.app" /Applications/ | |
hdiutil detach "/Volumes/${DMG%%.dmg}/" | |
- name: Run Visual Neuro | |
if: runner.os == 'macOS' | |
shell: bash | |
run: | | |
cd "/Applications/Visual Neuro.app/Contents/MacOS/" | |
./"Visual Neuro" --logconsole --quit | |
############################################################################### | |
# Linux | |
############################################################################### | |
- name: Extract Linux installer and run Visual Neuro | |
if: runner.os == 'Linux' | |
shell: bash | |
run: | | |
# Find the name of the installer | |
TGZ=$(ls Visual*.tar.gz) | |
# Extract | |
tar zxvf "$TGZ" | |
# Get folder name and move into the folder | |
cd "${TGZ%.tar.gz}" | |
./"bin/Visual Neuro" --logconsole --quit |