diff options
author | Dmitry Misharov <dmitry@openssl.org> | 2023-09-18 10:53:00 +0200 |
---|---|---|
committer | Pauli <pauli@openssl.org> | 2023-09-20 08:17:17 +1000 |
commit | e900942587a18cdd6e3b064d6b21c9ce36a7b640 (patch) | |
tree | 1b10e87b4baa569dff871040d1513872978e6dfb /.github/workflows | |
parent | 0e138b7b591f160a50aff22f662254d1b39c9cac (diff) |
os zoo ci
Use a Github Actions expression to set value for the environment
variable.
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22130)
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/os-zoo.yml | 111 |
1 files changed, 73 insertions, 38 deletions
diff --git a/.github/workflows/os-zoo.yml b/.github/workflows/os-zoo.yml index ee327f4c1b..98fe0c744c 100644 --- a/.github/workflows/os-zoo.yml +++ b/.github/workflows/os-zoo.yml @@ -15,80 +15,116 @@ permissions: contents: read jobs: - # This has to be a separate job, it seems, because we want to use a - # container for it. - unix-container: + alpine: strategy: fail-fast: false matrix: - image: ['alpine:edge', 'alpine:latest'] - cc: ['gcc', 'clang'] + tag: [edge, latest] + cc: [gcc, clang] + branch: [openssl-3.0, openssl-3.1, master] runs-on: ubuntu-latest container: - image: ${{ matrix.image }} + image: docker.io/library/alpine:${{ matrix.tag }} + env: + # https://www.openwall.com/lists/musl/2022/02/16/14 + EXTRA_CFLAGS: ${{ matrix.cc == 'clang' && '-Wno-sign-compare' || '' }} + CC: ${{ matrix.cc }} steps: - name: install packages - run: | - apk --no-cache add build-base perl linux-headers git ${{ matrix.cc }} - + run: apk --no-cache add build-base perl linux-headers ${{ matrix.cc }} - uses: actions/checkout@v4 - + with: + ref: ${{ matrix.branch }} - name: config run: | - cc="${{ matrix.cc }}" - - extra_cflags="" - if [[ ${cc} == "clang" ]] ; then - # https://www.openwall.com/lists/musl/2022/02/16/14 - extra_cflags="-Wno-sign-compare" - fi - - CC=${{ matrix.cc }} ./config --banner=Configured no-shared \ - -Wall -Werror enable-fips --strict-warnings -DOPENSSL_USE_IPV6=0 ${extra_cflags} - + ./config --banner=Configured no-shared -Wall -Werror enable-fips --strict-warnings -DOPENSSL_USE_IPV6=0 \ + ${EXTRA_CFLAGS} - name: config dump run: ./configdata.pm --dump - name: make run: make -s -j4 - name: make test run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} - unix: + + linux: + strategy: + fail-fast: false + matrix: + branch: [openssl-3.0, openssl-3.1, master] + zoo: + - image: docker.io/library/debian:10 + install: apt-get update && apt-get install -y gcc make perl + - image: docker.io/library/debian:11 + install: apt-get update && apt-get install -y gcc make perl + - image: docker.io/library/debian:12 + install: apt-get update && apt-get install -y gcc make perl + - image: docker.io/library/ubuntu:20.04 + install: apt-get update && apt-get install -y gcc make perl + - image: docker.io/library/ubuntu:22.04 + install: apt-get update && apt-get install -y gcc make perl + - image: docker.io/library/fedora:38 + install: dnf install -y gcc make perl-core + - image: docker.io/library/fedora:39 + install: dnf install -y gcc make perl-core + - image: docker.io/library/centos:8 + install: | + sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* && \ + sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* && \ + dnf install -y gcc make perl-core + - image: docker.io/library/rockylinux:8 + install: dnf install -y gcc make perl-core + - image: docker.io/library/rockylinux:9 + install: dnf install -y gcc make perl-core + runs-on: ubuntu-latest + container: ${{ matrix.zoo.image }} + steps: + - uses: actions/checkout@v4 + with: + ref: ${{ matrix.branch }} + - name: install packages + run: ${{ matrix.zoo.install }} + - name: config + run: ./config + - name: config dump + run: ./configdata.pm --dump + - name: make + run: make -j4 + - name: make test + run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} + + macos: strategy: fail-fast: false matrix: - os: [ - macos-11, - macos-12, - macos-13, - ubuntu-20.04, - ubuntu-22.04, - ] + branch: [openssl-3.0, openssl-3.1, master] + os: [macos-11, macos-12, macos-13] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + with: + ref: ${{ matrix.branch }} - name: checkout fuzz/corpora submodule run: git submodule update --init --depth 1 fuzz/corpora - name: config - run: | - CC=${{ matrix.zoo.cc }} ./config --banner=Configured \ - -Wall -Werror --strict-warnings enable-fips + run: ./config --banner=Configured -Wall -Werror --strict-warnings enable-fips - name: config dump run: ./configdata.pm --dump - name: make run: make -s -j4 - name: make test run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} + windows: strategy: fail-fast: false matrix: - os: [ - windows-2019, - windows-2022 - ] + branch: [openssl-3.0, openssl-3.1, master] + os: [windows-2019, windows-2022] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + with: + ref: ${{ matrix.branch }} - name: checkout fuzz/corpora submodule run: git submodule update --init --depth 1 fuzz/corpora - uses: ilammy/msvc-dev-cmd@v1 @@ -98,8 +134,7 @@ jobs: run: mkdir _build - name: config working-directory: _build - run: | - perl ..\Configure --banner=Configured no-makedepend enable-fips + run: perl ..\Configure --banner=Configured no-makedepend enable-fips - name: config dump working-directory: _build run: ./configdata.pm --dump |