diff options
author | Allen Byrne <50328838+byrnHDF@users.noreply.github.com> | 2023-06-13 03:04:49 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-13 03:04:49 (GMT) |
commit | bfeb1b0dd5b7b2e4a706ff9b9515bba15e673f31 (patch) | |
tree | 28f4028d7e492dd538f043fc8e060f9858920365 /.github/workflows | |
parent | 2af7ea3c22a07cfe617de6c43576a0ff4278f5eb (diff) | |
download | hdf5-bfeb1b0dd5b7b2e4a706ff9b9515bba15e673f31.zip hdf5-bfeb1b0dd5b7b2e4a706ff9b9515bba15e673f31.tar.gz hdf5-bfeb1b0dd5b7b2e4a706ff9b9515bba15e673f31.tar.bz2 |
Fix doxygen and actions - merge from develop (#3109)
* Update the workflows to changes in develop
* Disable java for error only action
* Fix Fortran doxygen
* add fortran alias
* Merge changes from develop to fix actions
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/cmake-ctest.yml | 12 | ||||
-rw-r--r-- | .github/workflows/main.yml | 72 | ||||
-rw-r--r-- | .github/workflows/release.yml | 13 |
3 files changed, 77 insertions, 20 deletions
diff --git a/.github/workflows/cmake-ctest.yml b/.github/workflows/cmake-ctest.yml index 083b595..a113dfa 100644 --- a/.github/workflows/cmake-ctest.yml +++ b/.github/workflows/cmake-ctest.yml @@ -96,7 +96,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Install CMake Dependencies (Linux) - run: sudo apt-get install ninja-build + run: sudo apt-get install ninja-build doxygen graphviz - name: Set file base name (Linux) id: set-file-base @@ -151,6 +151,14 @@ jobs: path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204.tar.gz if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` + # Save doxygen files created by ctest script + - name: Save published doxygen (Linux) + uses: actions/upload-artifact@v3 + with: + name: docs-doxygen + path: ${{ runner.workspace }}/hdf5/build/ci-StdShar-GNUC/hdf5lib_docs/html + if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` + build_and_test_mac: # MacOS w/ Clang + CMake # @@ -158,7 +166,7 @@ jobs: runs-on: macos-11 steps: - name: Install Dependencies (MacOS) - run: brew install ninja + run: brew install ninja doxygen - name: Set file base name (MacOS) id: set-file-base diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index da65941..5dee711 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -81,6 +81,7 @@ jobs: cpp: ON fortran: OFF java: ON + docs: OFF libaecfc: ON localaec: OFF zlibfc: ON @@ -88,6 +89,7 @@ jobs: parallel: OFF mirror_vfd: OFF direct_vfd: OFF + ros3_vfd: OFF generator: "-G \"Visual Studio 17 2022\" -A x64" run_tests: true @@ -100,6 +102,7 @@ jobs: cpp: ON fortran: ON java: ON + docs: ON libaecfc: ON localaec: OFF zlibfc: ON @@ -107,6 +110,7 @@ jobs: parallel: OFF mirror_vfd: ON direct_vfd: ON + ros3_vfd: OFF toolchain: "config/toolchain/gcc.cmake" generator: "-G Ninja" run_tests: true @@ -120,9 +124,11 @@ jobs: cpp: enable fortran: enable java: enable + docs: disable parallel: disable mirror_vfd: enable direct_vfd: enable + ros3_vfd: enable deprec_sym: enable default_api: v114 szip: yes @@ -141,9 +147,11 @@ jobs: cpp: disable fortran: enable java: disable + docs: disable parallel: enable mirror_vfd: disable direct_vfd: disable + ros3_vfd: disable deprec_sym: enable default_api: v114 szip: yes @@ -157,10 +165,11 @@ jobs: # We could also build with the Autotools via brew installing them, # but that seems unnecessary - name: "MacOS Clang CMake" - os: macos-11 + os: macos-13 cpp: ON fortran: OFF java: ON + docs: OFF libaecfc: ON localaec: OFF zlibfc: ON @@ -168,6 +177,7 @@ jobs: parallel: OFF mirror_vfd: ON direct_vfd: OFF + ros3_vfd: OFF toolchain: "config/toolchain/clang.cmake" generator: "-G Ninja" run_tests: true @@ -186,9 +196,11 @@ jobs: cpp: enable fortran: enable java: enable + docs: disable parallel: disable mirror_vfd: enable direct_vfd: enable + ros3_vfd: enable deprec_sym: enable default_api: v16 szip: yes @@ -209,9 +221,11 @@ jobs: cpp: enable fortran: enable java: enable + docs: disable parallel: disable mirror_vfd: enable direct_vfd: enable + ros3_vfd: enable deprec_sym: enable default_api: v18 szip: yes @@ -232,9 +246,11 @@ jobs: cpp: enable fortran: enable java: enable + docs: disable parallel: disable mirror_vfd: enable direct_vfd: enable + ros3_vfd: enable deprec_sym: enable default_api: v110 szip: yes @@ -255,9 +271,11 @@ jobs: cpp: enable fortran: enable java: enable + docs: disable parallel: disable mirror_vfd: enable direct_vfd: enable + ros3_vfd: enable deprec_sym: enable default_api: v112 szip: yes @@ -278,9 +296,11 @@ jobs: cpp: enable fortran: enable java: enable + docs: disable parallel: disable mirror_vfd: enable direct_vfd: enable + ros3_vfd: enable deprec_sym: disable default_api: default szip: yes @@ -302,9 +322,11 @@ jobs: cpp: enable fortran: disable java: disable + docs: disable parallel: disable mirror_vfd: disable direct_vfd: enable + ros3_vfd: disable deprec_sym: enable default_api: v114 szip: yes @@ -326,9 +348,11 @@ jobs: cpp: enable fortran: disable java: disable + docs: disable parallel: disable mirror_vfd: disable direct_vfd: enable + ros3_vfd: disable deprec_sym: enable default_api: v114 szip: yes @@ -350,9 +374,11 @@ jobs: cpp: disable fortran: disable java: disable + docs: disable parallel: enable mirror_vfd: disable direct_vfd: enable + ros3_vfd: disable deprec_sym: enable default_api: v114 toolchain: "" @@ -373,9 +399,11 @@ jobs: cpp: disable fortran: disable java: disable + docs: disable parallel: enable mirror_vfd: disable direct_vfd: enable + ros3_vfd: disable deprec_sym: enable default_api: v114 toolchain: "" @@ -411,17 +439,18 @@ jobs: run: echo '${{ toJSON(matrix) }}' - name: Install CMake Dependencies (Linux) - run: sudo apt-get install ninja-build + run: sudo apt-get install ninja-build doxygen graphviz if: matrix.os == 'ubuntu-latest' - name: Install Autotools Dependencies (Linux, serial) run: | sudo apt update sudo apt install automake autoconf libtool libtool-bin - sudo apt install gcc-11 g++-11 gfortran-11 - echo "CC=gcc-11" >> $GITHUB_ENV - echo "CXX=g++-11" >> $GITHUB_ENV - echo "FC=gfortran-11" >> $GITHUB_ENV + sudo apt install gcc-12 g++-12 gfortran-12 + sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev + echo "CC=gcc-12" >> $GITHUB_ENV + echo "CXX=g++-12" >> $GITHUB_ENV + echo "FC=gfortran-12" >> $GITHUB_ENV sudo apt install libaec0 libaec-dev if: (matrix.generator == 'autogen') && (matrix.parallel != 'enable') @@ -440,8 +469,8 @@ jobs: if: matrix.os == 'windows-latest' - name: Install Dependencies (macOS) - run: brew install ninja - if: matrix.os == 'macos-11' + run: brew install ninja doxygen + if: matrix.os == 'macos-13' - name: Set environment for MSVC (Windows) run: | @@ -463,7 +492,7 @@ jobs: sh ./autogen.sh mkdir "${{ runner.workspace }}/build" cd "${{ runner.workspace }}/build" - ${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_mode.autotools }} --${{ matrix.deprec_sym }}-deprecated-symbols --with-default-api-version=${{ matrix.default_api }} --enable-shared --${{ matrix.parallel }}-parallel --${{ matrix.cpp }}-cxx --${{ matrix.fortran }}-fortran --${{ matrix.java }}-java --${{ matrix.mirror_vfd }}-mirror-vfd --${{ matrix.direct_vfd }}-direct-vfd --with-szlib=${{ matrix.szip }} + ${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_mode.autotools }} --${{ matrix.deprec_sym }}-deprecated-symbols --with-default-api-version=${{ matrix.default_api }} --enable-shared --${{ matrix.parallel }}-parallel --${{ matrix.cpp }}-cxx --${{ matrix.fortran }}-fortran --${{ matrix.java }}-java --${{ matrix.mirror_vfd }}-mirror-vfd --${{ matrix.direct_vfd }}-direct-vfd --${{ matrix.ros3_vfd }}-ros3-vfd --with-szlib=${{ matrix.szip }} shell: bash if: (matrix.generator == 'autogen') && ! (matrix.thread_safety.enabled) @@ -472,7 +501,7 @@ jobs: sh ./autogen.sh mkdir "${{ runner.workspace }}/build" cd "${{ runner.workspace }}/build" - ${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_mode.autotools }} --enable-shared --enable-threadsafe --disable-hl --${{ matrix.parallel }}-parallel --${{ matrix.mirror_vfd }}-mirror-vfd --${{ matrix.direct_vfd }}-direct-vfd --with-szlib=${{ matrix.szip }} + ${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_mode.autotools }} --enable-shared --enable-threadsafe --disable-hl --${{ matrix.parallel }}-parallel --${{ matrix.mirror_vfd }}-mirror-vfd --${{ matrix.direct_vfd }}-direct-vfd --${{ matrix.ros3_vfd }}-ros3-vfd --with-szlib=${{ matrix.szip }} shell: bash if: (matrix.generator == 'autogen') && (matrix.thread_safety.enabled) @@ -484,7 +513,7 @@ jobs: run: | mkdir "${{ runner.workspace }}/build" cd "${{ runner.workspace }}/build" - cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake ${{ matrix.generator }} -DCMAKE_BUILD_TYPE=${{ matrix.build_mode.cmake }} -DCMAKE_TOOLCHAIN_FILE=${{ matrix.toolchain }} -DBUILD_SHARED_LIBS=ON -DHDF5_ENABLE_ALL_WARNINGS=ON -DHDF5_ENABLE_PARALLEL:BOOL=${{ matrix.parallel }} -DHDF5_BUILD_CPP_LIB:BOOL=${{ matrix.cpp }} -DHDF5_BUILD_FORTRAN=${{ matrix.fortran }} -DHDF5_BUILD_JAVA=${{ matrix.java }} -DBUILD_SZIP_WITH_FETCHCONTENT=${{ matrix.libaecfc }} -DLIBAEC_USE_LOCALCONTENT=${{ matrix.localaec }} -DBUILD_ZLIB_WITH_FETCHCONTENT=${{ matrix.zlibfc }} -DZLIB_USE_LOCALCONTENT=${{ matrix.localzlib }} -DHDF5_ENABLE_MIRROR_VFD:BOOL=${{ matrix.mirror_vfd }} -DHDF5_ENABLE_DIRECT_VFD:BOOL=${{ matrix.direct_vfd }} $GITHUB_WORKSPACE + cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake ${{ matrix.generator }} -DCMAKE_BUILD_TYPE=${{ matrix.build_mode.cmake }} -DCMAKE_TOOLCHAIN_FILE=${{ matrix.toolchain }} -DBUILD_SHARED_LIBS=ON -DHDF5_ENABLE_ALL_WARNINGS=ON -DHDF5_ENABLE_PARALLEL:BOOL=${{ matrix.parallel }} -DHDF5_BUILD_CPP_LIB:BOOL=${{ matrix.cpp }} -DHDF5_BUILD_FORTRAN=${{ matrix.fortran }} -DHDF5_BUILD_JAVA=${{ matrix.java }} -DHDF5_BUILD_DOC=${{ matrix.docs }} -DBUILD_SZIP_WITH_FETCHCONTENT=${{ matrix.libaecfc }} -DLIBAEC_USE_LOCALCONTENT=${{ matrix.localaec }} -DBUILD_ZLIB_WITH_FETCHCONTENT=${{ matrix.zlibfc }} -DZLIB_USE_LOCALCONTENT=${{ matrix.localzlib }} -DHDF5_ENABLE_MIRROR_VFD:BOOL=${{ matrix.mirror_vfd }} -DHDF5_ENABLE_DIRECT_VFD:BOOL=${{ matrix.direct_vfd }} -DHDF5_ENABLE_ROS3_VFD:BOOL=${{ matrix.ros3_vfd }} $GITHUB_WORKSPACE shell: bash if: (matrix.generator != 'autogen') && ! (matrix.thread_safety.enabled) @@ -493,7 +522,7 @@ jobs: run: | mkdir "${{ runner.workspace }}/build" cd "${{ runner.workspace }}/build" - cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake ${{ matrix.generator }} -DCMAKE_BUILD_TYPE=${{ matrix.build_mode.cmake }} -DCMAKE_TOOLCHAIN_FILE=${{ matrix.toolchain }} -DBUILD_SHARED_LIBS=ON -DHDF5_ENABLE_ALL_WARNINGS=ON -DHDF5_ENABLE_THREADSAFE:BOOL=ON -DHDF5_ENABLE_PARALLEL:BOOL=${{ matrix.parallel }} -DHDF5_BUILD_CPP_LIB:BOOL=OFF -DHDF5_BUILD_FORTRAN:BOOL=OFF -DHDF5_BUILD_JAVA:BOOL=OFF -DHDF5_BUILD_HL_LIB:BOOL=OFF -DBUILD_SZIP_WITH_FETCHCONTENT=${{ matrix.libaecfc }} -DLIBAEC_USE_LOCALCONTENT=${{ matrix.localaec }} -DBUILD_ZLIB_WITH_FETCHCONTENT=${{ matrix.zlibfc }} -DZLIB_USE_LOCALCONTENT=${{ matrix.localzlib }} -DHDF5_ENABLE_MIRROR_VFD:BOOL=${{ matrix.mirror_vfd }} -DHDF5_ENABLE_DIRECT_VFD:BOOL=${{ matrix.direct_vfd }} $GITHUB_WORKSPACE + cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake ${{ matrix.generator }} -DCMAKE_BUILD_TYPE=${{ matrix.build_mode.cmake }} -DCMAKE_TOOLCHAIN_FILE=${{ matrix.toolchain }} -DBUILD_SHARED_LIBS=ON -DHDF5_ENABLE_ALL_WARNINGS=ON -DHDF5_ENABLE_THREADSAFE:BOOL=ON -DHDF5_ENABLE_PARALLEL:BOOL=${{ matrix.parallel }} -DHDF5_BUILD_CPP_LIB:BOOL=OFF -DHDF5_BUILD_FORTRAN:BOOL=OFF -DHDF5_BUILD_JAVA:BOOL=OFF -DHDF5_BUILD_HL_LIB:BOOL=OFF -DHDF5_BUILD_DOC=OFF -DBUILD_SZIP_WITH_FETCHCONTENT=${{ matrix.libaecfc }} -DLIBAEC_USE_LOCALCONTENT=${{ matrix.localaec }} -DBUILD_ZLIB_WITH_FETCHCONTENT=${{ matrix.zlibfc }} -DZLIB_USE_LOCALCONTENT=${{ matrix.localzlib }} -DHDF5_ENABLE_MIRROR_VFD:BOOL=${{ matrix.mirror_vfd }} -DHDF5_ENABLE_DIRECT_VFD:BOOL=${{ matrix.direct_vfd }} -DHDF5_ENABLE_ROS3_VFD:BOOL=${{ matrix.ros3_vfd }} $GITHUB_WORKSPACE shell: bash if: (matrix.generator != 'autogen') && (matrix.thread_safety.enabled) @@ -523,10 +552,23 @@ jobs: if: (matrix.generator == 'autogen') && (matrix.run_tests) && ! (matrix.thread_safety.enabled) - name: CMake Run Tests - run: ctest --build . --parallel 2 -C ${{ matrix.build_mode.cmake }} -V + run: ctest . --parallel 2 -C ${{ matrix.build_mode.cmake }} -V working-directory: ${{ runner.workspace }}/build - # Skip Debug MSVC while we investigate H5L Java test timeouts - if: (matrix.generator != 'autogen') && (matrix.run_tests) && ! ((matrix.name == 'Windows MSVC CMake') && (matrix.build_mode.cmake == 'Debug')) + if: (matrix.generator != 'autogen') && (matrix.run_tests) && ! (matrix.thread_safety.enabled) + + # THREAD-SAFE + + - name: Autotools Run Thread-Safe Tests + run: | + cd test + ./ttsafe + working-directory: ${{ runner.workspace }}/build + if: (matrix.generator == 'autogen') && (matrix.run_tests) && (matrix.thread_safety.enabled) + + - name: CMake Run Thread-Safe Tests + run: ctest . --parallel 2 -C ${{ matrix.build_mode.cmake }} -V -R ttsafe + working-directory: ${{ runner.workspace }}/build + if: (matrix.generator != 'autogen') && (matrix.run_tests) && (matrix.thread_safety.enabled) # # INSTALL (note that this runs even when we don't run the tests) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 16285d6..ac22bdd 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -48,13 +48,19 @@ jobs: getfiles: runs-on: ubuntu-latest steps: - - name: Set file base name - id: set-file-base + - name: Get file base name + id: get-file-base run: | FILE_NAME_BASE=$(echo "${{ inputs.file_base }}") echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT # Get files created by tarball script + - name: Get doxygen (Linux) + uses: actions/download-artifact@v3 + with: + name: docs-doxygen + path: ${{ github.workspace }}/${{ steps.get-file-base.outputs.FILE_BASE }}.doxygen + - name: Get tgz-tarball (Linux) uses: actions/download-artifact@v3 with: @@ -95,7 +101,7 @@ jobs: permissions: contents: write steps: - - name: Set file base name + - name: Get file base name id: get-file-base run: | FILE_NAME_BASE=$(echo "${{ inputs.file_base }}") @@ -107,6 +113,7 @@ jobs: tag_name: "snapshot" prerelease: true files: | + ${{ steps.get-file-base.outputs.FILE_BASE }}.doxygen ${{ steps.get-file-base.outputs.FILE_BASE }}.tar.gz ${{ steps.get-file-base.outputs.FILE_BASE }}.zip ${{ steps.get-file-base.outputs.FILE_BASE }}-osx12.tar.gz |