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

Add workflow that reports to CDash #4864

Merged
merged 36 commits into from
Sep 26, 2024
Merged
Show file tree
Hide file tree
Changes from 34 commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
c47e0ee
Add a workflow to report to CDash
byrnHDF Sep 18, 2024
16085c7
Correct syntax
byrnHDF Sep 18, 2024
5b98de3
Correct indent
byrnHDF Sep 18, 2024
3962f88
Set source dir as argument
byrnHDF Sep 19, 2024
91977ab
specify just the cmake files to be copied
byrnHDF Sep 19, 2024
3687b27
Enable CDash submits
byrnHDF Sep 19, 2024
b4b635b
Ensure log file is uploaded
byrnHDF Sep 19, 2024
2e602f0
Create custom options file for CDash reports
byrnHDF Sep 19, 2024
d9ecd6b
Fix cmake issues and correct paths
byrnHDF Sep 19, 2024
9528cdb
Change how to write options file
byrnHDF Sep 19, 2024
14235d5
Install curl dependicies on linux
byrnHDF Sep 19, 2024
b01fc7a
Remove HSDS option
byrnHDF Sep 19, 2024
7ba6489
remove ros3 option
byrnHDF Sep 19, 2024
2e3b45a
TOOLSET option is not working
byrnHDF Sep 19, 2024
3bab868
Force fortran off - change to just http
byrnHDF Sep 20, 2024
7773de2
Report to hdfgroup cdash
byrnHDF Sep 20, 2024
e76843c
Change SITE name syntax
byrnHDF Sep 20, 2024
2852acf
expect CTEST_SITE to be set
byrnHDF Sep 20, 2024
9c81afc
Fix CTEST_SITE at beginning
byrnHDF Sep 20, 2024
54d7f50
Correct execute_process extra WS
byrnHDF Sep 20, 2024
5d83e45
Correct check for ignore inputs
byrnHDF Sep 23, 2024
ed61b40
Correct CI checks
byrnHDF Sep 23, 2024
aca19e4
correct macos preset names
byrnHDF Sep 24, 2024
bf7af0b
Correct examples presets
byrnHDF Sep 24, 2024
01ab903
Remove comma typo
byrnHDF Sep 24, 2024
802c8f9
Add missing test entry
byrnHDF Sep 24, 2024
ab4caef
Correct misnamed variables
byrnHDF Sep 24, 2024
3a37dde
mac presets need to choose arch
byrnHDF Sep 24, 2024
aca218d
Add missing ignore option
byrnHDF Sep 24, 2024
cf057a8
Correct issues with ignore
byrnHDF Sep 25, 2024
4d87a78
Uncomment and add script options
byrnHDF Sep 25, 2024
bbe2aad
Add log-level verbose
byrnHDF Sep 25, 2024
4113a6e
Correct mac sets
byrnHDF Sep 25, 2024
5e9dfba
Update test scripts
byrnHDF Sep 25, 2024
058febf
Merge branch 'develop'
byrnHDF Sep 26, 2024
5563863
Remove conflict
byrnHDF Sep 26, 2024
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
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 dev 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
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
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
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
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 dev 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