diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4cfbe06..3b75343 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,89 +1,82 @@ name: CI on: workflow_dispatch: pull_request: push: branches: - master jobs: default-shell: strategy: fail-fast: false matrix: # runs-on: [ubuntu-latest, macos-latest, windows-latest] runs-on: [windows-latest] include: # - runs-on: ubuntu-latest # config: -DBUILD_TESTS=ON -DBUILD_EXAMPLES=ON # conda: environment.yaml # - runs-on: macos-latest # config: -DBUILD_TESTS=ON -DBUILD_EXAMPLES=OFF # conda: environment_no-examples.yaml - runs-on: windows-latest config: -DBUILD_TESTS=ON -DBUILD_EXAMPLES=OFF conda: environment_no-examples.yaml defaults: run: shell: bash -l {0} name: "${{ matrix.runs-on }} • x64 ${{ matrix.args }}" runs-on: ${{ matrix.runs-on }} steps: - name: Basic GitHub action setup uses: actions/checkout@v2 - - name: Install LLVM and Clang (Windows) - if: runner.os == 'Windows' - uses: KyleMayes/install-llvm-action@v1 - with: - version: "11.0" - directory: ${{ runner.temp }}/llvm - - name: Set conda environment "test" uses: conda-incubator/setup-miniconda@v2 with: mamba-version: "*" channels: conda-forge,defaults channel-priority: true environment-file: ${{ matrix.conda }} activate-environment: test auto-activate-base: false - name: Configure using CMake if: runner.os != 'Windows' run: cmake . ${{ matrix.config }} - name: Configure using CMake (Windows) if: runner.os == 'Windows' run: | - conda install -c conda-forge ninja - cmake . -G Ninja ${{ matrix.config }} -DCMAKE_C_COMPILER="clang-cl.exe" -DCMAKE_CXX_COMPILER="clang-cl.exe" + conda install -c conda-forge clang_win-64 ninja + cmake . -G Ninja ${{ matrix.config }} -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ - name: Build C++ tests & examples run: cmake --build . - name: Run C++ tests & examples run: cmake --build . --target "RUN_TESTS_AND_EXAMPLES" - name: Build and install Python module run: | python setup.py build python setup.py install - name: Python tests run: | python test/basic-python/MeshQuad4.py # - name: Run Python examples # if: runner.os == 'Linux' # run: | # python ./docs/examples/statics/FixedDisplacements_LinearElastic/example.py --no-plot # python ./docs/examples/statics/FixedDisplacements_LinearElastic/manual_partition.py --no-plot