Skip to content

Commit

Permalink
Merge CMake and CI changes from develop
Browse files Browse the repository at this point in the history
Add CI reports to CDash
Fix some name typos
  • Loading branch information
byrnHDF committed Sep 26, 2024
1 parent 85a8fc8 commit fb0b3e5
Show file tree
Hide file tree
Showing 13 changed files with 929 additions and 78 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/cmake-bintest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,6 @@ jobs:
HDF5_PLUGIN_PATH: ${{ steps.set-hdf5lib-name.outputs.HDF5_PLUGIN_PATH }}
run: |
cd "${{ steps.set-hdf5lib-name.outputs.HDF5_ROOT }}/share/HDF5Examples"
cmake --workflow --preset=ci-StdShar-MACOS-Clang --fresh
cmake --workflow --preset=ci-StdShar-macos-Clang --fresh
shell: bash

597 changes: 597 additions & 0 deletions .github/workflows/cmake-script.yml

Large diffs are not rendered by default.

36 changes: 30 additions & 6 deletions .github/workflows/daily-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@ name: hdf5 1.14 daily build
# Triggers the workflow on a schedule or on demand
on:
workflow_dispatch:
inputs:
use_ignore:
description: 'Ignore has_changes check'
type: string
required: false
default: check
schedule:
- cron: "6 0 * * *"

Expand All @@ -14,6 +20,7 @@ jobs:
runs-on: ubuntu-latest
outputs:
hdf5-name: ${{ steps.gethdf5base.outputs.HDF5_NAME_BASE }}
run-ignore: ${{ steps.getinputs.outputs.INPUTS_IGNORE }}

steps:
- uses: actions/[email protected]
Expand All @@ -30,14 +37,31 @@ jobs:

- run: echo "hdf5 base name is ${{ steps.gethdf5base.outputs.HDF5_NAME_BASE }}."

- name: Read inputs
id: getinputs
run: |
echo "INPUTS_IGNORE=${{ github.event.inputs.use_ignore }}" >> $GITHUB_OUTPUT
- run: echo "use_ignore is ${{ steps.getinputs.outputs.INPUTS_IGNORE }}."

call-workflow-tarball:
needs: [get-old-names]
uses: ./.github/workflows/tarball.yml
with:
use_ignore: ${{ needs.get-old-names.outputs.run-ignore }}
use_tag: snapshot-1.14
use_environ: snapshots

call-workflow-c-script:
needs: [get-old-names, call-workflow-tarball]
uses: ./.github/workflows/cmake-script.yml
with:
file_base: ${{ needs.call-workflow-tarball.outputs.file_base }}
use_environ: snapshots
if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) }}

call-workflow-ctest:
needs: call-workflow-tarball
needs: [get-old-names, call-workflow-tarball]
uses: ./.github/workflows/cmake-ctest.yml
with:
preset_name: ci-StdShar
Expand All @@ -54,17 +78,17 @@ jobs:
AZURE_ENDPOINT: ${{ secrets.AZURE_ENDPOINT }}
AZURE_CODE_SIGNING_NAME: ${{ secrets.AZURE_CODE_SIGNING_NAME }}
AZURE_CERT_PROFILE_NAME: ${{ secrets.AZURE_CERT_PROFILE_NAME }}
if: ${{ needs.call-workflow-tarball.outputs.has_changes == 'true' }}
if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) }}

call-workflow-abi:
needs: [call-workflow-tarball, call-workflow-ctest]
needs: [get-old-names, call-workflow-tarball, call-workflow-ctest]
uses: ./.github/workflows/abi-report.yml
with:
file_ref: '1.14.4.3'
file_base: ${{ needs.call-workflow-tarball.outputs.file_base }}
use_tag: snapshot-1.14
use_environ: snapshots
if: ${{ needs.call-workflow-tarball.outputs.has_changes == 'true' }}
if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) }}

call-workflow-release:
needs: [get-old-names, call-workflow-tarball, call-workflow-ctest, call-workflow-abi]
Expand All @@ -77,7 +101,7 @@ jobs:
file_sha: ${{ needs.call-workflow-tarball.outputs.file_sha }}
use_tag: snapshot-1.14
use_environ: snapshots
if: ${{ needs.call-workflow-tarball.outputs.has_changes == 'true' }}
if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) }}

call-workflow-remove:
needs: [get-old-names, call-workflow-tarball, call-workflow-ctest, call-workflow-abi, call-workflow-release]
Expand All @@ -88,5 +112,5 @@ jobs:
file_base: ${{ needs.get-old-names.outputs.hdf5-name }}
use_tag: snapshot-1.14
use_environ: snapshots
if: ${{ (needs.call-workflow-tarball.outputs.has_changes == 'true') && (needs.get-old-names.outputs.hdf5-name != needs.call-workflow-tarball.outputs.file_base) }}
if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) && (needs.get-old-names.outputs.hdf5-name != needs.call-workflow-tarball.outputs.file_base) }}

11 changes: 9 additions & 2 deletions .github/workflows/tarball.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ name: hdf5 1.14 tarball
on:
workflow_call:
inputs:
use_ignore:
description: 'Ignore has_changes check'
type: string
required: false
default: check
use_tag:
description: 'Release version tag'
type: string
Expand Down Expand Up @@ -43,6 +48,8 @@ jobs:
branch_ref: ${{ steps.get-branch-name.outputs.BRANCH_REF }}
branch_sha: ${{ steps.get-branch-sha.outputs.BRANCH_SHA }}
steps:
- uses: actions/checkout@v4

- name: Get branch name
id: get-branch-name
env:
Expand All @@ -67,7 +74,7 @@ jobs:
with:
seconds: 86400 # One day in seconds
branch: '${{ steps.get-branch-name.outputs.branch_ref }}'
if: ${{ inputs.use_environ == 'snapshots' }}
if: ${{ (inputs.use_environ == 'snapshots' && inputs.use_ignore == 'check') }}

- run: echo "You have ${{ steps.check-new-commits.outputs.new-commits-number }} new commit(s) in ${{ steps.get-branch-name.outputs.BRANCH_REF }} ✅!"
if: ${{ steps.check-new-commits.outputs.has-new-commits == 'true' }}
Expand All @@ -78,7 +85,7 @@ jobs:
name: Create a source tarball
runs-on: ubuntu-latest
needs: check_commits
if: ${{ ((inputs.use_environ == 'snapshots') && (needs.check_commits.outputs.has_changes == 'true')) || (inputs.use_environ == 'release') }}
if: ${{ ((inputs.use_environ == 'snapshots') && ((needs.check_commits.outputs.has_changes == 'true') || (inputs.use_ignore == 'ignore'))) || (inputs.use_environ == 'release') }}
outputs:
file_base: ${{ steps.set-file-base.outputs.FILE_BASE }}
source_base: ${{ steps.version.outputs.SOURCE_TAG }}
Expand Down
69 changes: 57 additions & 12 deletions HDF5Examples/CMakePresets.json
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,24 @@
"ci-StdShar"
]
},
{
"name": "ci-StdShar-macos-Clang",
"description": "Clang Standard Config for macos (Release)",
"inherits": [
"ci-macos-arm64-Release-Clang",
"ci-StdJava",
"ci-StdShar"
]
},
{
"name": "ci-StdShar-macos-GNUC",
"description": "GNUC Standard Config for macos (Release)",
"inherits": [
"ci-macos-arm64-Release-GNUC",
"ci-StdJava",
"ci-StdShar"
]
},
{
"name": "ci-StdShar-Intel",
"description": "Intel Standard Config for x64 (Release)",
Expand Down Expand Up @@ -111,6 +129,23 @@
"ci-x64-Release-GNUC"
]
},
{
"name": "ci-StdShar-macos-Clang",
"description": "Clang Standard Build for macos-arm64 (Release)",
"configurePreset": "ci-StdShar-macos-Clang",
"inherits": [
"ci-macos-arm64-Release-Clang"
]
},
{
"name": "ci-StdShar-macos-GNUC",
"description": "GNUC Standard Build for macos-arm64 (Release)",
"configurePreset": "ci-StdShar-macos-GNUC",
"verbose": true,
"inherits": [
"ci-macos-arm64-Release-GNUC"
]
},
{
"name": "ci-StdShar-Intel",
"description": "Intel Standard Build for x64 (Release)",
Expand All @@ -137,22 +172,24 @@
]
},
{
"name": "ci-StdShar-MACOS-Clang",
"configurePreset": "ci-StdShar-Clang",
"name": "ci-StdShar-macos-Clang",
"configurePreset": "ci-StdShar-macos-Clang",
"inherits": [
"ci-x64-Release-Clang"
"ci-macos-arm64-Release-Clang"
],
"execution": {
"noTestsAction": "error",
"timeout": 180,
"jobs": 2
},
"condition": {
"type": "equals",
"lhs": "${hostSystemName}",
"rhs": "Darwin"
}
},
{
"name": "ci-StdShar-macos-GNUC",
"configurePreset": "ci-StdShar-macos-GNUC",
"inherits": [
"ci-macos-arm64-Release-GNUC"
]
},
{
"name": "ci-StdShar-GNUC",
"configurePreset": "ci-StdShar-GNUC",
Expand Down Expand Up @@ -203,11 +240,11 @@
]
},
{
"name": "ci-StdShar-MACOS-Clang",
"name": "ci-StdShar-macos-Clang",
"steps": [
{"type": "configure", "name": "ci-StdShar-Clang"},
{"type": "build", "name": "ci-StdShar-Clang"},
{"type": "test", "name": "ci-StdShar-MACOS-Clang"}
{"type": "configure", "name": "ci-StdShar-macos-Clang"},
{"type": "build", "name": "ci-StdShar-macos-Clang"},
{"type": "test", "name": "ci-StdShar-macos-Clang"}
]
},
{
Expand All @@ -218,6 +255,14 @@
{"type": "test", "name": "ci-StdShar-GNUC"}
]
},
{
"name": "ci-StdShar-macos-GNUC",
"steps": [
{"type": "configure", "name": "ci-StdShar-macos-GNUC"},
{"type": "build", "name": "ci-StdShar-macos-GNUC"},
{"type": "test", "name": "ci-StdShar-macos-GNUC"}
]
},
{
"name": "ci-StdShar-Intel",
"steps": [
Expand Down
10 changes: 5 additions & 5 deletions HDF5Examples/Using_CMake.txt
Original file line number Diff line number Diff line change
Expand Up @@ -90,11 +90,11 @@ These steps are described in more detail below.
* MinGW Makefiles
* NMake Makefiles
* Unix Makefiles
* Visual Studio 15 2017
* Visual Studio 15 2017 Win64
* Visual Studio 16 2019
* Visual Studio 17 2022

* Visual Studio 15
* Visual Studio 15 Win64
* Visual Studio 17
* Visual Studio 17 Win64
* Visual Studio 19

<options> is:
* H5EX_BUILD_TESTING:BOOL=ON
Expand Down
Loading

0 comments on commit fb0b3e5

Please sign in to comment.