Skip to content

fix: white space in user path (#140) #455

fix: white space in user path (#140)

fix: white space in user path (#140) #455

Workflow file for this run

name: GitHub CI
on:
workflow_dispatch:
pull_request:
push:
tags:
- "*"
branches:
- main
env:
MAIN_PYTHON_VERSION: '3.11'
DOCUMENTATION_CNAME: 'installer.docs.pyansys.com'
LIBRARY_NAME: 'ansys-tools-installer'
LIBRARY_NAMESPACE: 'ansys.tools.installer'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
doc-style:
name: "Documentation style"
runs-on: ubuntu-latest
steps:
- uses: ansys/actions/doc-style@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
tests:
name: "Tests"
runs-on: windows-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11']
fail-fast: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DISPLAY: ':99'
steps:
- name: Install Linux os dependencies
if: runner.os == 'Linux'
run: sudo apt install libegl1
- name: Setup headless display
uses: pyvista/setup-headless-display-action@v2
- uses: ansys/actions/tests-pytest@v4
with:
python-version: ${{ matrix.python-version }}
doc-build:
name: "Build documentation"
runs-on: ubuntu-latest
needs: [doc-style]
steps:
- name: Build project documentation
uses: ansys/actions/doc-build@v4
with:
python-version: ${{ env.MAIN_PYTHON_VERSION }}
dependencies: "libegl1"
doc-deploy:
name: "Deploy development documentation"
runs-on: ubuntu-latest
needs: [doc-build]
if: github.ref == 'refs/heads/main'
steps:
- uses: ansys/actions/doc-deploy-dev@v4
with:
cname: ${{ env.DOCUMENTATION_CNAME }}
token: ${{ secrets.GITHUB_TOKEN }}
build-application:
name: "Build Application"
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ env.MAIN_PYTHON_VERSION }}
- name: Install Dependencies
run: pip install -e .[freeze]
- name: Freeze application
run: pyinstaller frozen.spec
- name: Install NSIS
run: choco install nsis -y
- name: Print NSIS version
run: makensis -VERSION
- name: Run NSIS
shell: pwsh
if: always()
run: |
Set-StrictMode -Version Latest
$ErrorActionPreference = "Stop"
makensis setup.nsi
- name: List output
run: ls -R dist
- uses: actions/upload-artifact@v3
with:
name: Python-Installer
path: dist/*Setup*.exe
sign-application:
name: Sign application
needs: [build-application]
runs-on:
group: ansys-network
labels: [self-hosted, Windows, signtool]
steps:
- name: Checkout the SignTool
uses: actions/checkout@v3
with:
repository: ansys-internal/signtool-ansys-apps
token: ${{ secrets.SIGNTOOL_ACCESS_TOKEN }}
- uses: actions/download-artifact@v3
with:
name: Python-Installer
path: signtool/installer
- name: List current structure
run: ls -R
- name: Sign application
working-directory: signtool
run: |
$filename = (get-ChildItem installer -recurse | where {$_.name -like "*Setup*"}).Name
$jobname = $filename -replace ".{4}$"
dotnet signclient.dll sign `
-r [email protected] `
-s '${{ secrets.SIGNTOOL_PWD }}' `
-c AppSettings.json `
-n $jobname `
-i installer/$filename
- uses: actions/upload-artifact@v3
with:
name: Python-Installer-Signed
path: signtool/installer/*Setup*.exe
release:
name: Release application
if: github.event_name == 'push' && contains(github.ref, 'refs/tags')
needs: [sign-application]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v3
with:
name: Python-Installer-Signed
path: installer-signed
- uses: actions/download-artifact@v3
with:
name: Python-Installer
path: installer
- name: Display structure of downloaded files
run: ls -R
- name: Rename unsigned exe
run: |
cd installer
for filename in *.exe; do mv "$filename" "Unsigned_${filename}"; done;
cd -
- name: Release to GitHub
uses: softprops/action-gh-release@v1
with:
files: |
installer-signed/*.exe
installer/*.exe
generate_release_notes: true
doc-deploy-release:
name: Upload release documentation
if: github.event_name == 'push' && contains(github.ref, 'refs/tags')
runs-on: ubuntu-latest
needs: [release, doc-build]
steps:
- name: Deploy the stable documentation
uses: ansys/actions/doc-deploy-stable@v4
with:
cname: ${{ env.DOCUMENTATION_CNAME }}
token: ${{ secrets.GITHUB_TOKEN }}
python-version: ${{ env.MAIN_PYTHON_VERSION }}