Skip to content

Commit

Permalink
re-enable everything
Browse files Browse the repository at this point in the history
  • Loading branch information
jschwe committed Oct 14, 2023
1 parent aeaa174 commit 6160fc8
Show file tree
Hide file tree
Showing 3 changed files with 101 additions and 227 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/linux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ on:

jobs:
linux:
name: Test Linux
name: Test Linux ( ${{ inputs.target_arch }}, ${{ inputs.c_compiler}} ${{ inputs.generator }})
runs-on: ubuntu-${{ inputs.ubuntu_version }}
steps:
- uses: actions/checkout@v4
Expand Down
324 changes: 99 additions & 225 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,125 +9,6 @@ on:
- 'stable/**'
jobs:

# test:
# name: Test Corrosion
# runs-on: ${{ matrix.os }}
# continue-on-error: ${{ matrix.rust == 'nightly' }}
# strategy:
# fail-fast: false
# matrix:
# os:
# - windows-2022
# - ubuntu-latest
# - macos-13
# arch:
# - x86_64
# - i686
# - aarch64
# - powerpc64le
# abi:
# - gnu
# - darwin
# - msvc
# cmake:
# - 3.22.6
# rust:
# - "stable"
# generator:
# - default # This is just whatever the platform default is
# - ninja
# compiler: [default]
# include:
# - rust: nightly
# cmake: 3.22.6
# generator: ninja
# arch: x86_64
# abi: msvc
# os: windows-2022
# - rust: nightly
# cmake: 3.22.6
# generator: ninja
# arch: x86_64
# abi: gnu
# os: ubuntu-latest
# - rust: nightly
# cmake: 3.22.6
# generator: ninja
# arch: x86_64
# abi: darwin
# os: macos-13
# - rust: 1.54
# cmake: 3.22.6
# generator: ninja
# arch: x86_64
# abi: msvc
# os: windows-2019
# compiler: clang
# - os: ubuntu-latest
# arch: x86_64
# abi: gnu
# cmake: 3.22.6
# rust: 1.54
# generator: ninja-multiconfig
#
# exclude:
#
# # We have a separate test Matrix for the Visual Studio Generator
# - os: windows-2022
# generator: default # Default generator is Visual Studio
#
# # ARCH
# - os: windows-2022
# arch: i686
# abi: gnu
# - os: windows-2022
# arch: aarch64
# abi: gnu
# - os: windows-2022
# arch: i686
# generator: ninja
# - os: windows-2022
# arch: aarch64
# generator: ninja
# - os: windows-2022
# arch: powerpc64le
# - os: macos-13
# arch: i686
# - os: macos-13
# arch: aarch64
# - os: macos-13
# arch: powerpc64le
#
# # ABI
# - os: ubuntu-latest
# abi: msvc
# - os: ubuntu-latest
# abi: darwin
# - os: windows-2022
# abi: darwin
# - os: macos-13
# abi: msvc
# - os: macos-13
# abi: gnu
#
# steps:
# - uses: actions/checkout@v4
# - name: Setup Environment and Configure CMake
# uses: "./.github/actions/setup_test"
# with:
# target_arch: ${{matrix.arch}}
# abi: ${{matrix.abi}}
# cmake: ${{matrix.cmake}}
# rust: ${{matrix.rust}}
# generator: ${{matrix.generator}}
# build_dir: build
# compiler: ${{matrix.compiler}}
# - name: Run Tests
# id: run_tests
# working-directory: build
# run: ctest --output-on-failure --build-config Debug -j 3


visual_studio_base:
name: Test Visual Studio (base)
uses: ./.github/workflows/visual_studio.yaml
Expand Down Expand Up @@ -166,6 +47,8 @@ jobs:
windows_ninja_cl:
name: Test Windows Ninja MSVC
runs-on: ${{ matrix.os }}
needs:
- visual_studio_base
strategy:
fail-fast: false
matrix:
Expand All @@ -183,9 +66,6 @@ jobs:
vs_version: vs-2022
cmake: 3.22.6
- rust: 1.54.0
# Override rust version for x86_64
- arch: x86_64
rust: 1.46.0
# Add variable mapping for ilammy/msvc-dev-cmd action
- arch: x86_64
msvc_dev_arch: amd64
Expand Down Expand Up @@ -271,8 +151,9 @@ jobs:
c_compiler: "gcc"
generator: "Ninja"

linux_stage_2:
linux_stage2:
name: Test Linux
run-name: "Test Linux"
needs:
- linux_base
uses: ./.github/workflows/linux.yaml
Expand Down Expand Up @@ -346,116 +227,109 @@ jobs:
run: ctest --output-on-failure --build-config Debug -j 3


# test_cxxbridge:
# name: Test cxxbridge integration
# runs-on: ${{ matrix.os }}
# strategy:
# fail-fast: false
# matrix:
# os:
# - windows-2022
# - ubuntu-latest
# - macos-13
# include:
# - abi: default
# # - os: windows-2019
# # abi: gnu
# steps:
# - uses: actions/checkout@v4
# - uses: actions/cache@v3
# id: cache_cxxbridge
# with:
# path: "~/.cargo/bin/cxxbridge*"
# key: ${{ runner.os }}-cxxbridge_1_0_86
# - name: Install cxxbridge
# if: steps.cache_cxxbridge.outputs.cache-hit != 'true'
# run: cargo install [email protected]
# - name: Install lld
# run: sudo apt update && sudo apt install -y lld
# if: ${{ 'Linux' == runner.os }}
# - name: Setup Environment and Configure CMake
# uses: "./.github/actions/setup_test"
# with:
# target_arch: x86_64
# cmake: 3.22.6
# rust: stable minus 2 releases
# abi: ${{ matrix.abi }}
# generator: ninja
# build_dir: build
# configure_params: -DCORROSION_TESTS_CXXBRIDGE=ON
# - name: Run Tests
# working-directory: build
# run: ctest --output-on-failure --build-config Debug -j 3 -R "^cxxbridge"
# install:
# name: Test Corrosion as a Library
# runs-on: ${{ matrix.os }}
# strategy:
# fail-fast: false
# matrix:
# os:
# - windows-2019
# - ubuntu-latest
# - macos-13
# include:
# - rust: 1.46.0
# - os: macos-13
# rust: 1.54.0 # On MacOS-12 linking fails before Rust 1.54
# steps:
# - uses: actions/checkout@v3
# - name: Setup MSVC Development Environment
# uses: ilammy/msvc-dev-cmd@v1
# if: runner.os == 'Windows'
# - name: Install CMake
# uses: corrosion-rs/install-cmake@v2
# with:
# cmake: 3.22.6
# ninja: 1.10.0
# - name: Install Rust
# uses: dtolnay/rust-toolchain@master
# with:
# toolchain: ${{matrix.rust}}
# - name: CMake Version
# run: cmake --version
# - name: Rust Version
# run: rustc --version
# - name: Test Corrosion as subdirectory
# run: >
# cmake
# -S.
# -Bbuild
# -GNinja
# -DCORROSION_VERBOSE_OUTPUT=ON
# -DCORROSION_TESTS_INSTALL_CORROSION=OFF
# &&
# cd build
# &&
# ctest --output-on-failure -C Debug -j 3
# - name: Test Corrosion as installed module
# run: >
# cmake -E remove_directory build
# &&
# cmake
# -S.
# -Bbuild
# -GNinja
# -DCORROSION_VERBOSE_OUTPUT=ON
# -DCMAKE_BUILD_TYPE=Release
# -DCORROSION_TESTS_INSTALL_CORROSION=ON
# &&
# cd build
# &&
# ctest --output-on-failure -C Release -j 3
test_cxxbridge:
name: Test cxxbridge integration
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- windows-2022
- ubuntu-latest
- macos-13
include:
- cxxbridge_version: "1.0.86"
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v3
id: cache_cxxbridge
with:
path: "~/.cargo/bin/cxxbridge*"
key: ${{ runner.os }}-cxxbridge_1_0_86
- name: Install cxxbridge
if: steps.cache_cxxbridge.outputs.cache-hit != 'true'
run: cargo install [email protected]
- name: Install lld
run: sudo apt update && sudo apt install -y lld
if: ${{ 'Linux' == runner.os }}
- name: Setup MSVC Development Environment
uses: ilammy/msvc-dev-cmd@v1
if: runner.os == 'Windows'
- name: Install CMake
uses: corrosion-rs/install-cmake@v2
with:
cmake: 3.22.6
ninja: 1.10.0
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable minus 2 releases
- name: Configure
run: >
cmake
-S.
-Bbuild
-GNinja
-DCORROSION_VERBOSE_OUTPUT=ON
-DCORROSION_TESTS_CXXBRIDGE=ON
- name: Run Tests
working-directory: build
run: ctest --output-on-failure --build-config Debug -j 3 -R "^cxxbridge"

install:
name: Test Corrosion as a Library
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- windows-2022
- ubuntu-latest
- macos-13
include:
- rust: 1.54.0

steps:
- uses: actions/checkout@v4
- name: Setup MSVC Development Environment
uses: ilammy/msvc-dev-cmd@v1
if: runner.os == 'Windows'
- name: Install CMake
uses: corrosion-rs/install-cmake@v2
with:
cmake: 3.22.6
ninja: 1.10.0
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{matrix.rust}}
- name: Test Corrosion as installed module
run: >
cmake
-S.
-Bbuild
-GNinja
-DCORROSION_VERBOSE_OUTPUT=ON
-DCMAKE_BUILD_TYPE=Release
-DCORROSION_TESTS_INSTALL_CORROSION=ON
&&
cd build
&&
ctest --output-on-failure -C Release -j 3
# We want an "accumulation" job here because it is easier to specify required
# jobs here via needs, then in the github UI, since we use matrix jobs.
ci-success:
name: bors-ci-status
if: ${{ always() }}
needs:
# - test
- visual_studio_stage2
# - test_cxxbridge
# - install
- windows_ninja_cl
- windows_gnu
- linux_stage2
- darwin
- test_cxxbridge
- install
runs-on: ubuntu-latest
# Step copied from: https://github.com/cross-rs/cross/blob/80c9f9109a719ffb0f694060ddc6e371d5b3a540/.github/workflows/ci.yml#L361
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/visual_studio.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ jobs:
with:
path: build
key: ${{ inputs.os }}-${{ inputs.target_arch }}-${{ inputs.rust }}-msvc-${{ inputs.vs_version}}-build
- name: New configure
- name: Configure
run: cmake -S. -Bbuild -DCORROSION_TESTS_KEEP_BUILDDIRS=ON "-DRust_TOOLCHAIN=${{steps.install_rust.outputs.name}}" --preset "vs-${{ inputs.vs_version }}-${{ inputs.target_arch }}"
- name: Run Tests
working-directory: build
Expand Down

0 comments on commit 6160fc8

Please sign in to comment.