1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
# SPDX-FileCopyrightText: 2015-2025 Alexey Rochev
#
# SPDX-License-Identifier: CC0-1.0
name: Release
on:
release:
types: [published]
jobs:
upload-source-archives:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3
with:
submodules: 'recursive'
- name: Upload source archives to release
run: |
readarray -t archives < <(.github/workflows/make-source-archive.py gzip zstd)
echo "Uploading source archives ${archives[@]}"
gh release upload '${{ github.event.release.tag_name }}' "${archives[@]}"
.github/workflows/make-flatpak-manifest-for-release.py '${{ github.event.release.tag_name }}' "${archives[-1]}"
echo "Release Flatpak manifest:"
cat org.equeim.Tremotesf.json
gh release upload '${{ github.event.release.tag_name }}' org.equeim.Tremotesf.json
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
upload-debian-source-package:
runs-on: ubuntu-latest
steps:
- name: Check out sources
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3
with:
submodules: 'recursive'
- name: Make source archive
run: |
.github/workflows/make-source-archive.py --output-directory .. --debian gzip
- name: Check out Debian sources
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3
with:
repository: equeim/tremotesf-debian
ref: ${{ github.event.release.tag_name }}
path: tremotesf-debian
- name: Remove everything except debian/ directory
run: |
mv tremotesf-debian/debian debian
rm -rf tremotesf-debian
- name: Make source package
run: |
dpkg-buildpackage --build=source --no-pre-clean
- name: Upload source package to release
run: |
shopt -s failglob
cd ..
files=(tremotesf_*.debian.* tremotesf_*.dsc tremotesf_*.orig.*)
archive_filename="$(basename tremotesf_*.dsc .dsc)-debian-source.tar.gz"
echo "Archiving ${files[@]} to $archive_filename"
tar --create --gzip --file "$archive_filename" "${files[@]}"
echo "Uploading artifact $archive_filename"
gh release upload --repo '${{ github.repository }}' '${{ github.event.release.tag_name }}' "$archive_filename"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
build-windows-msvc:
strategy:
fail-fast: false
matrix:
arch: ['x86_64', 'arm64']
uses: ./.github/workflows/build-windows-msvc.yml
with:
arch: ${{ matrix.arch }}
release-tag: ${{ github.event.release.tag_name }}
build-macos:
uses: ./.github/workflows/build-macos.yml
with:
release-tag: ${{ github.event.release.tag_name }}
|