From 221ba1307f8525ff14e4a9e9bf217474905d9bf6 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 11 Jun 2024 13:45:07 -0500 Subject: [PATCH 1/3] Add publish to bucket workflow --- .github/workflows/publish-release.yml | 57 +++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 .github/workflows/publish-release.yml diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml new file mode 100644 index 00000000000..d4ebbc649ad --- /dev/null +++ b/.github/workflows/publish-release.yml @@ -0,0 +1,57 @@ +name: hdf5 publishrelease + +# Controls when the action will run. Triggers the workflow on a schedule +on: + workflow_dispatch: + inputs: + use_tag: + description: 'HDF5 Release version tag' + type: string + required: true + target_dir: + description: 'HDF5 target bucket directory' + type: string + required: true + permissions: + contents: read + + # A workflow run is made up of one or more jobs that can run sequentially or + # in parallel. +jobs: + publish-tag: + runs-on: ubuntu-latest + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - name: Get Sources + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + with: + fetch-depth: 0 + ref: '${{ github.head_ref || github.ref_name }}' + + - name: Get hdf5 release + uses: dsaltares/fetch-gh-release-asset@master + with: + repo: 'HDFGroup/hdf5' + version: 'tags/${{ inputs.use_tag }}' + regex: true + target: 'HDF5/' + file: '${{ inputs.use_hdf }}-*.*' + + - name: Setup AWS CLI + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ secrets.AWS_REGION }} + + - name: Sync release to S3 bucket + run: | + aws s3 sync ./HDF5 s3://${{ secrets.AWS_S3_BUCKET }}/${{ vars.TARGET_PATH }}/${{ inputs.target_dir }}/downloads --delete + + - name: Uncompress source (Linux) + run: tar -zxvf ${{ github.workspace }}/${{ inputs.use_hdf }}.doxygen.tar.gz + + - name: Sync userguide to S3 bucket + run: | + aws s3 sync ./doxygen s3://${{ secrets.AWS_S3_BUCKET }}/${{ vars.TARGET_PATH }}/${{ inputs.target_dir }}/documentation --delete + From a9dc2d9098d608ea841c93086cfc66ba20ecb39a Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Fri, 14 Jun 2024 09:59:36 -0500 Subject: [PATCH 2/3] Update workflow comments --- .github/workflows/autotools.yml | 5 +---- .github/workflows/cmake.yml | 5 +---- .github/workflows/cve.yml | 1 + .github/workflows/daily-build.yml | 4 +--- .github/workflows/h5py.yml | 2 ++ .github/workflows/hdfeos5.yml | 1 + .github/workflows/markdown-link-check.yml | 1 + .github/workflows/netcdf.yml | 1 + .github/workflows/publish-release.yml | 6 ++---- .github/workflows/release.yml | 4 +--- .github/workflows/vfd.yml | 2 +- .github/workflows/vol.yml | 2 +- 12 files changed, 14 insertions(+), 20 deletions(-) diff --git a/.github/workflows/autotools.yml b/.github/workflows/autotools.yml index fe81ed2c66b..a430dc6b51c 100644 --- a/.github/workflows/autotools.yml +++ b/.github/workflows/autotools.yml @@ -1,6 +1,6 @@ name: hdf5 dev autotools CI -# Controls when the action will run. Triggers the workflow on push or pull request +# Triggers the workflow on push or pull request or on demand on: workflow_dispatch: push: @@ -23,9 +23,6 @@ concurrency: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel. We just have one job, but the matrix items defined below will -# run in parallel. jobs: call-workflow-special-autotools: name: "Autotools Special Workflows" diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 72ee90f3bab..21d201922de 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -1,6 +1,6 @@ name: hdf5 dev cmake CI -# Controls when the action will run. Triggers the workflow on push or pull request +# Triggers the workflow on push or pull request or on demand on: workflow_dispatch: push: @@ -23,9 +23,6 @@ concurrency: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel. We just have one job, but the matrix items defined below will -# run in parallel. jobs: call-workflow-special-cmake: name: "CMake Special Workflows" diff --git a/.github/workflows/cve.yml b/.github/workflows/cve.yml index b0564d84247..93b1ae9894b 100644 --- a/.github/workflows/cve.yml +++ b/.github/workflows/cve.yml @@ -1,5 +1,6 @@ name: cve dev +# Triggers the workflow on push or pull request or on demand on: workflow_dispatch: push: diff --git a/.github/workflows/daily-build.yml b/.github/workflows/daily-build.yml index fac360e7884..3e5b3a5c3b5 100644 --- a/.github/workflows/daily-build.yml +++ b/.github/workflows/daily-build.yml @@ -1,6 +1,6 @@ name: hdf5 dev daily build -# Controls when the action will run. Triggers the workflow on a schedule +# Triggers the workflow on a schedule or on demand on: workflow_dispatch: schedule: @@ -9,8 +9,6 @@ on: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel. jobs: get-old-names: runs-on: ubuntu-latest diff --git a/.github/workflows/h5py.yml b/.github/workflows/h5py.yml index 0497a75884c..346eeef2856 100644 --- a/.github/workflows/h5py.yml +++ b/.github/workflows/h5py.yml @@ -1,4 +1,6 @@ name: h5py + +# Triggers the workflow on a schedule or on demand on: workflow_dispatch: schedule: diff --git a/.github/workflows/hdfeos5.yml b/.github/workflows/hdfeos5.yml index 19692b75196..97453e5f397 100644 --- a/.github/workflows/hdfeos5.yml +++ b/.github/workflows/hdfeos5.yml @@ -1,5 +1,6 @@ name: hdfeos5 dev +# Triggers the workflow on push or pull request or on demand on: workflow_dispatch: push: diff --git a/.github/workflows/markdown-link-check.yml b/.github/workflows/markdown-link-check.yml index 6a18f0b5bd4..d43505d99e8 100644 --- a/.github/workflows/markdown-link-check.yml +++ b/.github/workflows/markdown-link-check.yml @@ -1,5 +1,6 @@ name: Check Markdown links +# Triggers the workflow on push or pull request or on demand on: workflow_dispatch: push: diff --git a/.github/workflows/netcdf.yml b/.github/workflows/netcdf.yml index d7ab2219297..ca32cf38480 100644 --- a/.github/workflows/netcdf.yml +++ b/.github/workflows/netcdf.yml @@ -1,5 +1,6 @@ name: netCDF dev +# Triggers the workflow on push or pull request or on demand on: workflow_dispatch: push: diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index d4ebbc649ad..2139edff20d 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -1,6 +1,6 @@ name: hdf5 publishrelease -# Controls when the action will run. Triggers the workflow on a schedule +# Triggers the workflow on demand on: workflow_dispatch: inputs: @@ -14,9 +14,7 @@ on: required: true permissions: contents: read - - # A workflow run is made up of one or more jobs that can run sequentially or - # in parallel. + jobs: publish-tag: runs-on: ubuntu-latest diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index aa45a70fe0e..9890c8abb45 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,6 +1,6 @@ name: hdf5 dev release build -# Controls when the action will run. Triggers the workflow on a manual run +# Triggers the workflow on demand on: workflow_dispatch: inputs: @@ -13,8 +13,6 @@ on: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel. jobs: log-the-inputs: runs-on: ubuntu-latest diff --git a/.github/workflows/vfd.yml b/.github/workflows/vfd.yml index 0cf7458518c..46f21256909 100644 --- a/.github/workflows/vfd.yml +++ b/.github/workflows/vfd.yml @@ -1,6 +1,6 @@ name: hdf5 VFD CI -# Run VFD CI daily at 07:00 CDT (12:00 UTC) +# Run VFD CI daily at 07:00 CDT (12:00 UTC) or on demand on: workflow_dispatch: schedule: diff --git a/.github/workflows/vol.yml b/.github/workflows/vol.yml index ac2a9f5c553..92ba43bcf03 100644 --- a/.github/workflows/vol.yml +++ b/.github/workflows/vol.yml @@ -1,6 +1,6 @@ name: hdf5 VOL connectors CI -# Run VOL connector CI daily at 06:00 CDT (11:00 UTC) +# Run VOL connector CI daily at 06:00 CDT (11:00 UTC) or on demand. on: workflow_dispatch: schedule: From 0203c8f164363cbb28cb8b4b7c08e2b3993736e1 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Fri, 14 Jun 2024 10:17:18 -0500 Subject: [PATCH 3/3] Update more comments --- .github/workflows/abi-report.yml | 1 + .github/workflows/aocc-auto.yml | 1 + .github/workflows/aocc-cmake.yml | 1 + .github/workflows/cmake-bintest.yml | 4 +--- .github/workflows/cmake-ctest.yml | 4 +--- .github/workflows/cygwin-auto.yml | 1 + .github/workflows/cygwin-cmake.yml | 1 + .github/workflows/intel-auto.yml | 1 + .github/workflows/intel-cmake.yml | 1 + .github/workflows/main-auto.yml | 5 +---- .github/workflows/main-cmake.yml | 5 +---- .github/workflows/msys2-auto.yml | 1 + .github/workflows/nvhpc-auto.yml | 1 + .github/workflows/nvhpc-cmake.yml | 1 + .github/workflows/release-files.yml | 2 +- .github/workflows/remove-files.yml | 2 +- .github/workflows/tarball.yml | 4 +--- 17 files changed, 17 insertions(+), 19 deletions(-) diff --git a/.github/workflows/abi-report.yml b/.github/workflows/abi-report.yml index 055f373031d..6e0fb02ace7 100644 --- a/.github/workflows/abi-report.yml +++ b/.github/workflows/abi-report.yml @@ -1,5 +1,6 @@ name: hdf5 Check Application Binary Interface (ABI) +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/aocc-auto.yml b/.github/workflows/aocc-auto.yml index c8dee46a16c..466ef1a6a4b 100644 --- a/.github/workflows/aocc-auto.yml +++ b/.github/workflows/aocc-auto.yml @@ -1,5 +1,6 @@ name: hdf5 dev PAR autotools aocc ompi +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/aocc-cmake.yml b/.github/workflows/aocc-cmake.yml index be908be4b1d..4b81bcc3207 100644 --- a/.github/workflows/aocc-cmake.yml +++ b/.github/workflows/aocc-cmake.yml @@ -1,5 +1,6 @@ name: hdf5 dev PAR CMake aocc ompi +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/cmake-bintest.yml b/.github/workflows/cmake-bintest.yml index f777ddca07a..815acfd851d 100644 --- a/.github/workflows/cmake-bintest.yml +++ b/.github/workflows/cmake-bintest.yml @@ -1,6 +1,6 @@ name: hdf5 examples bintest runs -# Controls when the action will run. Triggers the workflow on a schedule +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: @@ -12,8 +12,6 @@ on: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel jobs: test_binary_win: # Windows w/ MSVC + CMake diff --git a/.github/workflows/cmake-ctest.yml b/.github/workflows/cmake-ctest.yml index 32584a16cc1..b7c49490ab1 100644 --- a/.github/workflows/cmake-ctest.yml +++ b/.github/workflows/cmake-ctest.yml @@ -1,6 +1,6 @@ name: hdf5 dev ctest runs -# Controls when the action will run. Triggers the workflow on a call +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: @@ -26,8 +26,6 @@ on: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel jobs: build_and_test_win: # Windows w/ MSVC + CMake diff --git a/.github/workflows/cygwin-auto.yml b/.github/workflows/cygwin-auto.yml index 5075fa28bba..1a889288bc6 100644 --- a/.github/workflows/cygwin-auto.yml +++ b/.github/workflows/cygwin-auto.yml @@ -1,5 +1,6 @@ name: hdf5 dev autotools cygwin +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/cygwin-cmake.yml b/.github/workflows/cygwin-cmake.yml index a04dcbf27d7..37e81f7bc94 100644 --- a/.github/workflows/cygwin-cmake.yml +++ b/.github/workflows/cygwin-cmake.yml @@ -1,5 +1,6 @@ name: hdf5 dev CMake cygwin +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/intel-auto.yml b/.github/workflows/intel-auto.yml index e24b21e2b2f..5e7c9199158 100644 --- a/.github/workflows/intel-auto.yml +++ b/.github/workflows/intel-auto.yml @@ -1,5 +1,6 @@ name: hdf5 dev autotools icx +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/intel-cmake.yml b/.github/workflows/intel-cmake.yml index 4532ca4ec42..14858ad3652 100644 --- a/.github/workflows/intel-cmake.yml +++ b/.github/workflows/intel-cmake.yml @@ -1,5 +1,6 @@ name: hdf5 dev CMake icx +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/main-auto.yml b/.github/workflows/main-auto.yml index 978b48ff1aa..fec1bff5726 100644 --- a/.github/workflows/main-auto.yml +++ b/.github/workflows/main-auto.yml @@ -1,6 +1,6 @@ name: hdf5 dev autotools CI -# Controls when the action will run. Triggers the workflow on a call +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: @@ -16,9 +16,6 @@ on: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel. We just have one job, but the matrix items defined below will -# run in parallel. jobs: # A workflow that builds the library and runs all the tests diff --git a/.github/workflows/main-cmake.yml b/.github/workflows/main-cmake.yml index 7bc88d3006c..b9c59131de9 100644 --- a/.github/workflows/main-cmake.yml +++ b/.github/workflows/main-cmake.yml @@ -1,6 +1,6 @@ name: hdf5 dev CMake CI -# Controls when the action will run. Triggers the workflow on a call +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: @@ -17,9 +17,6 @@ on: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel. We just have one job, but the matrix items defined below will -# run in parallel. jobs: # A workflow that builds the library and runs all the tests diff --git a/.github/workflows/msys2-auto.yml b/.github/workflows/msys2-auto.yml index 4ea2da82c91..12c75f251c1 100644 --- a/.github/workflows/msys2-auto.yml +++ b/.github/workflows/msys2-auto.yml @@ -1,5 +1,6 @@ name: hdf5 dev Autotools MSys2 +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/nvhpc-auto.yml b/.github/workflows/nvhpc-auto.yml index 1d003c2b156..85798bcde0d 100644 --- a/.github/workflows/nvhpc-auto.yml +++ b/.github/workflows/nvhpc-auto.yml @@ -1,5 +1,6 @@ name: hdf5 dev autotools nvhpc +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/nvhpc-cmake.yml b/.github/workflows/nvhpc-cmake.yml index 4fb340716f2..36ba5cce234 100644 --- a/.github/workflows/nvhpc-cmake.yml +++ b/.github/workflows/nvhpc-cmake.yml @@ -1,5 +1,6 @@ name: hdf5 dev CMake nvhpc +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/release-files.yml b/.github/workflows/release-files.yml index d1e74627ec9..cdcfdb66b2f 100644 --- a/.github/workflows/release-files.yml +++ b/.github/workflows/release-files.yml @@ -1,6 +1,6 @@ name: hdf5 dev release-files -# Controls when the action will run. Triggers the workflow on a schedule +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/remove-files.yml b/.github/workflows/remove-files.yml index 760a08592f5..488515f0d0c 100644 --- a/.github/workflows/remove-files.yml +++ b/.github/workflows/remove-files.yml @@ -1,6 +1,6 @@ name: hdf5 dev remove-files -# Controls when the action will run. Triggers the workflow on a schedule +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: diff --git a/.github/workflows/tarball.yml b/.github/workflows/tarball.yml index 26679160290..41774a8a7d3 100644 --- a/.github/workflows/tarball.yml +++ b/.github/workflows/tarball.yml @@ -1,6 +1,6 @@ name: hdf5 dev tarball -# Controls when the action will run. Triggers the workflow on a schedule +# Triggers the workflow on a call from another workflow on: workflow_call: inputs: @@ -34,8 +34,6 @@ on: permissions: contents: read -# A workflow run is made up of one or more jobs that can run sequentially or -# in parallel jobs: check_commits: name: Check for recent commits