Skip to content

Release

Release #37

Workflow file for this run

name: Release
on:
push:
tags:
- "*"
workflow_dispatch:
inputs:
build_from:
description: |
Branch or tag to build release artifacts from.
required: false
release_as:
description: |
Publish release under this tag, or update release assets if such release exists.
If empty, release publishing will be skipped.
required: false
default: ""
jobs:
mac:
run-name: macOS (${{ matrix.os }} ${{ matrix.otp }})

Check failure on line 22 in .github/workflows/release.yaml

View workflow run for this annotation

GitHub Actions / Release

Invalid workflow file

The workflow is not valid. .github/workflows/release.yaml (Line: 22, Col: 5): Unexpected value 'run-name' .github/workflows/release.yaml (Line: 62, Col: 5): Unexpected value 'run-name'
strategy:
fail-fast: false
matrix:
os:
- macos-13
- macos-14
- macos-15
otp:
- "26.2.5.14-1"
- "27.3.4.2-1"
rebar3:
- "3.22.0"
runs-on: ${{ matrix.os }}
steps:
- uses: emqx/macos-erlang@f744c98139c0db83a10619587d4bae4fc49765a8 # v1.0.0
with:
otp-version: ${{ matrix.otp }}
rebar3-version: ${{ matrix.rebar3 }}
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: recursive
fetch-depth: 0
ref: ${{ github.event.inputs.build_from }} # when input is not given, the event tag is used
- name: build release
env:
BUILD_RELEASE: 1
CI_RELEASE_VERSION: ${{ github.event.inputs.release_as }}
run: ./build.sh
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: packages-${{ matrix.os }}-${{ matrix.otp }}
path: |
_packages/*.tar.gz
_packages/*.tar.gz.sha256
linux:
run-name: linux (${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.builder.otp }})
strategy:
fail-fast: false
matrix:
os:
- ubuntu24.04
- ubuntu22.04
- ubuntu20.04
- debian12
- debian11
- debian10
- amzn2
- amzn2023
- el7
- el8
- el9
- alpine3.15.1
arch:
- amd64
- arm64
builder:
- vsn: "5.5-5:1.15.7-26.2.5.14-1"
otp: "26.2.5.14-1"
- vsn: "5.5-5:1.18.3-27.3.4.2-1"
otp: "27.3.4.2-1"
runs-on: ubuntu-24.04${{ matrix.arch == 'arm64' && '-arm' || '' }}
container: ghcr.io/emqx/emqx-builder/${{ matrix.builder.vsn }}-${{ matrix.os }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: recursive
fetch-depth: 0
ref: ${{ github.event.inputs.build_from }} # when input is not given, the event tag is used
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: build release
env:
BUILD_RELEASE: 1
CI_RELEASE_VERSION: ${{ github.event.inputs.release_as }}
run: ./build.sh
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: packages-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.builder.otp }}
path: |
_packages/*.tar.gz
_packages/*.tar.gz.sha256
release:
runs-on: ubuntu-latest
needs:
- mac
- linux
if: startsWith(github.ref, 'refs/tags/') || inputs.release_as
steps:
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
with:
pattern: 'packages-*'
path: packages
merge-multiple: true
- name: Create Release
uses: softprops/action-gh-release@72f2c25fcb47643c292f7107632f7a47c1df5cd8 # v2.3.2
with:
name: Erlang jq NIF ${{ github.event.inputs.release_as || github.ref_name }} Released
tag_name: ${{ github.event.inputs.release_as || github.ref_name }}
files: "packages/*"