diff --git a/.github/workflows/forward-compatibility.yml b/.github/workflows/forward-compatibility.yml index 1fab549b5dc3..cbcc1cb07984 100644 --- a/.github/workflows/forward-compatibility.yml +++ b/.github/workflows/forward-compatibility.yml @@ -29,27 +29,35 @@ jobs: env: ARCH: x86_64 ARCH_CMD: linux64 - DOCKER_TEST_PREFIX: crystallang/crystal:${{ matrix.crystal_bootstrap_version }} + CRYSTAL_BOOTSTRAP_VERSION: ${{ matrix.crystal_bootstrap_version }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: crystal_bootstrap_version: [1.7.3, 1.8.2, 1.9.2, 1.10.1, 1.11.2, 1.12.2, 1.13.3, 1.14.1, 1.15.1, 1.16.3, 1.17.1] - flags: [""] + env: [{}] include: # libffi is only available starting from the 1.2.2 build images + # pcre2 is only available starting from the 1.7.0 build images - crystal_bootstrap_version: 1.1.1 - flags: "FLAGS=-Dwithout_ffi USE_PCRE1=true" + env: + FLAGS: -Dwithout_ffi + USE_PCRE1: true - crystal_bootstrap_version: 1.2.2 - flags: "USE_PCRE1=true" + env: + USE_PCRE1: true - crystal_bootstrap_version: 1.3.2 - flags: "USE_PCRE1=true" + env: + USE_PCRE1: true - crystal_bootstrap_version: 1.4.1 - flags: "USE_PCRE1=true" + env: + USE_PCRE1: true - crystal_bootstrap_version: 1.5.1 - flags: "USE_PCRE1=true" + env: + USE_PCRE1: true - crystal_bootstrap_version: 1.6.2 - flags: "USE_PCRE1=true" + env: + USE_PCRE1: true steps: - name: Download Crystal source uses: actions/checkout@v5 @@ -63,4 +71,5 @@ jobs: run: bin/ci prepare_build - name: Test - run: ${{ matrix.flags }} bin/ci build + run: bin/ci build + env: ${{ matrix.env }} diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index d30d592b6cd1..a88f5bed050a 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -21,17 +21,18 @@ jobs: env: ARCH: x86_64 ARCH_CMD: linux64 - DOCKER_TEST_PREFIX: crystallang/crystal:${{ matrix.crystal_bootstrap_version }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: - flags: [""] + env: [{}] include: - # libffi is only available starting from the 1.2.2 build images - - crystal_bootstrap_version: 1.0.0 - flags: "FLAGS=-Dwithout_ffi USE_PCRE1=true" - - crystal_bootstrap_version: 1.18.2 # LATEST RELEASE + - env: + CRYSTAL_BOOTSTRAP_VERSION: 1.0.0 + # libffi is only available starting from the 1.2.2 build images + FLAGS: "-Dwithout_ffi" + # pcre2 is only available starting from the 1.7.0 build images + USE_PCRE1: true steps: - name: Download Crystal source uses: actions/checkout@v5 @@ -45,7 +46,8 @@ jobs: run: bin/ci prepare_build - name: Test - run: ${{ matrix.flags }} bin/ci build + run: bin/ci build + env: ${{ matrix.env }} x86_64-musl-test: env: diff --git a/bin/ci b/bin/ci index fabeae18cbab..a47600b5c952 100755 --- a/bin/ci +++ b/bin/ci @@ -189,7 +189,7 @@ with_build_env() { on_linux verify_linux_environment - export DOCKER_TEST_PREFIX="${DOCKER_TEST_PREFIX:=crystallang/crystal:1.18.2}" + export DOCKER_TEST_PREFIX="${DOCKER_TEST_PREFIX:="crystallang/crystal:${CRYSTAL_BOOTSTRAP_VERSION:-1.18.2}"}" case $ARCH in x86_64)