Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correct the URL for registered filters #91

Merged
merged 10 commits into from
Mar 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 57 additions & 34 deletions .github/workflows/cmake-ctest.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: hdf5 plugins ctest runs

# Controls when the action will run. Triggers the workflow on a schedule
# Controls when the action will run. Triggers the workflow on a call
on:
workflow_call:
inputs:
Expand All @@ -12,6 +12,10 @@ on:
description: "The common base name of the source tarballs"
required: true
type: string
preset_name:
description: "The common base name of the preset configuration name to control the build"
required: true
type: string
use_environ:
description: 'Environment to locate files'
type: string
Expand All @@ -21,8 +25,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
Expand All @@ -44,18 +46,18 @@ jobs:
with:
repo: 'HDFGroup/hdf5'
version: 'tags/snapshot'
file: '${{ inputs.use_hdf }}-win_vs2022.zip'
file: '${{ inputs.use_hdf }}-win-vs2022_cl.zip'

- name: Get hdf5 release
if: ${{ (inputs.use_environ == 'release') }}
uses: dsaltares/fetch-gh-release-asset@master
with:
repo: 'HDFGroup/hdf5'
version: 'tags/${{ inputs.use_hdf }}'
file: '${{ inputs.use_hdf }}-win_vs2022.zip'
file: '${{ inputs.use_hdf }}-win-vs2022_cl.zip'

- name: Uncompress gh binary (Win)
run: 7z x ${{ github.workspace }}/${{ inputs.use_hdf }}-win_vs2022.zip
run: 7z x ${{ github.workspace }}/${{ inputs.use_hdf }}-win-vs2022_cl.zip

- name: Uncompress hdf5 binary (Win)
working-directory: ${{ github.workspace }}/hdf5
Expand Down Expand Up @@ -92,11 +94,18 @@ jobs:
run: |
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}")
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT
if [[ '${{ inputs.use_environ }}' == 'snapshots' ]]
then
SOURCE_NAME_BASE=$(echo "hdfsrc")
else
SOURCE_NAME_BASE=$(echo "$FILE_NAME_BASE")
fi
echo "SOURCE_BASE=$SOURCE_NAME_BASE" >> $GITHUB_OUTPUT
shell: bash

# Get files created by release script
- name: Get zip-tarball (Windows)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: zip-tarball
path: ${{ github.workspace }}
Expand All @@ -120,20 +129,20 @@ jobs:
env:
HDF5_ROOT: ${{ steps.set-hdf5lib-name.outputs.HDF5_ROOT }}
run: |
cd "${{ runner.workspace }}/hdf5_plugins/hdfsrc"
cmake --workflow --preset=ci-StdShar-MSVC --fresh
cd "${{ runner.workspace }}/hdf5_plugins/${{ steps.set-file-base.outputs.SOURCE_BASE }}"
cmake --workflow --preset=${{ inputs.preset_name }}-MSVC --fresh
shell: bash

- name: Publish binary (Windows)
id: publish-ctest-binary
run: |
mkdir "${{ runner.workspace }}/build"
mkdir "${{ runner.workspace }}/build/hdf5_plugins"
Copy-Item -Path ${{ runner.workspace }}/hdf5_plugins/hdfsrc/COPYING -Destination ${{ runner.workspace }}/build/hdf5_plugins/
Copy-Item -Path ${{ runner.workspace }}/hdf5_plugins/${{ steps.set-file-base.outputs.SOURCE_BASE }}/COPYING -Destination ${{ runner.workspace }}/build/hdf5_plugins/
Copy-Item -Path ${{ runner.workspace }}/hdf5_plugins/hdfsrc/README.md -Destination ${{ runner.workspace }}/build/hdf5_plugins/
Copy-Item -Path ${{ runner.workspace }}/hdf5_plugins/build/ci-StdShar-MSVC/* -Destination ${{ runner.workspace }}/build/hdf5_plugins/ -Include *.zip
Copy-Item -Path ${{ runner.workspace }}/hdf5_plugins/build/${{ inputs.preset_name }}-MSVC/* -Destination ${{ runner.workspace }}/build/hdf5_plugins/ -Include *.zip
cd "${{ runner.workspace }}/build"
7z a -tzip ${{ steps.set-file-base.outputs.FILE_BASE }}-win_vs2022.zip hdf5_plugins
7z a -tzip ${{ steps.set-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip hdf5_plugins
shell: pwsh

- name: List files in the space (Windows)
Expand All @@ -144,10 +153,10 @@ jobs:

# Save files created by ctest script
- name: Save published binary (Windows)
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: zip-vs2022-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-win_vs2022.zip
name: zip-vs2022_cl-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

build_and_test_linux:
Expand All @@ -167,23 +176,23 @@ jobs:
with:
repo: 'HDFGroup/hdf5'
version: 'tags/snapshot'
file: '${{ inputs.use_hdf }}-ubuntu-2204.tar.gz'
file: '${{ inputs.use_hdf }}-ubuntu-2204_gcc.tar.gz'

- name: Get hdf5 release
if: ${{ (inputs.use_environ == 'release') }}
uses: dsaltares/fetch-gh-release-asset@master
with:
repo: 'HDFGroup/hdf5'
version: 'tags/${{ inputs.use_hdf }}'
file: '${{ inputs.use_hdf }}-ubuntu-2204.tar.gz'
file: '${{ inputs.use_hdf }}-ubuntu-2204_gcc.tar.gz'

- name: List files for the space (Linux)
run: |
ls -l ${{ github.workspace }}
ls ${{ runner.workspace }}

- name: Uncompress gh binary (Linux)
run: tar -zxvf ${{ github.workspace }}/${{ inputs.use_hdf }}-ubuntu-2204.tar.gz
run: tar -zxvf ${{ github.workspace }}/${{ inputs.use_hdf }}-ubuntu-2204_gcc.tar.gz

- name: Uncompress hdf5 binary (Linux)
run: |
Expand All @@ -206,10 +215,17 @@ jobs:
run: |
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}")
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT
if [[ '${{ inputs.use_environ }}' == 'snapshots' ]]
then
SOURCE_NAME_BASE=$(echo "hdfsrc")
else
SOURCE_NAME_BASE=$(echo "$FILE_NAME_BASE")
fi
echo "SOURCE_BASE=$SOURCE_NAME_BASE" >> $GITHUB_OUTPUT

# Get files created by release script
- name: Get tgz-tarball (Linux)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: tgz-tarball
path: ${{ github.workspace }}
Expand All @@ -226,20 +242,20 @@ jobs:
env:
HDF5_ROOT: ${{ steps.set-hdf5lib-name.outputs.HDF5_ROOT }}
run: |
cd "${{ runner.workspace }}/hdf5_plugins/hdfsrc"
cmake --workflow --preset=ci-StdShar-GNUC --fresh
cd "${{ runner.workspace }}/hdf5_plugins/${{ steps.set-file-base.outputs.SOURCE_BASE }}"
cmake --workflow --preset=${{ inputs.preset_name }}-GNUC --fresh
shell: bash

- name: Publish binary (Linux)
id: publish-ctest-binary
run: |
mkdir "${{ runner.workspace }}/build"
mkdir "${{ runner.workspace }}/build/hdf5_plugins"
cp ${{ runner.workspace }}/hdf5_plugins/hdfsrc/COPYING ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/${{ steps.set-file-base.outputs.SOURCE_BASE }}/COPYING ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/hdfsrc/README.md ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/build/ci-StdShar-GNUC/*.tar.gz ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/build/${{ inputs.preset_name }}-GNUC/*.tar.gz ${{ runner.workspace }}/build/hdf5_plugins
cd "${{ runner.workspace }}/build"
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204.tar.gz hdf5_plugins
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz hdf5_plugins
shell: bash

- name: List files in the space (Linux)
Expand All @@ -249,10 +265,10 @@ jobs:

# Save files created by ctest script
- name: Save published binary (Linux)
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: tgz-ubuntu-2204-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204.tar.gz
name: tgz-ubuntu-2204_gcc-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

build_and_test_mac:
Expand Down Expand Up @@ -311,10 +327,17 @@ jobs:
run: |
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}")
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT
if [[ '${{ inputs.use_environ }}' == 'snapshots' ]]
then
SOURCE_NAME_BASE=$(echo "hdfsrc")
else
SOURCE_NAME_BASE=$(echo "$FILE_NAME_BASE")
fi
echo "SOURCE_BASE=$SOURCE_NAME_BASE" >> $GITHUB_OUTPUT

# Get files created by release script
- name: Get tgz-tarball (MacOS)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: tgz-tarball
path: ${{ github.workspace }}
Expand All @@ -326,24 +349,24 @@ jobs:

- name: Uncompress source (MacOS)
run: tar -zxvf ${{ github.workspace }}/${{ steps.set-file-base.outputs.FILE_BASE }}.tar.gz

- name: Run ctest (MacOS)
id: run-ctest
env:
HDF5_ROOT: ${{ steps.set-hdf5lib-name.outputs.HDF5_ROOT }}
run: |
cd "${{ runner.workspace }}/hdf5_plugins/hdfsrc"
cmake --workflow --preset=ci-StdShar-Clang --fresh
cd "${{ runner.workspace }}/hdf5_plugins/${{ steps.set-file-base.outputs.SOURCE_BASE }}"
cmake --workflow --preset=${{ inputs.preset_name }}-Clang --fresh
shell: bash

- name: Publish binary (MacOS)
id: publish-ctest-binary
run: |
mkdir "${{ runner.workspace }}/build"
mkdir "${{ runner.workspace }}/build/hdf5_plugins"
cp ${{ runner.workspace }}/hdf5_plugins/hdfsrc/COPYING ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/${{ steps.set-file-base.outputs.SOURCE_BASE }}/COPYING ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/hdfsrc/README.md ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/build/ci-StdShar-Clang/*.tar.gz ${{ runner.workspace }}/build/hdf5_plugins
cp ${{ runner.workspace }}/hdf5_plugins/build/${{ inputs.preset_name }}-Clang/*.tar.gz ${{ runner.workspace }}/build/hdf5_plugins
cd "${{ runner.workspace }}/build"
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-osx12.tar.gz hdf5_plugins
shell: bash
Expand All @@ -355,7 +378,7 @@ jobs:

# Save files created by ctest script
- name: Save published binary (MacOS)
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: tgz-osx12-binary
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-osx12.tar.gz
Expand Down
6 changes: 2 additions & 4 deletions .github/workflows/daily-build.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
name: hdf5 plugins daily build

# Controls when the action will run. Triggers the workflow on a schedule
on:
workflow_dispatch:
inputs:
Expand All @@ -14,8 +13,6 @@ on:
type: string
required: false
default: snapshots
# push:
# branches: [ "master" ]
pull_request:
branches: [ "master" ]

Expand All @@ -33,7 +30,7 @@ jobs:
run-environ: ${{ steps.getinputs.outputs.INPUTS_ENVIRON }}

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4.1.1

- name: Get hdf5 release base name
uses: dsaltares/fetch-gh-release-asset@master
Expand Down Expand Up @@ -70,6 +67,7 @@ jobs:
uses: ./.github/workflows/cmake-ctest.yml
with:
file_base: ${{ needs.call-workflow-tarball.outputs.file_base }}
preset_name: ci-StdShar
use_hdf: ${{ needs.get-base-names.outputs.hdf5-name }}
use_environ: ${{ needs.get-base-names.outputs.run-environ }}
if: ${{ ((needs.get-base-names.outputs.run-environ == 'snapshots') && ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-base-names.outputs.run-ignore == 'ignore'))) || (needs.get-base-names.outputs.run-environ == 'release') }}
Expand Down
46 changes: 18 additions & 28 deletions .github/workflows/release-files.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Get Sources
uses: actions/checkout@v4
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
fetch-depth: 0

Expand All @@ -49,7 +49,7 @@ jobs:
run: |
git checkout ${{ inputs.file_sha }}

- uses: rickstaa/action-create-tag@v1
- uses: rickstaa/action-create-tag@a1c7777fcb2fee4f19b0f283ba888afa11678b72 # v1.7.2
id: "tag_create"
with:
commit_sha: ${{ inputs.file_sha }}
Expand Down Expand Up @@ -77,45 +77,51 @@ jobs:

# Get files created by tarball script
- name: Get tgz-tarball (Linux)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: tgz-tarball
path: ${{ github.workspace }}

- name: Get zip-tarball (Windows)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: zip-tarball
path: ${{ github.workspace }}

# Get files created by cmake-ctest script
- name: Get published binary (Windows)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: zip-vs2022-binary
name: zip-vs2022_cl-binary
path: ${{ github.workspace }}

- name: Get published binary (MacOS)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: tgz-osx12-binary
path: ${{ github.workspace }}

- name: Get published binary (Linux)
uses: actions/download-artifact@v3
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4
with:
name: tgz-ubuntu-2204-binary
name: tgz-ubuntu-2204_gcc-binary
path: ${{ github.workspace }}

- name: Create sha256 sums for files
run: |
sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}.tar.gz >> sha256sums.txt
sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}.zip >> sha256sums.txt
sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-osx12.tar.gz >> sha256sums.txt
sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz >> sha256sums.txt
sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip >> sha256sums.txt

- name: Store snapshot name
if: ${{ (inputs.use_environ == 'snapshots') }}
run: |
echo "${{ steps.get-file-base.outputs.FILE_BASE }}" > ./last-file.txt

- name: PreRelease tag
id: create_prerelease
if: ${{ (inputs.use_environ == 'snapshots') }}
uses: softprops/action-gh-release@v1
uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v1
with:
tag_name: "${{ inputs.use_tag }}"
prerelease: true
Expand All @@ -128,22 +134,6 @@ jobs:
${{ steps.get-file-base.outputs.FILE_BASE }}-win_vs2022.zip
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

- name: Release tag
id: create_release
if: ${{ (inputs.use_environ == 'release') }}
uses: softprops/action-gh-release@v1
with:
tag_name: "${{ inputs.use_tag }}"
prerelease: false
#body_path: ${{ github.workspace }}-CHANGELOG.txt
files: |
${{ inputs.file_branch }}.tar.gz
${{ inputs.file_branch }}.zip
${{ inputs.file_branch }}-osx12.tar.gz
${{ inputs.file_branch }}-ubuntu-2204.tar.gz
${{ inputs.file_branch }}-win_vs2022.zip
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`

- name: List files for the space (Linux)
run: |
ls -l ${{ github.workspace }}
Expand Down
Loading
Loading