docs(readme): fix Telegram link #4
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
on: | |
push: | |
tags: | |
- "v*.*.*" | |
# Required for creating GitHub release. | |
permissions: | |
contents: write | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-windows: | |
name: ${{ matrix.config.name }} | |
runs-on: ${{ matrix.config.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- { | |
name: "Windows Server 2022 / Qt 6", | |
os: windows-2022, | |
qt_modules: "qtwebengine qtwebchannel qtpositioning", | |
qt_version: "6.7.2", | |
configurePreset: ninja-multi-vcpkg, | |
buildPreset: ninja-multi-vcpkg-release | |
} | |
- { | |
name: "Windows Server 2022 / Qt 6 / Portable", | |
os: windows-2022, | |
qt_modules: "qtwebengine qtwebchannel qtpositioning", | |
qt_version: "6.7.2", | |
configurePreset: ninja-multi-vcpkg-portable, | |
buildPreset: ninja-multi-vcpkg-portable-release | |
} | |
env: | |
VCPKG_DEFAULT_TRIPLET: x64-windows-release | |
ZEAL_RELEASE_BUILD: ON | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Prepare vcpkg | |
uses: lukka/run-vcpkg@v11 | |
with: | |
vcpkgDirectory: ${{ runner.workspace }}/vcpkg | |
vcpkgGitCommitId: 01f602195983451bc83e72f4214af2cbc495aa94 # 2024.05.24 | |
- name: Install Qt | |
uses: jurplel/install-qt-action@v4 | |
with: | |
arch: win64_msvc2019_64 | |
modules: ${{ matrix.config.qt_modules }} | |
version: ${{ matrix.config.qt_version }} | |
cache: true | |
extra: --external 7z | |
- name: Configure & Build | |
uses: lukka/run-cmake@v10 | |
with: | |
configurePreset: ${{ matrix.config.configurePreset }} | |
buildPreset: ${{ matrix.config.buildPreset }} | |
- name: Retrieve Application Version | |
run: | | |
$zeal_version = Get-Content build/${{ matrix.config.configurePreset }}/zeal_version | |
Write-Output "Zeal Version: $zeal_version" | |
"ZEAL_VERSION=$zeal_version" >> $env:GITHUB_ENV | |
- name: Package | |
run: cmake --build build --preset ${{ matrix.config.buildPreset }} --target package | |
env: | |
CODESIGN_CERTIFICATE_BASE64: ${{ secrets.CODESIGN_CERTIFICATE_BASE64 }} | |
CODESIGN_PASSWORD: ${{ secrets.CODESIGN_PASSWORD }} | |
- name: Update GitHub Release | |
uses: softprops/action-gh-release@v2 | |
with: | |
draft: true | |
# Only upload the following artifacts: | |
# - Portable 7-Zip and ZIP packages. | |
# - Non-portable MSI package. | |
files: | | |
build/${{ matrix.config.configurePreset }}/zeal-${{ env.ZEAL_VERSION }}-portable-windows-x64.* | |
build/${{ matrix.config.configurePreset }}/zeal-${{ env.ZEAL_VERSION }}-windows-x64.msi* | |
build-appimage: | |
name: AppImage | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Build AppImage | |
uses: ./.github/workflows/appimage/ | |
with: | |
recipe: pkg/appimage/appimage-amd64.yaml | |
apt_dependencies: >- | |
build-essential | |
cmake extra-cmake-modules | |
libappindicator-dev | |
libarchive-dev | |
libqt5x11extras5-dev | |
libsqlite3-dev | |
libxcb-keysyms1-dev | |
ninja-build | |
qtbase5-dev | |
qtwebengine5-dev | |
- name: Generate Digest Files | |
run: for file in zeal-*.AppImage*; do sha256sum $file > $file.sha256; done | |
- name: Update GitHub Release | |
uses: softprops/action-gh-release@v2 | |
with: | |
draft: true | |
fail_on_unmatched_files: true | |
files: | | |
zeal-*.AppImage* | |
build-ubuntu: | |
name: ${{ matrix.config.name }} | |
runs-on: ${{ matrix.config.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- { | |
name: "Ubuntu 22.04 / Source", | |
os: ubuntu-22.04, | |
qt_packages: "libgl1-mesa-dev libqt6opengl6-dev qt6-base-private-dev qt6-webengine-dev qt6-webengine-dev-tools", | |
configurePreset: "ninja-multi", | |
buildPreset: "ninja-multi-release" | |
} | |
env: | |
ZEAL_RELEASE_BUILD: ON | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install Dependencies | |
run: | | |
sudo apt-get -y -qq update | |
sudo apt-get -y -qq --no-install-recommends install \ | |
cmake \ | |
extra-cmake-modules \ | |
libarchive-dev \ | |
libsqlite3-dev \ | |
libvulkan-dev \ | |
libxcb-keysyms1-dev \ | |
ninja-build \ | |
${{ matrix.config.qt_packages }} | |
- name: Configure & Package Source | |
uses: lukka/run-cmake@v10 | |
with: | |
configurePreset: ${{ matrix.config.configurePreset }} | |
buildPreset: ${{ matrix.config.buildPreset }} | |
buildPresetAdditionalArgs: "['--target package_source']" | |
- name: Generate Changelog | |
uses: orhun/git-cliff-action@v4 | |
id: git-cliff | |
with: | |
args: --latest | |
config: .github/workflows/release/cliff.toml | |
env: | |
GITHUB_REPO: ${{ github.repository }} | |
- name: Update GitHub Release | |
uses: softprops/action-gh-release@v2 | |
with: | |
draft: true | |
fail_on_unmatched_files: true | |
body: ${{ steps.git-cliff.outputs.content }} | |
# Only upload the following artifacts: | |
# - Source packages. | |
files: | | |
build/${{ matrix.config.configurePreset }}/zeal-*.* |