diff --git a/.github/workflows/job_version.yml b/.github/workflows/job_version.yml new file mode 100644 index 00000000..b93f5014 --- /dev/null +++ b/.github/workflows/job_version.yml @@ -0,0 +1,41 @@ +name: job_version + +on: + workflow_call: + outputs: + tag_abbrev: + value: ${{ jobs.version.outputs.tag_abbrev }} + tag_offset: + value: ${{ jobs.version.outputs.tag_offset }} + sha_short: + value: ${{ jobs.version.outputs.sha_short }} + full_desc: + value: ${{ jobs.version.outputs.full_desc }} + branch: + value: ${{ jobs.version.outputs.branch }} + + +jobs: + version: + name: Version + runs-on: ubuntu-latest + outputs: + tag_abbrev: ${{ steps.describe.outputs.tag_abbrev }} + tag_offset: ${{ steps.describe.outputs.tag_offset }} + sha_short: ${{ steps.describe.outputs.sha_short }} + full_desc: ${{ steps.describe.outputs.full_desc }} + branch: ${{ steps.describe.outputs.branch }} + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + - name: Describe + id: describe + shell: bash + run: | + tag_abbrev=$(git tag --sort=v:refname | grep -oE "(^[0-9]+\.[0-9]+(.[0-9]+)?)$" | tail -1) + echo "tag_abbrev=$tag_abbrev" >> $GITHUB_OUTPUT + echo "tag_offset=$(git rev-list $tag_abbrev..HEAD --count)" >> $GITHUB_OUTPUT + echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT + echo "full_desc=$(git describe --long --tags)" >> $GITHUB_OUTPUT + echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 385617b3..85cb918e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,7 +13,7 @@ permissions: jobs: - describe: + title: name: Version ${{ github.ref_name }} runs-on: ubuntu-latest steps: diff --git a/.github/workflows/snapshot.yml b/.github/workflows/snapshot.yml index acb00e01..6e6020b4 100644 --- a/.github/workflows/snapshot.yml +++ b/.github/workflows/snapshot.yml @@ -14,29 +14,9 @@ jobs: version: name: Describe - runs-on: ubuntu-latest - outputs: - tag_abbrev: ${{ steps.describe.outputs.tag_abbrev }} - tag_offset: ${{ steps.describe.outputs.tag_offset }} - sha_short: ${{ steps.describe.outputs.sha_short }} - full_desc: ${{ steps.describe.outputs.full_desc }} - branch: ${{ steps.describe.outputs.branch }} - steps: - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Describe version - id: describe - shell: bash - run: | - tag_abbrev=$(git tag --sort=v:refname | grep -oE "(^[0-9]+\.[0-9]+(.[0-9]+)?)$" | tail -1) - echo "tag_abbrev=$tag_abbrev" >> $GITHUB_OUTPUT - echo "tag_offset=$(git rev-list $tag_abbrev..HEAD --count)" >> $GITHUB_OUTPUT - echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - echo "full_desc=$(git describe --long --tags)" >> $GITHUB_OUTPUT - echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT + uses: ./.github/workflows/job_version.yml - describe: + title: needs: version name: Version ${{ needs.version.outputs.tag_abbrev }}.${{ needs.version.outputs.tag_offset }} runs-on: ubuntu-latest