hdf5/.github/workflows/release.yml
2024-09-05 09:15:12 -05:00

75 lines
2.5 KiB
YAML

name: hdf5 dev release build
# Triggers the workflow on demand
on:
workflow_dispatch:
inputs:
use_tag:
description: 'Release version tag'
type: string
required: false
default: snapshot
permissions:
contents: read
jobs:
log-the-inputs:
runs-on: ubuntu-latest
outputs:
rel_tag: ${{ steps.get-tag-name.outputs.RELEASE_TAG }}
steps:
- name: Get tag name
id: get-tag-name
env:
TAG: ${{ inputs.use_tag }}
run: echo "RELEASE_TAG=$TAG" >> $GITHUB_OUTPUT
call-workflow-tarball:
needs: log-the-inputs
uses: ./.github/workflows/tarball.yml
with:
use_tag: ${{ needs.log-the-inputs.outputs.rel_tag }}
use_environ: release
call-workflow-ctest:
needs: call-workflow-tarball
uses: ./.github/workflows/cmake-ctest.yml
with:
preset_name: ci-StdShar
file_base: ${{ needs.call-workflow-tarball.outputs.file_base }}
snap_name: hdf5-${{ needs.call-workflow-tarball.outputs.source_base }}
use_environ: release
secrets:
APPLE_CERTS_BASE64: ${{ secrets.APPLE_CERTS_BASE64 }}
APPLE_CERTS_BASE64_PASSWD: ${{ secrets.APPLE_CERTS_BASE64_PASSWD }}
KEYCHAIN_PASSWD: ${{ secrets.KEYCHAIN_PASSWD }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_ENDPOINT: ${{ secrets.AZURE_ENDPOINT }}
AZURE_CODE_SIGNING_NAME: ${{ secrets.AZURE_CODE_SIGNING_NAME }}
AZURE_CERT_PROFILE_NAME: ${{ secrets.AZURE_CERT_PROFILE_NAME }}
call-workflow-abi:
needs: [log-the-inputs, 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: ${{ needs.log-the-inputs.outputs.rel_tag }}
use_environ: release
call-workflow-release:
needs: [log-the-inputs, call-workflow-tarball, call-workflow-ctest, call-workflow-abi]
permissions:
contents: write # In order to allow tag creation
uses: ./.github/workflows/release-files.yml
with:
file_base: ${{ needs.call-workflow-tarball.outputs.file_base }}
file_branch: ${{ needs.call-workflow-tarball.outputs.file_branch }}
file_sha: ${{ needs.call-workflow-tarball.outputs.file_sha }}
use_tag: ${{ needs.log-the-inputs.outputs.rel_tag }}
use_environ: release