try saving site package dir to environment var #3
Workflow file for this run
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
# SPDX-FileCopyrightText: TNG Technology Consulting GmbH <https://www.tngtech.com> | |
# | |
# SPDX-License-Identifier: Apache-2.0 | |
name: Build Executable | |
on: | |
push: | |
branches: | |
- main | |
- feat-improve-distribution # For testing purposes, needs to be removed before merge | |
- 'renovate/*' | |
pull_request: | |
types: [opened, reopened, synchronize] | |
workflow_dispatch: | |
jobs: | |
build-executable: | |
runs-on: ${{ matrix.os }} | |
if: | | |
!(github.event_name == 'pull_request' && startsWith(github.head_ref, 'renovate/')) | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, windows-latest, macos-latest] | |
python-version: ['3.13'] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install uv and set the python version | |
uses: astral-sh/setup-uv@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
enable-cache: true | |
cache-dependency-glob: "uv.lock" | |
- name: Install the project | |
run: uv sync --locked | |
- name: Install PyInstaller | |
run: uv pip install pyinstaller | |
- name: Find site package directory | |
run: echo "sitepackage_dir=$(python -c "import site; print(site.getsitepackages()[0])")" >> $GITHUB_ENV | |
- name: List contents of site package directory | |
run: ls $sitepackage_dir | |
- name: Build executable | |
run: uv run pyinstaller --onefile --add-data "$sitepackage_dir/license_expression/data/scancode-licensedb-index.json:./license_expression/data" --add-data "$sitepackage_dir/spdx_tools/spdx/parser/tagvalue/parser.out:./spdx_tools/spdx/parser/tagvalue" src/opossum_lib/cli.py | |
- name: Test executable | |
run: dist/cli --help |