Github actions are hard #4
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: Build Tests | ||
on: | ||
workflow_dispatch: | ||
branches: [master] | ||
pull-request: | ||
branches: [release] | ||
permissions: | ||
id-token: write | ||
contents: read | ||
jobs: | ||
linux-build: | ||
name: Linux Build | ||
runs-on: "ubuntu-latest" | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.12" | ||
- name: PDM | ||
run: python3.12 -m pip install pdm | ||
- name: Install libkrb5-dev | ||
run: sudo apt-get install -y libkrb5-dev | ||
- name: Installs dev deps and package | ||
run : | | ||
pdm export -f requirements --without-hashes --dev > requirements.txt | ||
python3.12 -m pip install -r requirements.txt | ||
- name: Build | ||
run: | | ||
python3.12 -m nuitka --standalone --onefile --output-filename=ldeep.bin ldeep/__main__.py | ||
mv ldeep.bin ldeep_linux-amd64 | ||
- name: Upload Artifacts | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: linux | ||
path: ldeep_linux-amd64 | ||
windows-build: | ||
name: Windows Build | ||
runs-on: "windows-latest" | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.12" | ||
- name: PDM | ||
run: python3 -m pip install pdm | ||
- name: Installs dev deps and package | ||
run: | | ||
pdm export -f requirements --without-hashes --dev > requirements.txt | ||
python3 -m pip install -r requirements.txt | ||
- name: Build | ||
run: | | ||
python3 -m nuitka --standalone --assume-yes-for-downloads --output-filename=ldeep.exe --onefile ldeep/__main__.py | ||
mv ldeep.exe ldeep_windows-amd64.exe | ||
- name: Upload Artifacts | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: windows | ||
path: ldeep_windows-amd64.exe | ||
macos-build: | ||
name: MacOS ARM64 Build | ||
runs-on: "macos-latest" | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.12" | ||
- name: PDM | ||
run: python3.12 -m pip install pdm | ||
- name: Installs dev deps and package | ||
run: | | ||
pdm export -f requirements --without-hashes --dev > requirements.txt | ||
python3.12 -m pip install -r requirements.txt | ||
- name: Build | ||
run: | | ||
python3.12 -m nuitka --standalone --onefile --output-filename=ldeep.bin ldeep/__main__.py | ||
mv ldeep.bin ldeep_macos-amd64 | ||
- name: Upload Artifacts | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: macos | ||
path: ldeep_macos-amd64 |