You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

96 lines
3.3 KiB

name: Build release workflow
on:
push:
tags:
- '*'
jobs:
create_release:
runs-on: ubuntu-22.04
name: Create github release
permissions:
contents: write
outputs:
upload_url: >
${{ steps.get_release.outputs.upload_url ||
steps.create_release.outputs.upload_url }}
steps:
- name: Try to Get Release
id: get_release
uses: zebra-lucky/actions-js-getRelease@0.0.3
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag: ${{ github.ref }}
- name: Create Release
id: create_release
if: ${{ !steps.get_release.outputs.upload_url }}
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
draft: false
prerelease: false
build_with_pyinstaller:
needs: create_release
runs-on: ubuntu-22.04
name: create PyInstaller build
permissions:
contents: write
steps:
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Set outputs for pkg_ver
id: set_vars
run: |
export JM_VERSION=${{ github.ref_name }}
echo "::set-output name=pkg_ver::$(echo $JM_VERSION)"
- name: Checkout
uses: actions/checkout@v1
- name: build
env:
JM_VERSION: ${{ github.ref_name }}
run: |
./contrib/build-linux/pyinstaller-build/build.sh
- name: Upload Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: dist/joinmarket-clientserver-${{ github.ref_name}}.tgz
asset_name: joinmarket-clientserver-${{ github.ref_name}}.tgz
asset_content_type: application/octet-stream
- name: Upload Qt Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: dist/joinmarket-clientserver-qt-${{ github.ref_name}}.tgz
asset_name: joinmarket-clientserver-qt-${{ github.ref_name}}.tgz
asset_content_type: application/octet-stream
- name: Upload Snicker Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: dist/joinmarket-clientserver-snicker-${{ github.ref_name}}.tgz
asset_name: joinmarket-clientserver-snicker-${{ github.ref_name}}.tgz
asset_content_type: application/octet-stream
- name: Upload ObWatch Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: dist/joinmarket-clientserver-obwatch-${{ github.ref_name}}.tgz
asset_name: joinmarket-clientserver-obwatch-${{ github.ref_name}}.tgz
asset_content_type: application/octet-stream