Use importlib for version #1165
Workflow file for this run
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: Build and Test | ||
| on: | ||
| push: | ||
| branches: | ||
| - "*" | ||
| pull_request: | ||
| branches: | ||
| - "*" | ||
| jobs: | ||
| setup_install: | ||
| name: Run setup install | ||
| runs-on: ubuntu-latest | ||
| container: | ||
| image: precice/precice:nightly | ||
| options: --user root | ||
| steps: | ||
| - name: Checkout Repository | ||
| uses: actions/checkout@v2 | ||
| - name: Install pip3, pkgconfig and upgrade pip3 | ||
| run: | | ||
| apt-get -yy update | ||
| apt-get install -y python3-pip python3.12-venv pkg-config | ||
| rm -rf /var/lib/apt/lists/* | ||
| - name: Create venv | ||
| run: python3 -m venv .venv | ||
| - name: Activate venv | ||
| # see https://stackoverflow.com/a/74669486 | ||
| run: | | ||
| . .venv/bin/activate | ||
| echo PATH=$PATH >> $GITHUB_ENV | ||
| - name: Install dependencies | ||
| run: | | ||
| pip3 install toml | ||
| python3 -c 'import toml; c = toml.load("pyproject.toml"); print("\n".join(c["build-system"]["requires"]))' | pip3 install -r /dev/stdin | ||
| - name: Run setup install | ||
| run: python3 setup.py install | ||
| - name: Test install | ||
| run: | | ||
| export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH | ||
| python3 -c "import precice" | ||
| run_tox: | ||
| name: Run tox | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Checkout Repository | ||
| uses: actions/checkout@v2 | ||
| - uses: actions/setup-python@v1 | ||
| - name: Install OpenMPI, CMake, Boost library, Eigen and pkg-config | ||
| run: | | ||
| sudo apt-get -yy update | ||
| sudo apt-get install -y libopenmpi-dev cmake libboost-all-dev libeigen3-dev pkg-config | ||
| sudo rm -rf /var/lib/apt/lists/* | ||
| - uses: BSFishy/pip-action@v1 | ||
| with: | ||
| packages: toml | ||
| - name: Checkout precice and make required files discoverable | ||
| run: | | ||
| git clone --branch develop https://github.com/precice/precice.git precice-core | ||
| mkdir -p precice | ||
| cp precice-core/src/precice/Participant.hpp precice/Participant.hpp | ||
| cp precice-core/src/precice/Tooling.hpp precice/Tooling.hpp | ||
| cp precice-core/src/precice/Tooling.cpp precice/Tooling.cpp | ||
| cd precice-core | ||
| mkdir build && cd build | ||
| cmake .. -DPRECICE_FEATURE_MPI_COMMUNICATION=OFF -DPRECICE_FEATURE_PETSC_MAPPING=OFF -DPRECICE_FEATURE_PYTHON_ACTIONS=OFF -DBUILD_TESTING=OFF | ||
| - name: Install tox | ||
| run: pip install tox | ||
| - name: Run tox | ||
| env: | ||
| PKG_CONFIG_SYSTEM_INCLUDE_PATH: 1 | ||
| run: | | ||
| export CFLAGS=-I$GITHUB_WORKSPACE | ||
| export PKG_CONFIG_PATH=$(readlink -f "precice-core/build") | ||
| tox | ||
| pip_install: | ||
| name: Run pip install | ||
| needs: [setup_test] | ||
|
Check failure on line 80 in .github/workflows/build-and-test.yml
|
||
| runs-on: ubuntu-latest | ||
| container: | ||
| image: precice/precice:nightly | ||
| options: --user root | ||
| steps: | ||
| - name: Checkout Repository | ||
| uses: actions/checkout@v2 | ||
| - name: Install dependencies | ||
| run: | | ||
| apt-get -yy update | ||
| apt-get install -y python3-pip python3.12-venv pkg-config | ||
| rm -rf /var/lib/apt/lists/* | ||
| - name: Create venv | ||
| run: | | ||
| python3 -m venv .venv | ||
| - name: Activate venv | ||
| # see https://stackoverflow.com/a/74669486 | ||
| run: | | ||
| . .venv/bin/activate | ||
| echo PATH=$PATH >> $GITHUB_ENV | ||
| - name: Run pip install | ||
| run: pip3 install . | ||
| - name: Check import | ||
| run: | | ||
| export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH | ||
| python3 -c "import precice" | ||
| solverdummy_test: | ||
| name: Run solverdummy | ||
| needs: [pip_install] | ||
| runs-on: ubuntu-latest | ||
| container: | ||
| image: precice/precice:nightly | ||
| options: --user root | ||
| steps: | ||
| - name: Checkout Repository | ||
| uses: actions/checkout@v2 | ||
| - name: Install dependencies | ||
| run: | | ||
| apt-get -yy update | ||
| apt-get install -y python3-pip python3.12-venv pkg-config | ||
| rm -rf /var/lib/apt/lists/* | ||
| - name: Create venv | ||
| run: | | ||
| python3 -m venv .venv | ||
| - name: Activate venv | ||
| # see https://stackoverflow.com/a/74669486 | ||
| run: | | ||
| . .venv/bin/activate | ||
| echo PATH=$PATH >> $GITHUB_ENV | ||
| - name: Run pip install | ||
| run: pip3 install . | ||
| - name: Run solverdummy | ||
| run: | | ||
| export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH | ||
| cd examples/solverdummy/ | ||
| python3 solverdummy.py precice-config.xml SolverOne MeshOne & python3 solverdummy.py precice-config.xml SolverTwo MeshTwo | ||