Merge cleanup (#259) #111
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: hdfview ci runs | ||
# Controls when the action will run. Triggers the workflow on a schedule | ||
on: | ||
workflow_call: | ||
inputs: | ||
use_hdf: | ||
description: "The hdf4 tag and base name of the binaries" | ||
required: true | ||
type: string | ||
use_hdf5: | ||
description: "The hdf5 tag name of the binaries" | ||
required: true | ||
type: string | ||
name_hdf5: | ||
description: "The hdf5 base name of the binaries" | ||
required: true | ||
type: string | ||
snap_name: | ||
description: 'The version name of the binaries' | ||
type: string | ||
required: false | ||
default: HDFView-99.99.99 | ||
file_base: | ||
description: "The common base name of the source tarballs" | ||
required: true | ||
type: string | ||
use_environ: | ||
description: 'Environment to locate files' | ||
type: string | ||
required: true | ||
default: snapshots | ||
secrets: | ||
APPLE_CERTS_BASE64: | ||
required: true | ||
APPLE_CERTS_BASE64_PASSWD: | ||
required: true | ||
KEYCHAIN_PASSWD: | ||
required: true | ||
permissions: | ||
contents: read | ||
jobs: | ||
build_and_test_win: | ||
# Windows w/ MSVC + CMake | ||
# | ||
name: "Windows MSVC CTest" | ||
runs-on: windows-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up JDK 21 | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '21' | ||
distribution: 'temurin' | ||
- name: Enable Developer Command Prompt | ||
uses: ilammy/[email protected] | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
file: '${{ inputs.use_hdf }}-win-vs2022_cl.zip' | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
file: '${{ inputs.use_hdf }}-win-vs2022_cl.zip' | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.use_hdf }}-win-vs2022_cl.zip' | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.use_hdf }}-win-vs2022_cl.zip' | ||
- name: Uncompress gh binary (Win) | ||
run: 7z x ${{ github.workspace }}/${{ inputs.use_hdf }}-win-vs2022_cl.zip | ||
- name: Uncompress hdf4 binary (Win) | ||
working-directory: ${{ github.workspace }}/hdf4 | ||
run: 7z x HDF-*-win64.zip | ||
shell: bash | ||
- name: List files for the space (Win) | ||
run: | | ||
ls -l ${{ github.workspace }}/hdf4 | ||
#ls ${{ runner.workspace }}/hdfview | ||
- name: create hdf4 location (Win) | ||
working-directory: ${{ github.workspace }}/hdf4 | ||
run: | | ||
New-Item -Path "${{ github.workspace }}/HDF_Group/HDF" -ItemType Directory | ||
Copy-Item -Path "${{ github.workspace }}/hdf4/HDF*/*" -Destination "${{ github.workspace }}/HDF_Group/HDF" -Recurse | ||
shell: pwsh | ||
- name: List files for the space (Win) | ||
run: ls -l ${{ github.workspace }}/HDF_Group/HDF | ||
- name: set hdflib name | ||
id: set-hdflib-name | ||
run: | | ||
HDFDIR="${{ github.workspace }}/HDF_Group/HDF" | ||
echo "HDFLIB_ENV=$HDFDIR" >> $GITHUB_OUTPUT | ||
shell: bash | ||
- name: Get hdf5 snapshot | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/${{ inputs.use_hdf5 }}' | ||
file: '${{ inputs.name_hdf5 }}-win-vs2022_cl.zip' | ||
- name: Get hdf5 snapshot | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.name_hdf5 }}-win-vs2022_cl.zip' | ||
- name: Uncompress gh binary (Win) | ||
run: 7z x ${{ github.workspace }}/${{ inputs.name_hdf5 }}-win-vs2022_cl.zip | ||
- name: Uncompress hdf5 binary (Win) | ||
working-directory: ${{ github.workspace }}/hdf5 | ||
run: 7z x HDF5-*-win64.zip | ||
shell: bash | ||
- name: List files for the space (Win) | ||
run: | | ||
ls -l ${{ github.workspace }}/hdf5 | ||
#ls ${{ runner.workspace }}/hdfview | ||
- name: create hdf5 location (Win) | ||
working-directory: ${{ github.workspace }}/hdf5 | ||
run: | | ||
New-Item -Path "${{ github.workspace }}/HDF_Group/HDF5" -ItemType Directory | ||
Copy-Item -Path "${{ github.workspace }}/hdf5/HDF*/*" -Destination "${{ github.workspace }}/HDF_Group/HDF5" -Recurse | ||
shell: pwsh | ||
- name: List files for the space (Win) | ||
run: ls -l ${{ github.workspace }}/HDF_Group/HDF5 | ||
- name: set hdf5lib name | ||
id: set-hdf5lib-name | ||
run: | | ||
HDF5DIR="${{ github.workspace }}/HDF_Group/HDF5" | ||
echo "HDF5LIB_ENV=$HDF5DIR" >> $GITHUB_OUTPUT | ||
shell: bash | ||
- name: List files for the binaries (Win) | ||
run: | | ||
ls -l ${{ github.workspace }}/HDF_Group/HDF | ||
ls -l ${{ github.workspace }}/HDF_Group/HDF5 | ||
- name: Set file base name (Windows) | ||
id: set-file-base | ||
run: | | ||
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}") | ||
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT | ||
if [[ '${{ inputs.use_environ }}' == 'release' ]] | ||
then | ||
SOURCE_NAME_BASE=$(echo "${{ inputs.snap_name }}") | ||
else | ||
SOURCE_NAME_BASE=$(echo "hdfsrc") | ||
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@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4 | ||
with: | ||
name: zip-tarball | ||
path: ${{ github.workspace }} | ||
- name: using powershell | ||
shell: pwsh | ||
run: Get-Location | ||
- name: List files for the space (Windows) | ||
run: | | ||
Get-ChildItem -Path ${{ github.workspace }} | ||
Get-ChildItem -Path ${{ runner.workspace }} | ||
shell: pwsh | ||
- name: Uncompress source (Windows) | ||
working-directory: ${{ github.workspace }} | ||
run: 7z x ${{ steps.set-file-base.outputs.FILE_BASE }}.zip | ||
shell: bash | ||
- name: Build with Ant | ||
env: | ||
HDFLIBS: ${{ steps.set-hdflib-name.outputs.HDFLIB_ENV }} | ||
HDF5LIBS: ${{ steps.set-hdf5lib-name.outputs.HDF5LIB_ENV }} | ||
run: | | ||
ant -noinput -buildfile build.xml binaryPackage | ||
shell: bash | ||
- name: Rename snapshot binary base name | ||
id: ren-basename | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
run: | | ||
cd build/dist | ||
mv ${{ inputs.snap_name }}-win64.zip ${{ steps.set-file-base.outputs.FILE_BASE }}-win64.zip | ||
shell: bash | ||
- name: List files for the space (Windows) | ||
run: | | ||
Get-ChildItem -Path ${{ github.workspace }}/build/dist | ||
Get-ChildItem -Path ${{ github.workspace }} | ||
shell: pwsh | ||
# Save files created by ctest script | ||
- name: Save published binary (Win) | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: zip-win-vs2022-binary | ||
path: ${{ github.workspace }}/build/dist/${{ steps.set-file-base.outputs.FILE_BASE }}-win64.zip | ||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` | ||
- name: Test with Ant | ||
env: | ||
HDFLIBS: ${{ steps.set-hdflib-name.outputs.HDFLIB_ENV }} | ||
HDF5LIBS: ${{ steps.set-hdf5lib-name.outputs.HDF5LIB_ENV }} | ||
run: ant -noinput -buildfile build.xml junit | ||
build_and_test_linux: | ||
# Linux (Ubuntu) w/ gcc + CMake | ||
# | ||
name: "Ubuntu gcc CMake" | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up JDK 21 | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '21' | ||
distribution: 'temurin' | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
file: '${{ inputs.use_hdf }}-ubuntu-2204_gcc.tar.gz' | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
file: '${{ inputs.use_hdf }}-ubuntu-2204_gcc.tar.gz' | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.use_hdf }}-ubuntu-2204_gcc.tar.gz' | ||
- name: Get hdf4 snapshot | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
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_gcc.tar.gz | ||
- name: Uncompress hdf4 binary (Linux) | ||
run: | | ||
cd "${{ github.workspace }}/hdf4" | ||
tar -zxvf ${{ github.workspace }}/hdf4/HDF-*-Linux.tar.gz --strip-components 1 | ||
- name: set hdflib name | ||
id: set-hdflib-name | ||
run: | | ||
HDFDIR=${{ github.workspace }}/hdf4/HDF_Group/HDF/ | ||
FILE_NAME_HDF=$(ls ${{ github.workspace }}/hdf4/HDF_Group/HDF) | ||
echo "HDFLIB_ENV=$HDFDIR$FILE_NAME_HDF" >> $GITHUB_OUTPUT | ||
- name: Get hdf5 release | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/${{ inputs.use_hdf5 }}' | ||
file: '${{ inputs.name_hdf5 }}-ubuntu-2204_gcc.tar.gz' | ||
- name: Get hdf5 release | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.name_hdf5 }}-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.name_hdf5 }}-ubuntu-2204_gcc.tar.gz | ||
- name: Uncompress hdf5 binary (Linux) | ||
run: | | ||
cd "${{ github.workspace }}/hdf5" | ||
tar -zxvf ${{ github.workspace }}/hdf5/HDF5-*-Linux.tar.gz --strip-components 1 | ||
- name: set hdf5lib name | ||
id: set-hdf5lib-name | ||
run: | | ||
HDF5DIR=${{ github.workspace }}/hdf5/HDF_Group/HDF5/ | ||
FILE_NAME_HDF5=$(ls ${{ github.workspace }}/hdf5/HDF_Group/HDF5) | ||
echo "HDF5LIB_ENV=$HDF5DIR$FILE_NAME_HDF5" >> $GITHUB_OUTPUT | ||
- name: List files for the binaries (Linux) | ||
run: | | ||
ls -l ${{ github.workspace }}/hdf4/HDF_Group/HDF | ||
ls -l ${{ github.workspace }}/hdf5/HDF_Group/HDF5 | ||
- name: Set file base name (Linux) | ||
id: set-file-base | ||
run: | | ||
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}") | ||
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT | ||
if [[ '${{ inputs.use_environ }}' == 'release' ]] | ||
then | ||
SOURCE_NAME_BASE=$(echo "${{ inputs.snap_name }}") | ||
else | ||
SOURCE_NAME_BASE=$(echo "hdfsrc") | ||
fi | ||
echo "SOURCE_BASE=$SOURCE_NAME_BASE" >> $GITHUB_OUTPUT | ||
# Get files created by release script | ||
- name: Get tgz-tarball (Linux) | ||
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4 | ||
with: | ||
name: tgz-tarball | ||
path: ${{ github.workspace }} | ||
- name: List files for the space (Linux) | ||
run: | | ||
ls -l ${{ github.workspace }} | ||
ls ${{ runner.workspace }} | ||
- name: Uncompress source (Linux) | ||
run: tar -zxvf ${{ github.workspace }}/${{ steps.set-file-base.outputs.FILE_BASE }}.tar.gz | ||
- name: Build with Ant | ||
env: | ||
HDFLIBS: ${{ steps.set-hdflib-name.outputs.HDFLIB_ENV }} | ||
HDF5LIBS: ${{ steps.set-hdf5lib-name.outputs.HDF5LIB_ENV }} | ||
run: ant -noinput -buildfile build.xml binaryPackage | ||
- name: Rename snapshot binary base name | ||
id: ren-basename | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
run: | | ||
cd build/dist | ||
mv ${{ inputs.snap_name }}-Linux-x86_64.tar.gz ${{ steps.set-file-base.outputs.FILE_BASE }}-Linux-x86_64.tar.gz | ||
shell: bash | ||
- name: List files in the space (Linux) | ||
run: | | ||
ls ${{ github.workspace }}/build/dist | ||
ls -l ${{ runner.workspace }} | ||
# Save files created by ctest script | ||
- name: Save published binary (Linux) | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: tgz-ubuntu-2204-binary | ||
path: ${{ github.workspace }}/build/dist/${{ steps.set-file-base.outputs.FILE_BASE }}-Linux-x86_64.tar.gz | ||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` | ||
- name: Test with Ant | ||
env: | ||
HDFLIBS: ${{ steps.set-hdflib-name.outputs.HDFLIB_ENV }} | ||
HDF5LIBS: ${{ steps.set-hdf5lib-name.outputs.HDF5LIB_ENV }} | ||
run: ant -noinput -buildfile build.xml junit | ||
build_and_test_mac: | ||
# mac (osx) w/ clang + ant | ||
# | ||
name: "mac clang CMake" | ||
runs-on: macos-13 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Install the Apple certificate and provisioning profile | ||
shell: bash | ||
env: | ||
BUILD_CERTIFICATE_BASE64: ${{ secrets.APPLE_CERTS_BASE64 }} | ||
P12_PASSWORD: ${{ secrets.APPLE_CERTS_BASE64_PASSWD }} | ||
KEYCHAIN_PASSWD: ${{ secrets.KEYCHAIN_PASSWD }} | ||
run: | | ||
# create variables | ||
CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12 | ||
KEYCHAIN_FILE=${{ vars.KEYCHAIN_NAME }}.keychain | ||
# import certificate from secrets | ||
echo $BUILD_CERTIFICATE_BASE64 | base64 --decode > $CERTIFICATE_PATH | ||
security -v create-keychain -p $KEYCHAIN_PASSWD $KEYCHAIN_FILE | ||
security -v list-keychain -d user -s $KEYCHAIN_FILE | ||
security -v list-keychains | ||
security -v set-keychain-settings -lut 21600 $KEYCHAIN_FILE | ||
security -v unlock-keychain -p $KEYCHAIN_PASSWD $KEYCHAIN_FILE | ||
# import certificate to keychain | ||
security -v import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_FILE | ||
security -v set-key-partition-list -S apple-tool:,codesign:,apple: -k $KEYCHAIN_PASSWD $KEYCHAIN_FILE | ||
- name: Set up JDK 21 | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '21' | ||
distribution: 'temurin' | ||
- name: Get hdf4 release | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
file: '${{ inputs.use_hdf }}-osx.tar.gz' | ||
- name: Get hdf4 release osx12 | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
file: '${{ inputs.use_hdf }}-osx12.tar.gz' | ||
- name: Get hdf4 release | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
file: '${{ inputs.use_hdf }}-osx.tar.gz' | ||
- name: Get hdf4 release osx12 | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/${{ inputs.use_hdf }}' | ||
<<<<<<< Upstream, based on branch 'master' of https://github.com/byrnHDF/hdfview.git | ||
file: '${{ inputs.use_hdf }}-osx12.tar.gz' | ||
- name: Get hdf4 release | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.use_hdf }}-osx.tar.gz' | ||
- name: Get hdf4 release osx12 | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
======= | ||
>>>>>>> 8ee157e Merge fix | ||
file: '${{ inputs.use_hdf }}-osx12.tar.gz' | ||
- name: Get hdf4 release | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.use_hdf }}-osx.tar.gz' | ||
- name: Get hdf4 release osx12 | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf4' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.use_hdf }}-osx12.tar.gz' | ||
- name: List files for the space (mac) | ||
run: | | ||
ls -l ${{ github.workspace }} | ||
ls ${{ runner.workspace }} | ||
- name: Uncompress gh binary (mac) | ||
run: tar -zxvf ${{ github.workspace }}/${{ inputs.use_hdf }}-osx*.tar.gz | ||
- name: Uncompress hdf4 binary (mac) | ||
run: | | ||
cd "${{ github.workspace }}/hdf4" | ||
tar -zxvf ${{ github.workspace }}/hdf4/HDF-*-Darwin.tar.gz --strip-components 1 | ||
- name: set hdflib name | ||
id: set-hdflib-name | ||
run: | | ||
HDFDIR=${{ github.workspace }}/hdf4/HDF_Group/HDF/ | ||
FILE_NAME_HDF=$(ls ${{ github.workspace }}/hdf4/HDF_Group/HDF) | ||
echo "HDFLIB_ENV=$HDFDIR$FILE_NAME_HDF" >> $GITHUB_OUTPUT | ||
- name: Get hdf5 release | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/${{ inputs.use_hdf5 }}' | ||
file: '${{ inputs.name_hdf5 }}-osx.tar.gz' | ||
- name: Get hdf5 release osx12 | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'release') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/${{ inputs.use_hdf5 }}' | ||
file: '${{ inputs.name_hdf5 }}-osx12.tar.gz' | ||
- name: Get hdf5 release | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.name_hdf5 }}-osx.tar.gz' | ||
- name: Get hdf5 release osx12 | ||
continue-on-error: true | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
uses: dsaltares/fetch-gh-release-asset@master | ||
with: | ||
repo: 'HDFGroup/hdf5' | ||
version: 'tags/snapshot' | ||
file: '${{ inputs.name_hdf5 }}-osx12.tar.gz' | ||
- name: List files for the space (mac) | ||
run: | | ||
ls -l ${{ github.workspace }} | ||
ls ${{ runner.workspace }} | ||
- name: Uncompress gh binary (mac) | ||
run: tar -zxvf ${{ github.workspace }}/${{ inputs.name_hdf5 }}-osx*.tar.gz | ||
- name: Uncompress hdf5 binary (mac) | ||
run: | | ||
cd "${{ github.workspace }}/hdf5" | ||
tar -zxvf ${{ github.workspace }}/hdf5/HDF5-*-Darwin.tar.gz --strip-components 1 | ||
- name: set hdf5lib name | ||
id: set-hdf5lib-name | ||
run: | | ||
HDF5DIR=${{ github.workspace }}/hdf5/HDF_Group/HDF5/ | ||
FILE_NAME_HDF5=$(ls ${{ github.workspace }}/hdf5/HDF_Group/HDF5) | ||
echo "HDF5LIB_ENV=$HDF5DIR$FILE_NAME_HDF5" >> $GITHUB_OUTPUT | ||
- name: List files for the binaries (mac) | ||
run: | | ||
ls -l ${{ github.workspace }}/hdf4/HDF_Group/HDF | ||
ls -l ${{ github.workspace }}/hdf5/HDF_Group/HDF5 | ||
- name: Set file base name (mac) | ||
id: set-file-base | ||
run: | | ||
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}") | ||
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT | ||
if [[ '${{ inputs.use_environ }}' == 'release' ]] | ||
then | ||
SOURCE_NAME_BASE=$(echo "${{ inputs.snap_name }}") | ||
else | ||
SOURCE_NAME_BASE=$(echo "hdfsrc") | ||
fi | ||
echo "SOURCE_BASE=$SOURCE_NAME_BASE" >> $GITHUB_OUTPUT | ||
# Get files created by release script | ||
- name: Get tgz-tarball (mac) | ||
uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4 | ||
with: | ||
name: tgz-tarball | ||
path: ${{ github.workspace }} | ||
- name: List files for the space (mac) | ||
run: | | ||
ls -l ${{ github.workspace }} | ||
ls ${{ runner.workspace }} | ||
- name: Uncompress source (mac) | ||
run: tar -zxvf ${{ github.workspace }}/${{ steps.set-file-base.outputs.FILE_BASE }}.tar.gz | ||
- name: Build with Ant | ||
env: | ||
HDFLIBS: ${{ steps.set-hdflib-name.outputs.HDFLIB_ENV }} | ||
HDF5LIBS: ${{ steps.set-hdf5lib-name.outputs.HDF5LIB_ENV }} | ||
KEYCHAIN_PASSWD: ${{ secrets.KEYCHAIN_PASSWD }} | ||
KEYCHAIN_NAME: ${{ vars.KEYCHAIN_NAME }} | ||
SIGNER: ${{ vars.SIGNER }} | ||
NOTARY_USER: ${{ vars.NOTARY_USER }} | ||
NOTARY_KEY: ${{ vars.NOTARY_KEY }} | ||
run: ant -noinput -buildfile build.xml binaryPackage | ||
- name: Rename snapshot binary base name | ||
id: ren-basename | ||
if: ${{ (inputs.use_environ == 'snapshots') }} | ||
run: | | ||
cd build/dist | ||
mv ${{ inputs.snap_name }}-Darwin.tar.gz ${{ steps.set-file-base.outputs.FILE_BASE }}-Darwin.tar.gz | ||
shell: bash | ||
- name: List files in the space (mac) | ||
run: | | ||
ls ${{ github.workspace }}/build/dist | ||
ls -l ${{ runner.workspace }} | ||
# Save files created by ctest script | ||
- name: Save published binary (mac) | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: tgz-osx-binary | ||
path: ${{ github.workspace }}/build/dist/${{ steps.set-file-base.outputs.FILE_BASE }}-Darwin.tar.gz | ||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` | ||
- name: Test with Ant | ||
env: | ||
HDFLIBS: ${{ steps.set-hdflib-name.outputs.HDFLIB_ENV }} | ||
HDF5LIBS: ${{ steps.set-hdf5lib-name.outputs.HDF5LIB_ENV }} | ||
run: ant -noinput -buildfile build.xml junit | ||