Fixed release workflow #21
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-tauri-app" | |
on: | |
push: | |
tags: | |
- 'v[0-9]+.[0-9]+.[0-9]+' | |
- 'v[0-9]+.[0-9]+.[0-9]+-[a-z]+.[0-9]+' | |
jobs: | |
publish-happ: | |
permissions: | |
contents: write | |
runs-on: ubuntu-22.04 | |
outputs: | |
releaseId: ${{ steps.create-release.outputs.id }} | |
appVersion: ${{ steps.version.outputs.APP_VERSION }} | |
steps: | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
# Checks out a copy of your repository on the ubuntu-latest machine | |
- uses: actions/checkout@v3 | |
- name: Install nix | |
uses: cachix/install-nix-action@v27 | |
with: | |
github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
nix_path: nixpkgs=channel:nixos-24.05 | |
- uses: cachix/cachix-action@v15 | |
with: | |
name: holochain-ci | |
- uses: cachix/cachix-action@v15 | |
with: | |
name: holochain-open-dev | |
- uses: cachix/cachix-action@v15 | |
with: | |
name: darksoil-studio | |
- name: Install and test | |
run: | | |
nix-store --gc | |
nix develop --no-update-lock-file --accept-flake-config --command bash -c "npm install && npm run build:happ" | |
- name: Retrieve version | |
run: | | |
echo "APP_VERSION=$(cat src-tauri/tauri.conf.json | grep -oP '(?<="version": ")[^"]*')" >> $GITHUB_OUTPUT | |
id: version | |
- id: create-release | |
uses: ncipollo/release-action@v1 | |
with: | |
allowUpdates: true | |
artifacts: "workdir/relay.happ" | |
body: "See assets below to download and install this version." | |
name: Relay v${{ steps.version.outputs.APP_VERSION }} | |
tag: v${{ steps.version.outputs.APP_VERSION }} | |
prerelease: true | |
draft: false | |
release-tauri-app: | |
needs: publish-happ | |
permissions: write-all | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- platform: 'macos-latest' # for Arm based macs (M1 and above). | |
- platform: 'macos-13' # for Intel based macs. | |
- platform: 'ubuntu-22.04' # for Tauri v1 you could replace this with ubuntu-20.04. | |
env: | |
MACOSX_DEPLOYMENT_TARGET: 10.13 | |
runs-on: ${{ matrix.platform }} | |
steps: | |
- name: Support longpaths | |
if: matrix.platform != 'ubuntu-22.04' | |
run: git config --system core.longpaths true | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
# Checks out a copy of your repository on the ubuntu-latest machine | |
- uses: actions/checkout@v2 | |
- name: Extend space | |
if: matrix.platform == 'ubuntu-22.04' | |
uses: ./.github/actions/extend-space | |
- name: Extend space macos | |
if: matrix.platform != 'ubuntu-22.04' | |
uses: ./.github/actions/extend-space-macos | |
- name: Install nix | |
uses: cachix/install-nix-action@v27 | |
with: | |
github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
nix_path: nixpkgs=channel:nixos-24.05 | |
- uses: cachix/cachix-action@v15 | |
with: | |
name: holochain-ci | |
- uses: cachix/cachix-action@v15 | |
with: | |
name: holochain-open-dev | |
- uses: cachix/cachix-action@v15 | |
with: | |
name: darksoil-studio | |
- name: Install and prepare | |
run: | | |
nix develop --no-update-lock-file --command npm install | |
- name: Download release of the .happ | |
uses: robinraju/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
releaseId: ${{ needs.publish-happ.outputs.releaseId }} | |
fileName: 'relay.happ' | |
out-file-path: 'workdir/' | |
- name: build the app | |
uses: tauri-apps/tauri-action@v0 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tauriScript: nix develop --no-update-lock-file --command npm tauri | |
releaseId: ${{ needs.publish-happ.outputs.releaseId }} | |
releaseDraft: true | |
prerelease: true | |
release-tauri-app-windows: | |
permissions: write-all | |
needs: publish-happ | |
runs-on: windows-latest | |
steps: | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
# Checks out a copy of your repository on the ubuntu-latest machine | |
- uses: actions/checkout@v3 | |
- name: setup node | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 20 | |
- name: install Rust stable | |
uses: actions-rs/toolchain@v1 | |
with: | |
override: true | |
toolchain: 1.77.2 | |
- name: install Go stable | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "stable" | |
- name: Install and prepare | |
run: | | |
npm install | |
- name: build the app | |
uses: tauri-apps/tauri-action@v0 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
releaseId: ${{ needs.publish-happ.outputs.releaseId }} | |
- name: Print version | |
run: | | |
echo "The Version was: ${{ needs.publish-happ.outputs.appVersion }}" | |
id: print-version | |
- name: Download release of the .happ | |
uses: robinraju/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
releaseId: ${{ needs.publish-happ.outputs.releaseId }} | |
fileName: 'relay.happ' | |
out-file-path: 'workdir/' | |
- name: build the app | |
uses: tauri-apps/tauri-action@v0 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
releaseId: ${{ needs.publish-happ.outputs.releaseId }} | |
releaseDraft: true | |
prerelease: true |