name: Release General on: push: tags: - '[0-9]+.[0-9]+*' jobs: release: name: Create GitHub release runs-on: ubuntu-latest if: startsWith(github.ref, 'refs/tags/') outputs: upload_url: ${{ steps.create_release.outputs.upload_url }} release_id: ${{ steps.create_release.outputs.id }} steps: - uses: actions/checkout@v3 - name: Extract ChangeLog entry ... # Hack to extract latest entry for body_path below run: | awk '/-----*/{if (x == 1) exit; x=1;next}x' ChangeLog.md \ |head -n -1 > release.md cat release.md - name: Create release ... id: create_release uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ github.ref }} release_name: Finit v${{ github.ref }} body_path: release.md draft: false prerelease: false tarball: name: Build and upload release tarball needs: release if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Installing dependencies run: | sudo apt-get -y update sudo apt-get -y install pkg-config jq wget https://github.com/troglobit/libuev/releases/download/v2.3.2/libuev-2.3.2.tar.xz wget https://github.com/troglobit/libite/releases/download/v2.5.2/libite-2.5.2.tar.gz tar xf libuev-2.3.2.tar.xz tar xf libite-2.5.2.tar.gz (cd libuev-2.3.2 && ./configure --prefix=/usr && make && sudo make install-strip) (cd libite-2.5.2 && ./configure --prefix=/usr && make && sudo make install-strip) sudo ldconfig - name: Creating Makefiles run: | ./autogen.sh ./configure --prefix=/usr --exec-prefix= --sysconfdir=/etc --localstatedir=/var --enable-x11-common-plugin --with-watchdog --with-keventd - name: Building release run: | make release ls -lF ../ mkdir -p artifacts/ mv ../*.tar.* artifacts/ - name: Uploading release artifacts uses: skx/github-action-publish-binaries@release-0.15 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: releaseId: ${{ needs.release.outputs.release_id }} args: artifacts/*