From 467188335388701853885d85cba2715563ac1158 Mon Sep 17 00:00:00 2001 From: Scott Fennell Date: Mon, 1 Aug 2022 15:11:12 -0500 Subject: [PATCH] Test 32-bit mode on oraclelinux 8 (#1327) * Add 32bit test for oraclelinux8 #1304 closes #1304 --- .github/workflows/test_32_oracle.yml | 75 ++++++++++++++++++++++++++++ .github/workflows/test_linux.yml | 31 ++---------- 2 files changed, 78 insertions(+), 28 deletions(-) create mode 100644 .github/workflows/test_32_oracle.yml diff --git a/.github/workflows/test_32_oracle.yml b/.github/workflows/test_32_oracle.yml new file mode 100644 index 00000000..60fe9fe1 --- /dev/null +++ b/.github/workflows/test_32_oracle.yml @@ -0,0 +1,75 @@ +name: 32-bit Oracle + +on: + push: + paths-ignore: + - 'docs/**' + - '.github/workflows/**' + - '!.github/workflows/test_32_oracle.yml' + pull_request: + +jobs: + trick_32bit_oracle: + runs-on: ubuntu-latest + container: docker://oraclelinux:8 + steps: + - name: Add dnf repo + run: dnf -y install epel-release && dnf -y update + - name: Install other dependencies + run: > + dnf install -y tar bison clang clang-devel cmake diffutils + expat-devel.i686 expat.i686 flex gcc gcc-c++ git glibc-devel.i686 + glibc.i686 glibc.x86_64 gsl-devel gsl-devel.i686 java-11-openjdk + java-11-openjdk-devel libstdc++-devel libstdc++-devel.i686 libxml2-devel + libxml2-devel.i686 llvm llvm-devel llvm-static make maven ncurses-devel + ncurses-devel.i686 openmotif openmotif-devel perl perl-Digest-MD5 + python2-devel python3-devel python3-libs.i686 swig tar udunits2 + udunits2-devel wget which zip zlib-devel zlib-devel.i686 + - name: Symlink python + run: | + ln -s /lib/libpython3.6m.so.1.0 /lib/libpython3.6m.so + - name: Install Udunits (32 bit) + run: | + cd / + curl --retry 4 -O https://artifacts.unidata.ucar.edu/repository/downloads-udunits/current/udunits-2.2.28.tar.gz + tar xfvz udunits-2.2.28.tar.gz + rm -rf udunits-2.2.28.tar.gz + cd udunits-2.2.28 + export CFLAGS="-m32" + export CXXFLAGS="-m32" + export MAKEFLAGS=-j`nproc` + ./configure + make + make install + cd / + rm -rf udunit-2.2.28 + - name: Install GTest: + run: | + dnf config-manager --enable ol8_codeready_builder + dnf install -y gtest-devel + - name: Install GTest (32 bit) + run: | + wget https://github.com/google/googletest/archive/release-1.8.0.tar.gz + tar xfvz release-1.8.0.tar.gz + cd googletest-release-1.8.0/googletest + export CFLAGS="-m32" + export CXXFLAGS="-m32" + export MAKEFLAGS=-j`nproc` + cmake . + make + make install + - name: Checkout repository + uses: actions/checkout@master + - name: Build Trick + run: | + export CFLAGS="-m32" + export CXXFLAGS="-m32" + export MAKEFLAGS=-j`nproc` + ./configure --without-hdf5 --enable-32bit + make + - name: Run tests + run: | + export CFLAGS="-m32" + export CXXFLAGS="-m32" + export MAKEFLAGS=-j`nproc` + make test diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 4eed1072..013f0d85 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -163,7 +163,9 @@ jobs: export MAKEFLAGS=-j`nproc` make - name: Test - run: make test + run: | + export MAKEFLAGS=-j`nproc` + make test - name: Upload Tests uses: actions/upload-artifact@v3.0.0 if: success() || failure() # run this step even if previous step failed @@ -183,30 +185,3 @@ jobs: # share # libexec # retention-days: 1 - -# report: -# needs: [build] -# strategy: -# fail-fast: false -# matrix: -# cfg: -# #-------- Operating Systems ---------------- -# - { os: ubuntu, tag: 18.04, arch: debian, arch_ver: 10 } -# - { os: ubuntu, tag: 20.04, arch: debian, arch_ver: 11 } -# - { os: debian, tag: 10, arch: debian, arch_ver: 10 } -# - { os: debian, tag: 11, arch: debian, arch_ver: 11 } -# - { os: centos, tag: 7, arch: rhel, arch_ver: 7 } -# - { os: rockylinux, tag: 8, arch: rhel, arch_ver: 8 } -# - { os: oraclelinux, tag: 8, arch: rhel, arch_ver: 8 } -# - { os: almalinux, tag: 8, arch: rhel, arch_ver: 8 } -# python: [2, 3] - -# runs-on: ubuntu-latest -# steps: -# - uses: dorny/test-reporter@v1 -# with: -# artifact: Trick_${{matrix.cfg.os}}${{matrix.cfg.tag}}_py${{matrix.python}} # artifact name -# name: Results_Trick_${{matrix.cfg.os}}${{matrix.cfg.tag}}_py${{matrix.python}} # Name of the check run which will be created -# path: '*.xml' # Path to test results (inside artifact .zip) -# reporter: java-junit # Format of test results -