Yaml fix #4
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
name: Lint & generate release zip | ||
on: | ||
push: | ||
workflow_dispatch: | ||
jobs: | ||
test: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest] | ||
py_version: ["3.8", "3.9", "3.10", "3.11"] | ||
include: | ||
- os: windows-latest | ||
py_version: "3.8" | ||
- os: windows-latest | ||
py_version: "3.11" | ||
- os: macos-latest | ||
py_version: "3.8" | ||
- os: macos-latest | ||
py_version: "3.11" | ||
runs-on: ${{ matrix.os }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
- name: Set up Python | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.py_version }} | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install -r dev_requirements.txt | ||
- name: Download & install Webots (Linux) | ||
if: runner.os == 'Linux' | ||
run: | | ||
wget -O ./webots.deb \ | ||
https://github.com/cyberbotics/webots/releases/download/R2023b/webots_2023b_amd64.deb | ||
sudo apt-get install --yes ./webots.deb | ||
- name: Download & install Webots (Windows) | ||
if: runner.os == 'Windows' | ||
run: | | ||
Invoke-WebRequest -Uri https://github.com/cyberbotics/webots/releases/download/R2023b/webots-R2023b_setup.exe | ||
Start-Process -Wait -FilePath webots-R2023b_setup.exe | ||
- name: Download & install Webots (macOS) | ||
if: runner.os == 'macOS' | ||
run: | | ||
wget -O ./webots.dmg \ | ||
https://github.com/cyberbotics/webots/releases/download/R2023b/webots-R2023b.dmg | ||
hdiutil mount ./webots.dmg | ||
sudo cp -R /Volumes/Webots/Webots.app /Applications | ||
hdiutil unmount /Volumes/Webots | ||
- name: Lint | ||
run: | | ||
poe lint | ||
- name: Typecheck | ||
run: | | ||
poe type | ||
# - name: Run tests | ||
# run: | | ||
# poe test | ||
release: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
- name: Set up Python 3.10 | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: "3.10" | ||
- name: Install release dependencies | ||
run: | | ||
# pandoc is required for README.rst -> README.md conversion | ||
sudo apt-get update | ||
sudo apt-get install -y pandoc | ||
python -m pip install --upgrade pip | ||
python -m pip install -r dev_requirements.txt | ||
- name: Make release | ||
run: | | ||
poe release | ||
# TODO unzip release to avoid the double zip, but | ||
- name: Save built release | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: release | ||
path: | | ||
dist/*.zip |