CI #39
  
    
      This file contains hidden or 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: CI | |
| on: | |
| push: | |
| branches: [ master ] | |
| pull_request: | |
| branches: [ master ] | |
| schedule: | |
| # Daily build at midnight UTC | |
| - cron: '0 0 * * *' | |
| jobs: | |
| docker: | |
| name: ROS 2 Docker build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: docker build | |
| run: docker build . --file Dockerfile.ros-kilted | |
| test: | |
| name: Test | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| max-parallel: 10 | |
| matrix: | |
| include: | |
| - python-version: '3.10' | |
| os: ubuntu-latest | |
| - python-version: '3.14' | |
| os: ubuntu-latest | |
| - python-version: '3.14' | |
| os: macos-latest | |
| - python-version: '3.14' | |
| os: windows-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install and configure package and dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install . | |
| evo_config show --brief --no_color | |
| - name: mypy | |
| run: | | |
| pip install mypy types-PyYAML | |
| mypy --ignore-missing-imports evo/ test/ contrib/ examples/ --exclude test/tum_benchmark_tools/ | |
| - name: pytest | |
| run: | | |
| pip install pytest | |
| pytest -sv | |
| build: | |
| name: Build Package | |
| runs-on: ubuntu-latest | |
| needs: test | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.x' | |
| - name: Build sdist and wheel | |
| run: | | |
| pip install hatch | |
| hatch build | |
| - name: Upload build artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: python-package-distributions | |
| path: dist/ |