Add setup-python to publishing workflow (#222) #654
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: Integration Tests | |
on: | |
push: | |
branches: [ devel ] | |
pull_request: | |
branches: [ devel ] | |
jobs: | |
fprime-integration: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] | |
fprime-version: ["NASA-v1.5.3", "v2.0.0", "v3.0.0", "devel"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip urllib3 setuptools_scm | |
sudo apt-get install ninja-build | |
- name: clone fprime and gps-tutorial | |
run: | | |
git clone --recurse-submodules -b ${{ matrix.fprime-version }} https://github.com/nasa/fprime.git | |
git clone --recurse-submodules https://github.com/fprime-community/gps-tutorial.git | |
pip install -r fprime/requirements.txt || true # Attempt to install fprime package when available | |
- name: Generate correct fprime version in gps-tutorial | |
working-directory: gps-tutorial | |
run: git submodule update --recursive | |
- name: Install Current fpp-tools | |
run: pip install . | |
# 0x72ad3277 is Fw/Types/Assert.cpp, a file that should be consistent across releases | |
- name: Test generation and building on Ref | |
working-directory: fprime/Ref | |
run: | | |
fprime-util generate | |
fprime-util build | |
fprime-util hash-to-file 0x72ad3277 | |
- name: Test generation and building on gps-tutorial | |
working-directory: gps-tutorial/GpsApp | |
run: | | |
fprime-util generate | |
fprime-util build | |
fprime-util hash-to-file 0x72ad3277 | |
- name: Test generation and building on Ref with Ninja | |
working-directory: fprime/Ref | |
# There is a bug in v3.0.0 that causes ninja builds to fail | |
if: matrix.fprime-version != 'v3.0.0' | |
run: | | |
fprime-util generate --ninja --build-cache ./build-ninja | |
fprime-util build --build-cache ./build-ninja | |
fprime-util hash-to-file 0x72ad3277 --build-cache ./build-ninja | |
- name: Test special generation on Ref | |
working-directory: fprime/Ref | |
run: | | |
fprime-util generate --build-cache ./special-cache --ut -DFPRIME_ENABLE_AUTOCODER_UTS=OFF | |
fprime-util build --build-cache ./special-cache | |
fprime-util hash-to-file 0x2ed4bda6 --build-cache ./special-cache |