Skip to content

Commit

Permalink
Merge branch 'main' into next
Browse files Browse the repository at this point in the history
  • Loading branch information
WardF authored Jul 31, 2023
2 parents ec6471e + aee19e2 commit dc3c45e
Show file tree
Hide file tree
Showing 662 changed files with 21,232 additions and 71,950 deletions.
15 changes: 7 additions & 8 deletions .github/workflows/run_tests_osx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.12.2, 1.14.0 ]

steps:

Expand Down Expand Up @@ -54,8 +54,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
#hdf5: [ 1.8.21, 1.10.1, 1.10.7, 1.12.2 ]
hdf5: [ 1.12.2, 1.14.0 ]
use_nc4: [ nc3, nc4 ]
use_dap: [ dap_off, dap_on ]
use_nczarr: [ nczarr_off, nczarr_on ]
Expand Down Expand Up @@ -161,7 +160,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.12.2, 1.14.0 ]
use_nc4: [ nc3, nc4 ]
use_dap: [ dap_off, dap_on ]
use_nczarr: [ nczarr_off, nczarr_on ]
Expand Down Expand Up @@ -257,7 +256,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.12.2, 1.14.0 ]
steps:

- uses: actions/checkout@v3
Expand Down Expand Up @@ -300,7 +299,7 @@ jobs:

- name: Configure
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf5 --enable-dap --disable-dap-remote-tests
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf5 --enable-dap --disable-dap-remote-tests --disable-xml2
if: ${{ success() }}

- name: Look at config.log if error
Expand Down Expand Up @@ -338,7 +337,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.12.2, 1.14.0 ]

steps:

Expand Down Expand Up @@ -375,7 +374,7 @@ jobs:
run: |
mkdir build
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} cmake .. -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -DENABLE_DAP=TRUE -DENABLE_HDF5=TRUE -DENABLE_NCZARR=TRUE -D ENABLE_DAP_LONG_TESTS=TRUE
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} cmake .. -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -DENABLE_DAP=TRUE -DENABLE_HDF5=TRUE -DENABLE_NCZARR=TRUE -D ENABLE_DAP_LONG_TESTS=TRUE -DENABLE_XML2=FALSE
- name: Print Summary
shell: bash -l {0}
Expand Down
153 changes: 153 additions & 0 deletions .github/workflows/run_tests_s3.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
###
# Test S3 Support
# -- derived from run_tests_ubuntu.yml
###

###
# Build hdf5 dependencies and cache them in a combined directory.
###

name: Run S3 netCDF Tests (under Ubuntu Linux)

on: [workflow_dispatch]

jobs:

build-deps-serial:

runs-on: ubuntu-latest

strategy:
matrix:
hdf5: [ 1.10.8, 1.12.2, 1.14.0 ]

steps:
- uses: actions/checkout@v3

- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev

###
# Installing libhdf5
###
- name: Cache libhdf5-${{ matrix.hdf5 }}
id: cache-hdf5
uses: actions/cache@v3
with:
path: ~/environments/${{ matrix.hdf5 }}
key: hdf5-${{ runner.os }}-${{ matrix.hdf5 }}


- name: Build libhdf5-${{ matrix.hdf5 }}
if: steps.cache-hdf5.outputs.cache-hit != 'true'
run: |
set -x
wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-$(echo ${{ matrix.hdf5 }} | cut -d. -f 1,2)/hdf5-${{ matrix.hdf5 }}/src/hdf5-${{ matrix.hdf5 }}.tar.bz2
tar -jxf hdf5-${{ matrix.hdf5 }}.tar.bz2
pushd hdf5-${{ matrix.hdf5 }}
./configure --disable-static --enable-shared --prefix=${HOME}/environments/${{ matrix.hdf5 }} --enable-hl --with-szlib
make -j
make install -j
popd
#####
# S3 Autotools-based tests.
#####
##
# Serial
##
nc-ac-tests-s3-serial:

needs: build-deps-serial
runs-on: ubuntu-latest

strategy:
matrix:
hdf5: [ 1.14.0 ]
steps:

- uses: actions/checkout@v3

- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev openssl libssl-dev

###
# Set Environmental Variables
###

- run: echo "CFLAGS=-I${HOME}/environments/${{ matrix.hdf5 }}/include" >> $GITHUB_ENV
- run: echo "LDFLAGS=-L${HOME}/environments/${{ matrix.hdf5 }}/lib" >> $GITHUB_ENV
- run: echo "LD_LIBRARY_PATH=${HOME}/environments/${{ matrix.hdf5 }}/lib" >> $GITHUB_ENV


###
# Fetch Cache
###

- name: Fetch HDF Cache
id: cache-hdf
uses: actions/cache@v3
with:
path: ~/environments/${{ matrix.hdf5 }}
key: hdf5-${{ runner.os }}-${{ matrix.hdf5 }}

- name: Check Cache
shell: bash -l {0}
run: ls ${HOME}/environments && ls ${HOME}/environments/${{ matrix.hdf5 }} && ls ${HOME}/environments/${{ matrix.hdf5}}/lib

###
# Configure and build
###

- name: Run autoconf
shell: bash -l {0}
run: autoreconf -if

- name: Configure
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf5 --disable-dap --enable-external-server-tests --enable-s3 --enable-s3-internal --with-s3-testing=public
if: ${{ success() }}

- name: Look at config.log if error
shell: bash -l {0}
run: cat config.log
if: ${{ failure() }}

- name: Print Summary
shell: bash -l {0}
run: cat libnetcdf.settings

- name: Build Library and Utilities
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make -j
if: ${{ success() }}

- name: Build Tests
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make check TESTS="" -j
if: ${{ success() }}

- name: Run Tests
shell: bash -l {0}
env:
AWS_PROFILE: ${{ secrets.DEFAULT_PROFILE }}
run: |
mkdir -p ~/.aws
echo "" > ~/.aws/config
chmod go-x ~/.aws/config
echo "${AWS_PROFILE}" >> ~/.aws/config
LD_LIBRARY_PATH="/home/runner/work/netcdf-c/netcdf-c/liblib/.libs:${LD_LIBRARY_PATH}"
CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make check -j
if: ${{ success() }}

#####
# S3 CMake-based tests.
#####
##
# Serial
##
# T.B.D. nc-cmake-tests-s3-serial:
32 changes: 16 additions & 16 deletions .github/workflows/run_tests_ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,14 @@ jobs:

strategy:
matrix:
hdf5: [ 1.8.22, 1.10.8, 1.12.2 ]
hdf5: [ 1.10.8, 1.12.2, 1.14.0 ]

steps:

- uses: actions/checkout@v3

- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev doxygen
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev doxygen openssl

###
# Installing libhdf5
Expand Down Expand Up @@ -63,7 +62,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.14.0 ]

steps:

Expand Down Expand Up @@ -125,14 +124,14 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.14.0 ]
steps:

- uses: actions/checkout@v3

- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev doxygen
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev doxygen valgrind

###
# Set Environmental Variables
Expand Down Expand Up @@ -168,7 +167,7 @@ jobs:

- name: Configure
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf5 --enable-dap --disable-dap-remote-tests --enable-doxygen --enable-external-server-tests
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf5 --enable-dap --disable-dap-remote-tests --enable-doxygen --enable-external-server-tests --disable-xml2
if: ${{ success() }}

- name: Look at config.log if error
Expand All @@ -192,7 +191,9 @@ jobs:

- name: Run Tests
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make check -j
run: |
LD_LIBRARY_PATH="/home/runner/work/netcdf-c/netcdf-c/liblib/.libs:${LD_LIBRARY_PATH}"
CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make check -j
if: ${{ success() }}

##
Expand All @@ -205,7 +206,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.14.0 ]
steps:

- uses: actions/checkout@v3
Expand Down Expand Up @@ -285,7 +286,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.14.0 ]

steps:

Expand Down Expand Up @@ -326,7 +327,7 @@ jobs:
run: |
mkdir build
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} cmake .. -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -DENABLE_DAP=TRUE -DENABLE_HDF5=TRUE -DENABLE_NCZARR=TRUE -D ENABLE_DAP_LONG_TESTS=TRUE
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} cmake .. -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -DENABLE_DAP=TRUE -DENABLE_HDF5=TRUE -DENABLE_NCZARR=TRUE -DENABLE_DAP_LONG_TESTS=TRUE -DENABLE_XML2=FALSE
- name: Print Summary
shell: bash -l {0}
Expand Down Expand Up @@ -365,7 +366,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.12.2 ]
hdf5: [ 1.14.0 ]

steps:

Expand Down Expand Up @@ -442,7 +443,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.8.22, 1.10.8, 1.12.2 ]
hdf5: [1.10.8, 1.12.2, 1.14.0 ]
use_nc4: [ nc3, nc4 ]
use_dap: [ dap_off, dap_on ]
use_nczarr: [ nczarr_off, nczarr_on ]
Expand Down Expand Up @@ -541,7 +542,7 @@ jobs:

strategy:
matrix:
hdf5: [ 1.8.22, 1.10.8, 1.12.2 ]
hdf5: [ 1.10.8, 1.12.2, 1.14.0 ]
use_nc4: [ nc3, nc4 ]
use_dap: [ dap_off, dap_on ]
use_nczarr: [ nczarr_off, nczarr_on ]
Expand Down Expand Up @@ -588,7 +589,7 @@ jobs:

- name: Check Cache
shell: bash -l {0}
run: ls ${HOME}/environments && ls ${HOME}/environments/${{ matrix.hdf5 }} && ls ${HOME}/environments/${{ matrix.hdf5}}/lib
run: ls ${HOME}/environments/${{ matrix.hdf5 }} && ls ${HOME}/environments/${{ matrix.hdf5}}/lib

###
# Configure and build
Expand Down Expand Up @@ -627,4 +628,3 @@ jobs:
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ctest -j 12 --rerun-failed --output-on-failure -VV
if: ${{ failure() }}

14 changes: 11 additions & 3 deletions .github/workflows/run_tests_win_cygwin.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ jobs:
shell: bash -eo pipefail -o igncr "{0}"

name: Cygwin-based Autotools tests

strategy:
matrix:
plugin_dir_option: ["", "--without-plugin-dir"]

steps:
- name: Fix line endings
Expand All @@ -30,6 +34,7 @@ jobs:
libhdf4-devel zipinfo libxml2-devel perl zlib-devel
libzstd-devel libbz2-devel libaec-devel libzip-devel
libdeflate-devel gcc-core libcurl-devel libiconv-devel
libssl-devel libcrypt-devel
- name: (Autotools) Run autoconf and friends
run: |
Expand All @@ -42,8 +47,10 @@ jobs:
run: >-
/bin/dash ./configure --enable-hdf5 --enable-shared
--disable-static --enable-dap --disable-dap-remote-tests
--enable-plugins --disable-nczarr-filters
--disable-nczarr-s3 --disable-nczarr-s3-tests --disable-nczarr
--enable-plugins ${{ matrix.plugin_dir_option }}
--disable-nczarr --disable-nczarr-filters
--disable-s3 --with-s3-testing=no
- name: Look at config.log if error
if: ${{ failure() }}
Expand All @@ -66,4 +73,5 @@ jobs:
- name: (Autotools) Build and run tests
timeout-minutes: 30
run: make check -j8 SHELL=/bin/dash
run: |
make check -j8 SHELL=/bin/dash
Loading

0 comments on commit dc3c45e

Please sign in to comment.