The Github actions need an update due to upcoming deprecations:
* The 'set-output' command is deprecated [1]. Update to write to the
GITHUB_OUTPUT environment file instead.
* All Github actions using Node.js 12 are deprecated [2]. Update the
following actions to a newer version using Node.js 16:
- actions/checkout
- actions/upload-artifact
- microsoft/setup-msbuild
* The Github create-release and upload-release-asset actions are no
longer maintained. Replace with an alternative solution using the
Github CLI.
[1] https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
[2] https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/
48 lines
1.2 KiB
YAML
48 lines
1.2 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags: 'v*'
|
|
|
|
jobs:
|
|
release:
|
|
name: Release
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Version number
|
|
id: version
|
|
run: |
|
|
VERSION="${GITHUB_REF/refs\/tags\/v/}"
|
|
echo "version=${VERSION}" >> $GITHUB_OUTPUT
|
|
|
|
- name: Build distribution tarball
|
|
id: build
|
|
run: |
|
|
sudo apt-get install libbluetooth-dev libusb-1.0-0-dev
|
|
autoreconf --install --force
|
|
./configure
|
|
make
|
|
make distcheck
|
|
|
|
- name: Check tarball version number
|
|
id: check
|
|
run: |
|
|
FILENAME="libdivecomputer-${{ steps.version.outputs.version }}.tar.gz"
|
|
if [ ! -f "${FILENAME}" ]; then
|
|
echo ::error ::Tarball \'${FILENAME}\' not found!
|
|
exit 1
|
|
fi
|
|
|
|
- name: Create Github release
|
|
id: release
|
|
run: |
|
|
VERSION="${{ steps.version.outputs.version }}"
|
|
if [ "${VERSION}" != "${VERSION%%-*}" ]; then
|
|
PRERELEASE="-p"
|
|
fi
|
|
gh release create ${PRERELEASE} "${{ github.ref }}" "libdivecomputer-${VERSION}.tar.gz"
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|