Compare commits

..

No commits in common. "main" and "tauri-build-v0.1.2-beta.6" have entirely different histories.

56 changed files with 1728 additions and 31754 deletions

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Update Tauri CLI to version `1.0.0-rc.10`

View File

@ -4,15 +4,14 @@
"github action": {
"version": true,
"preversion": [
"pnpm install --no-optional --no-frozen-lockfile",
"pnpm install --no-optional",
"pnpm build",
"pnpm package"
],
"getPublishedVersion": "git describe --tags --abbrev=0",
"getPublishedVersion": "git tag v${ pkgFile.version } 2> /dev/null || echo ${ pkgFile.version }",
"publish": [
"git tag v${ pkgFile.versionMajor } -f",
"git tag v${ pkgFile.versionMajor }.${ pkgFile.versionMinor } -f",
"git tag v${ pkgFile.version } -f",
"git push --tags -f"
]
}
@ -23,4 +22,4 @@
"manager": "github action"
}
}
}
}

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Use proper cargo command to detect the artifact directory.

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Call the correct tauri subcommand

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Include Tauri CLI binaries for all supported platforms.

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Correctly encode the output as JSON

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Only change working directory when projectPath is given.

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Correctly change working dir to projectPath when configured.

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch
---
Replace execa with standard NodeJS exec.

13
.changes/pre.json Normal file
View File

@ -0,0 +1,13 @@
{
"tag": "beta",
"changes": [
".changes/chore-update-tauri.md",
".changes/fix-artifact-detection.md",
".changes/fix-build-args.md",
".changes/fix-cli-on-platforms.md",
".changes/fix-correct-json-formatting.md",
".changes/fix-optional-chdir.md",
".changes/fix-project-path.md",
".changes/fix-replace-execa.md"
]
}

View File

@ -1,5 +1,5 @@
{
"plugins": ["@typescript-eslint"],
"plugins": ["jest", "@typescript-eslint"],
"extends": ["plugin:github/recommended"],
"parser": "@typescript-eslint/parser",
"parserOptions": {
@ -49,6 +49,7 @@
},
"env": {
"node": true,
"es6": true
"es6": true,
"jest/globals": true
}
}

View File

@ -38,11 +38,11 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
source-root: src
@ -54,7 +54,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v3
uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
@ -68,4 +68,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
uses: github/codeql-action/analyze@v2

View File

@ -6,7 +6,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
with:
fetch-depth: 0 # required for use of git history
- name: covector status

View File

@ -19,18 +19,18 @@ jobs:
successfulPublish: ${{ steps.covector.outputs.successfulPublish }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: git config
run: |
git config --global user.name "${{ github.event.pusher.name }}"
git config --global user.email "${{ github.event.pusher.email }}"
- uses: actions/setup-node@v4.0.1
- uses: actions/setup-node@v3.1.1
with:
node-version: 20
node-version: '16.x'
registry-url: 'https://registry.npmjs.org'
- uses: pnpm/action-setup@v2.4.1
- uses: pnpm/action-setup@v2.2.1
name: Install pnpm
id: pnpm-install
with:
@ -39,7 +39,7 @@ jobs:
- name: Get pnpm store directory
id: pnpm-cache
run: |
echo "pnpm_cache_dir=$(pnpm store path)" >> $GITHUB_OUTPUT
echo "::set-output name=pnpm_cache_dir::$(pnpm store path)"
- uses: actions/cache@v3
name: Setup pnpm cache
with:
@ -56,12 +56,12 @@ jobs:
createRelease: true
- name: Create Pull Request With Versions Bumped
id: cpr
uses: peter-evans/create-pull-request@v5
uses: peter-evans/create-pull-request@v4
if: steps.covector.outputs.commandRan == 'version'
with:
token: ${{ secrets.GITHUB_TOKEN }}
title: 'Publish New Versions'
commit-message: 'publish new versions'
labels: 'version updates'
branch: 'release'
title: "Publish New Versions"
commit-message: "publish new versions"
labels: "version updates"
branch: "release"
body: ${{ steps.covector.outputs.change }}

View File

@ -1,78 +0,0 @@
name: 'Test'
on:
workflow_dispatch:
push:
branches:
- main
paths:
- '.github/workflows/test.yml'
- 'src/**'
- 'test/**'
- 'package.json'
- 'pnpm-lock.yaml'
pull_request:
paths:
- '.github/workflows/test.yml'
- 'src/**'
- 'test/**'
- 'package.json'
- 'pnpm-lock.yaml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-binaries:
strategy:
fail-fast: false
matrix:
platform:
- os: ubuntu-latest
rust_target: x86_64-unknown-linux-gnu
- os: macos-latest
rust_target: x86_64-apple-darwin
- os: macos-latest
rust_target: aarch64-apple-darwin
- os: windows-latest
rust_target: x86_64-pc-windows-msvc
runs-on: ${{ matrix.platform.os }}
steps:
- uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: 20
- name: 'Setup Rust'
uses: actions-rs/toolchain@v1
with:
default: true
override: true
profile: minimal
toolchain: stable
target: ${{ matrix.platform.rust_target }}
- uses: Swatinem/rust-cache@v2
- name: install dependencies (ubuntu only)
if: matrix.platform.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
- uses: JonasKruckenberg/tauri-build@main
id: tauri_build
with:
target: ${{ matrix.platform.rust_target }}
projectPath: ./test/fixture
- run: |
echo "${{ steps.tauri_build.outputs.artifacts }}"
# The artifacts output can now be used to upload the artifacts
- uses: actions/upload-artifact@v3
with:
name: artifacts
path: "${{ join(fromJSON(steps.tauri_build.outputs.artifacts), '\n') }}"

4
.gitignore vendored
View File

@ -96,6 +96,4 @@ Thumbs.db
# Ignore built ts files
__tests__/runner/*
lib/**/*
.idea
lib/**/*

View File

@ -1,325 +1,5 @@
# Changelog
## \[1.5.11]
- Bump Tauri to 1.5.11
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
- [b276ab4](https://github.com/JonasKruckenberg/tauri-build/commit/b276ab4f56979d0c6def87108ca74b8953fa1121) publish new versions on 2024-03-27
- [e6488f6](https://github.com/JonasKruckenberg/tauri-build/commit/e6488f6ca27d6ecb050073bc1acf6969cc846362) bump tauri to 1.5.5 on 2024-03-27
- [adafea7](https://github.com/JonasKruckenberg/tauri-build/commit/adafea7f538516a594a02b2faa14fe02b871afc9) publish new versions on 2024-03-27
- [d204133](https://github.com/JonasKruckenberg/tauri-build/commit/d20413310668195c4b70fcde98fe2ff11a5beb76) bump tauri to 1.5.6 on 2024-03-27
- [60bf491](https://github.com/JonasKruckenberg/tauri-build/commit/60bf4916f05d542730244eaab1544456cb465745) publish new versions on 2024-03-27
- [f912eb2](https://github.com/JonasKruckenberg/tauri-build/commit/f912eb2f75a12645f5411355019490ec200fb755) bump tauri to 1.5.7 on 2024-03-27
- [60da836](https://github.com/JonasKruckenberg/tauri-build/commit/60da836ab0fa46ae8f01076875952eb17c4c7e22) publish new versions on 2024-03-27
- [3af1940](https://github.com/JonasKruckenberg/tauri-build/commit/3af1940371c9f65d0d46fe2d2cc64b517f7a704a) bump tauri to 1.5.8 on 2024-03-27
- [9724fd9](https://github.com/JonasKruckenberg/tauri-build/commit/9724fd9351dcd083aa242854d3da65306e5d36c5) publish new versions on 2024-03-27
- [4ef3b52](https://github.com/JonasKruckenberg/tauri-build/commit/4ef3b52b28cff111f75bf9f22f20f48cc48e8be2) bump tauri to 1.5.11 on 2024-03-27
- [5423222](https://github.com/JonasKruckenberg/tauri-build/commit/54232224730a63599b526de8543f553a65a9ac33) publish new versions on 2024-03-27
- [3fda59d](https://github.com/JonasKruckenberg/tauri-build/commit/3fda59d57a1ae7009850f6b71d78262b97578f46) bump tauri to 1.5.10 on 2024-03-27
- [39921cb](https://github.com/JonasKruckenberg/tauri-build/commit/39921cb0909bca56a36ee59de7fcbf3728e63189) publish new versions on 2024-03-27
- [d87106e](https://github.com/JonasKruckenberg/tauri-build/commit/d87106eb09dc3049ecfd30c4f6ca17b462bc0eb8) bump tauri to 1.5.11 on 2024-03-27
- [f66ea66](https://github.com/JonasKruckenberg/tauri-build/commit/f66ea660359dba143165ce2354a72b103fdb7854) Revert "bump tauri to 1.5.11" on 2024-03-27
- [ac9a4e1](https://github.com/JonasKruckenberg/tauri-build/commit/ac9a4e15515f1abd52d8f76a82d1e6b8aed43ba8) Revert "Revert "bump tauri to 1.5.11"" on 2024-03-27
## \[1.5.10]
- Bump Tauri to 1.5.10
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
- [b276ab4](https://github.com/JonasKruckenberg/tauri-build/commit/b276ab4f56979d0c6def87108ca74b8953fa1121) publish new versions on 2024-03-27
- [e6488f6](https://github.com/JonasKruckenberg/tauri-build/commit/e6488f6ca27d6ecb050073bc1acf6969cc846362) bump tauri to 1.5.5 on 2024-03-27
- [adafea7](https://github.com/JonasKruckenberg/tauri-build/commit/adafea7f538516a594a02b2faa14fe02b871afc9) publish new versions on 2024-03-27
- [d204133](https://github.com/JonasKruckenberg/tauri-build/commit/d20413310668195c4b70fcde98fe2ff11a5beb76) bump tauri to 1.5.6 on 2024-03-27
- [60bf491](https://github.com/JonasKruckenberg/tauri-build/commit/60bf4916f05d542730244eaab1544456cb465745) publish new versions on 2024-03-27
- [f912eb2](https://github.com/JonasKruckenberg/tauri-build/commit/f912eb2f75a12645f5411355019490ec200fb755) bump tauri to 1.5.7 on 2024-03-27
- [60da836](https://github.com/JonasKruckenberg/tauri-build/commit/60da836ab0fa46ae8f01076875952eb17c4c7e22) publish new versions on 2024-03-27
- [3af1940](https://github.com/JonasKruckenberg/tauri-build/commit/3af1940371c9f65d0d46fe2d2cc64b517f7a704a) bump tauri to 1.5.8 on 2024-03-27
- [9724fd9](https://github.com/JonasKruckenberg/tauri-build/commit/9724fd9351dcd083aa242854d3da65306e5d36c5) publish new versions on 2024-03-27
- [4ef3b52](https://github.com/JonasKruckenberg/tauri-build/commit/4ef3b52b28cff111f75bf9f22f20f48cc48e8be2) bump tauri to 1.5.11 on 2024-03-27
- [5423222](https://github.com/JonasKruckenberg/tauri-build/commit/54232224730a63599b526de8543f553a65a9ac33) publish new versions on 2024-03-27
- [3fda59d](https://github.com/JonasKruckenberg/tauri-build/commit/3fda59d57a1ae7009850f6b71d78262b97578f46) bump tauri to 1.5.10 on 2024-03-27
## \[1.5.9]
- Bump Tauri to 1.5.9
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
- [b276ab4](https://github.com/JonasKruckenberg/tauri-build/commit/b276ab4f56979d0c6def87108ca74b8953fa1121) publish new versions on 2024-03-27
- [e6488f6](https://github.com/JonasKruckenberg/tauri-build/commit/e6488f6ca27d6ecb050073bc1acf6969cc846362) bump tauri to 1.5.5 on 2024-03-27
- [adafea7](https://github.com/JonasKruckenberg/tauri-build/commit/adafea7f538516a594a02b2faa14fe02b871afc9) publish new versions on 2024-03-27
- [d204133](https://github.com/JonasKruckenberg/tauri-build/commit/d20413310668195c4b70fcde98fe2ff11a5beb76) bump tauri to 1.5.6 on 2024-03-27
- [60bf491](https://github.com/JonasKruckenberg/tauri-build/commit/60bf4916f05d542730244eaab1544456cb465745) publish new versions on 2024-03-27
- [f912eb2](https://github.com/JonasKruckenberg/tauri-build/commit/f912eb2f75a12645f5411355019490ec200fb755) bump tauri to 1.5.7 on 2024-03-27
- [60da836](https://github.com/JonasKruckenberg/tauri-build/commit/60da836ab0fa46ae8f01076875952eb17c4c7e22) publish new versions on 2024-03-27
- [3af1940](https://github.com/JonasKruckenberg/tauri-build/commit/3af1940371c9f65d0d46fe2d2cc64b517f7a704a) bump tauri to 1.5.8 on 2024-03-27
- [9724fd9](https://github.com/JonasKruckenberg/tauri-build/commit/9724fd9351dcd083aa242854d3da65306e5d36c5) publish new versions on 2024-03-27
- [4ef3b52](https://github.com/JonasKruckenberg/tauri-build/commit/4ef3b52b28cff111f75bf9f22f20f48cc48e8be2) bump tauri to 1.5.11 on 2024-03-27
## \[1.5.8]
- Bump Tauri CLI to 1.5.8
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
- [b276ab4](https://github.com/JonasKruckenberg/tauri-build/commit/b276ab4f56979d0c6def87108ca74b8953fa1121) publish new versions on 2024-03-27
- [e6488f6](https://github.com/JonasKruckenberg/tauri-build/commit/e6488f6ca27d6ecb050073bc1acf6969cc846362) bump tauri to 1.5.5 on 2024-03-27
- [adafea7](https://github.com/JonasKruckenberg/tauri-build/commit/adafea7f538516a594a02b2faa14fe02b871afc9) publish new versions on 2024-03-27
- [d204133](https://github.com/JonasKruckenberg/tauri-build/commit/d20413310668195c4b70fcde98fe2ff11a5beb76) bump tauri to 1.5.6 on 2024-03-27
- [60bf491](https://github.com/JonasKruckenberg/tauri-build/commit/60bf4916f05d542730244eaab1544456cb465745) publish new versions on 2024-03-27
- [f912eb2](https://github.com/JonasKruckenberg/tauri-build/commit/f912eb2f75a12645f5411355019490ec200fb755) bump tauri to 1.5.7 on 2024-03-27
- [60da836](https://github.com/JonasKruckenberg/tauri-build/commit/60da836ab0fa46ae8f01076875952eb17c4c7e22) publish new versions on 2024-03-27
- [3af1940](https://github.com/JonasKruckenberg/tauri-build/commit/3af1940371c9f65d0d46fe2d2cc64b517f7a704a) bump tauri to 1.5.8 on 2024-03-27
## \[1.5.7]
- Bump Tauri CLI to 1.5.7
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
- [b276ab4](https://github.com/JonasKruckenberg/tauri-build/commit/b276ab4f56979d0c6def87108ca74b8953fa1121) publish new versions on 2024-03-27
- [e6488f6](https://github.com/JonasKruckenberg/tauri-build/commit/e6488f6ca27d6ecb050073bc1acf6969cc846362) bump tauri to 1.5.5 on 2024-03-27
- [adafea7](https://github.com/JonasKruckenberg/tauri-build/commit/adafea7f538516a594a02b2faa14fe02b871afc9) publish new versions on 2024-03-27
- [d204133](https://github.com/JonasKruckenberg/tauri-build/commit/d20413310668195c4b70fcde98fe2ff11a5beb76) bump tauri to 1.5.6 on 2024-03-27
- [60bf491](https://github.com/JonasKruckenberg/tauri-build/commit/60bf4916f05d542730244eaab1544456cb465745) publish new versions on 2024-03-27
- [f912eb2](https://github.com/JonasKruckenberg/tauri-build/commit/f912eb2f75a12645f5411355019490ec200fb755) bump tauri to 1.5.7 on 2024-03-27
## \[1.5.6]
- Bump Tauri CLI to 1.5.6
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
- [b276ab4](https://github.com/JonasKruckenberg/tauri-build/commit/b276ab4f56979d0c6def87108ca74b8953fa1121) publish new versions on 2024-03-27
- [e6488f6](https://github.com/JonasKruckenberg/tauri-build/commit/e6488f6ca27d6ecb050073bc1acf6969cc846362) bump tauri to 1.5.5 on 2024-03-27
- [adafea7](https://github.com/JonasKruckenberg/tauri-build/commit/adafea7f538516a594a02b2faa14fe02b871afc9) publish new versions on 2024-03-27
- [d204133](https://github.com/JonasKruckenberg/tauri-build/commit/d20413310668195c4b70fcde98fe2ff11a5beb76) bump tauri to 1.5.6 on 2024-03-27
## \[1.5.5]
- Bump Tauri CLI to 1.5.5
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
- [b276ab4](https://github.com/JonasKruckenberg/tauri-build/commit/b276ab4f56979d0c6def87108ca74b8953fa1121) publish new versions on 2024-03-27
- [e6488f6](https://github.com/JonasKruckenberg/tauri-build/commit/e6488f6ca27d6ecb050073bc1acf6969cc846362) bump tauri to 1.5.5 on 2024-03-27
## \[1.5.4]
- Bump Tauri CLI to 1.5.4
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
- [a712643](https://github.com/JonasKruckenberg/tauri-build/commit/a712643d07f25c79a741552ea2f6f425c8c201ba) publish new versions on 2024-03-27
- [c761657](https://github.com/JonasKruckenberg/tauri-build/commit/c761657ea88b1f42b9fc4b5c00f7b712531ed8f5) bump tauri to 1.5.4 on 2024-03-27
## \[1.5.2]
- Bump Tauri CLI to 1.5.2
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
- [ae1bfe9](https://github.com/JonasKruckenberg/tauri-build/commit/ae1bfe9746502983323c5b20fc273fca9ddc2f83) publish new versions on 2024-03-27
- [1a70e16](https://github.com/JonasKruckenberg/tauri-build/commit/1a70e162c264affc4fe3f3acf9dbea4a0717a508) bump tauri to 1.5.2 on 2024-03-27
- [c450190](https://github.com/JonasKruckenberg/tauri-build/commit/c450190ba4fafae76975e9757a9d02a34262eb17) Update bump-tauri.md on 2024-03-27
## \[1.5.1]
- Bump Tauri CLI to 1.5.1
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
- [da63165](https://github.com/JonasKruckenberg/tauri-build/commit/da631651080a3f6a054a04689aabcced0fb27166) publish new versions on 2024-03-27
- [2143a74](https://github.com/JonasKruckenberg/tauri-build/commit/2143a74716c973189a1c68171024c772ce99f962) bump tauri on 2024-03-27
## \[1.5.0]
- Bump Tauri CLI to 1.5.0
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
- [5cfbb48](https://github.com/JonasKruckenberg/tauri-build/commit/5cfbb48254bda2944898618864feab9ce333e555) publish new versions on 2022-09-24
- [ae03b5c](https://github.com/JonasKruckenberg/tauri-build/commit/ae03b5c9d2dfe37115cdf1ce8735b94ed6df1b1d) bump tauri on 2024-03-27
## \[1.4.0]
- Update Tauri to 1.4.0
- [e8e3a06](https://github.com/JonasKruckenberg/tauri-build/commit/e8e3a063b0b9a0065a3298417538bc4a4cd67dcf) Create tauri-140.md on 2023-09-09
## \[1.3.0]
- Update tauri to 1.3.0
- [f78901d](https://github.com/JonasKruckenberg/tauri-build/commit/f78901d646969119b2585fbcaf3d46056f1604c1) Create update-tauri.md on 2022-09-16
- [24c9678](https://github.com/JonasKruckenberg/tauri-build/commit/24c9678759ed3f11bcd173349949791c79af9471) publish new versions on 2022-09-16
- [16e594e](https://github.com/JonasKruckenberg/tauri-build/commit/16e594e2bd5705d3272a4fdfbb09ee509c26ace8) Create update-tauri.md on 2022-11-09
- [9cbb1b5](https://github.com/JonasKruckenberg/tauri-build/commit/9cbb1b5329393fdf442be97243c12d64ffaa24d3) publish new versions on 2022-11-09
- [f4944ed](https://github.com/JonasKruckenberg/tauri-build/commit/f4944ed69c7b08318409c8a713b452c983a595e5) Create update-tauri.md on 2023-05-04
## \[1.2.3]
- Update Tauri
- [c9a9f47](https://github.com/JonasKruckenberg/tauri-build/commit/c9a9f477a4028c6f7d73c7de60436358ce2a63d8) Create update-tauri-cli.md on 2023-02-05
## \[1.2.2]
- Update Tauri to 1.2.2
- [f931547](https://github.com/JonasKruckenberg/tauri-build/commit/f931547988eea8767b932b7ce5d5bd86f6669f8a) Create tauri.md on 2022-11-24
- [1b5505e](https://github.com/JonasKruckenberg/tauri-build/commit/1b5505e385fe23a85c6179c408cd612553417e3b) publish new versions on 2022-11-24
- [592d807](https://github.com/JonasKruckenberg/tauri-build/commit/592d8078fbe1fed5ed444ef0fda5d20373ae2ac8) Create tauri.md on 2022-12-09
## \[1.2.1]
- - [f931547](https://github.com/JonasKruckenberg/tauri-build/commit/f931547988eea8767b932b7ce5d5bd86f6669f8a) Create tauri.md on 2022-11-24
## \[1.2.0]
- Update Tauri to 1.2.0
- [f78901d](https://github.com/JonasKruckenberg/tauri-build/commit/f78901d646969119b2585fbcaf3d46056f1604c1) Create update-tauri.md on 2022-09-16
- [24c9678](https://github.com/JonasKruckenberg/tauri-build/commit/24c9678759ed3f11bcd173349949791c79af9471) publish new versions on 2022-09-16
- [16e594e](https://github.com/JonasKruckenberg/tauri-build/commit/16e594e2bd5705d3272a4fdfbb09ee509c26ace8) Create update-tauri.md on 2022-11-09
## \[1.1.1]
- Update `tauri` to v1.1.1
- [d749ebb](https://github.com/JonasKruckenberg/tauri-build/commit/d749ebb9bc9fe181aa1f61f294b323c751e9f09e) Create bump-tauri.md on 2022-09-24
## \[1.1.0]
- Update Tauri to 1.1.0
- [f78901d](https://github.com/JonasKruckenberg/tauri-build/commit/f78901d646969119b2585fbcaf3d46056f1604c1) Create update-tauri.md on 2022-09-16
## \[1.0.5]
- Update `tauri-cli` to 1.0.5
- [05b5654](https://github.com/JonasKruckenberg/tauri-build/commit/05b5654a68d17983acb8ec5cee449f0544ea833b) Create tauri-1.0.5.md on 2022-07-22
## \[1.0.4]
- Update Tauri to v1.0.4
- [1c6b6ac](https://github.com/JonasKruckenberg/tauri-build/commit/1c6b6ac74223d2d5b8902739262d9adc41119acf) Create tauri-1.0.4.md on 2022-07-15
## \[1.0.1]
- Update Tauri to v1.0.1
- [2195e36](https://github.com/JonasKruckenberg/tauri-build/commit/2195e362649c4cd9d083dc1cb5a35721ffdc78a5) Create update-tauri-1\_0\_1.md on 2022-06-29
## \[1.0.0]
- Update dependencies.
- [0ab72e4](https://github.com/JonasKruckenberg/tauri-build/commit/0ab72e4401f708b71b4556fa678ae644bfd164cb) Create chore-update-deps.md on 2022-05-18
- Update Tauri CLI to version `1.0.0-rc.10`
- [f83afa4](https://github.com/JonasKruckenberg/tauri-build/commit/f83afa4608fbec046f5b1015d2129e36c6de7c2f) Create chore-update-tauri.md on 2022-05-08
- Update to latest Tauri version
- [9f533f3](https://github.com/JonasKruckenberg/tauri-build/commit/9f533f359c472a37212a33431f0c1c9905e2d58c) Create chore-update-tauri2.md on 2022-06-15
- Use proper cargo command to detect the artifact directory.
- [e21d218](https://github.com/JonasKruckenberg/tauri-build/commit/e21d218be11a5009285f6bb6b1cee5a214cec470) fix: proper target dir detection using cargo on 2022-05-09
- Call the correct tauri subcommand
- [f593898](https://github.com/JonasKruckenberg/tauri-build/commit/f593898d4994e9ab7130631432cffbbde4ec74ba) fix: call the correct tauri subcommand on 2022-05-08
- Include Tauri CLI binaries for all supported platforms.
- [59ffbba](https://github.com/JonasKruckenberg/tauri-build/commit/59ffbba21ce2ad94621365ddf2f848c908e4e2ec) fix. use only deps supported on gh actions on 2022-05-08
- Correctly encode the output as JSON
- [86b50e9](https://github.com/JonasKruckenberg/tauri-build/commit/86b50e91f77b9e0b951b4d7a02bf8c969caa9c15) fix: correctly encode output as json on 2022-05-09
- Correctly compress .app files or omit them.
- [c9676c7](https://github.com/JonasKruckenberg/tauri-build/commit/c9676c7bb66d2fb0da128dc28a86bdca541e3cc5) fix: correctly handle .app files on 2022-05-10
- Fix globbing for artifacts on windows.
- [4728478](https://github.com/JonasKruckenberg/tauri-build/commit/4728478711cb3d8373d20dd2246f44bacbd51f3b) fix: globbing for artifacts on windows on 2022-05-09
- Ignore the linuxdelpoy.AppImage artifact
- [af44d01](https://github.com/JonasKruckenberg/tauri-build/commit/af44d01e2641bd82acc2c45f9b9ac8cb887a6577) fix: ignore linuxdeploy on 2022-05-09
- Only change working directory when projectPath is given.
- [5fa2b7e](https://github.com/JonasKruckenberg/tauri-build/commit/5fa2b7e361e1a40748f9373544d42ae2d287e260) only change dir optionally on 2022-05-08
- Correctly change working dir to projectPath when configured.
- [8864b18](https://github.com/JonasKruckenberg/tauri-build/commit/8864b1892897635a72de9bfce95f395c39c35eb1) fix: correctly change working dir to projectPath on 2022-05-08
- Remove default `configPath`
- [3708b7d](https://github.com/JonasKruckenberg/tauri-build/commit/3708b7de55753331b93547c98ab47f70a1d2be2b) fix: remove default configPath on 2022-05-10
- Replace execa with standard NodeJS exec.
- [9c72264](https://github.com/JonasKruckenberg/tauri-build/commit/9c722640b5343e17d4e870945a5ab8bab093a782) add changefile on 2022-05-09
- Update to Tauri v1.0.0.
- [925b02e](https://github.com/JonasKruckenberg/tauri-build/commit/925b02e58362fadca318e6df343ec665457aefb8) Create publish-stable.md on 2022-06-16
## \[0.1.2-beta.11]
- Update to latest Tauri version
- [9f533f3](https://github.com/JonasKruckenberg/tauri-build/commit/9f533f359c472a37212a33431f0c1c9905e2d58c) Create chore-update-tauri2.md on 2022-06-15
## \[0.1.2-beta.10]
- Update dependencies.
- [0ab72e4](https://github.com/JonasKruckenberg/tauri-build/commit/0ab72e4401f708b71b4556fa678ae644bfd164cb) Create chore-update-deps.md on 2022-05-18
## \[0.1.2-beta.9]
- Correctly compress .app files or omit them.
- [c9676c7](https://github.com/JonasKruckenberg/tauri-build/commit/c9676c7bb66d2fb0da128dc28a86bdca541e3cc5) fix: correctly handle .app files on 2022-05-10
- Remove default `configPath`
- [3708b7d](https://github.com/JonasKruckenberg/tauri-build/commit/3708b7de55753331b93547c98ab47f70a1d2be2b) fix: remove default configPath on 2022-05-10
## \[0.1.2-beta.8]
- Ignore the linuxdelpoy.AppImage artifact
- [af44d01](https://github.com/JonasKruckenberg/tauri-build/commit/af44d01e2641bd82acc2c45f9b9ac8cb887a6577) fix: ignore linuxdeploy on 2022-05-09
## \[0.1.2-beta.7]
- Fix globbing for artifacts on windows.
- [4728478](https://github.com/JonasKruckenberg/tauri-build/commit/4728478711cb3d8373d20dd2246f44bacbd51f3b) fix: globbing for artifacts on windows on 2022-05-09
## \[0.1.2-beta.6]
- Correctly encode the output as JSON

1
CODEOWNERS Normal file
View File

@ -0,0 +1 @@
* @actions/actions-runtime

13
LICENSE
View File

@ -1,6 +1,7 @@
MIT License
Copyright (c) 2022 Jonas Kruckenberg
The MIT License (MIT)
Copyright (c) 2018 GitHub, Inc. and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@ -9,13 +10,13 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

234
README.md
View File

@ -1,240 +1,24 @@
# tauri-build
A composable action to build your Tauri project.
<p align="center">
<a href="https://github.com/actions/typescript-action/actions"><img alt="typescript-action status" src="https://github.com/actions/typescript-action/workflows/build-test/badge.svg"></a>
</p>
## Usage
As opposed to the offical [tauri-action](https://github.com/tauri-apps/tauri-action) this action is as minimal as possible.
Instead of creating a GitHub release and uploading artifacts all-in-one, it provides outputs to conveniently compose together with other actions such as `actions/upload-artifact`, `actions/download-artifact` or `softprops/action-gh-release`.
This action needs both Node.JS and Cargo to be already setup.
### Minimal
The following example workflow builds artifacts on all 3 supported platforms (Window, macOS and Linux).
```yaml
name: 'publish'
on:
push:
branches:
- release
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-binaries:
strategy:
fail-fast: false
matrix:
platform: [macos-latest, ubuntu-latest, windows-latest]
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v2
- name: setup node
uses: actions/setup-node@v1
with:
node-version: 20
- name: install Rust stable
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
- uses: JonasKruckenberg/tauri-build@v1
id: tauri_build
# You can now use the JSON array of artifacts under `steps.tauri_build.outputs.artifacts` to post-process/upload your bundles
```
### Bundling the app and creating a release
Chances are you want to do *something* with the artifacts that you produced. The following action will produce artifacts for Windows, macOS and Linux upload them as workflow artifacts, so that a final job (called `publish`) can create a GitHub release and attach all prouced artifacts to it. This would also be the place where you could upload artifacts to an AWS Bucket or similar.
```yaml
name: 'publish'
on:
push:
branches:
- release
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-binaries:
strategy:
fail-fast: false
matrix:
platform: [macos-latest, ubuntu-latest, windows-latest]
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v2
- name: setup node
uses: actions/setup-node@v1
with:
node-version: 20
- name: install Rust stable
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
- uses: JonasKruckenberg/tauri-build@v1
id: tauri_build
# The `artifacts` output can now be used by a different action to upload the artifacts
- uses: actions/upload-artifact@v3
with:
name: artifacts
path: "${{ join(fromJSON(steps.tauri_build.outputs.artifacts), '\n') }}"
publish:
needs: build-binaries
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
# Download the previously uploaded artifacts
- uses: actions/download-artifact@v3
id: download
with:
name: artifacts
path: artifacts
# And create a release with the artifacts attached
- name: 'create release'
uses: softprops/action-gh-release@master
env:
GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
with:
draft: false
files: ./artifacts/**/*
```
### Building for Apple Silicon
This example workflow will run produce binaries for Apple Silicon (aarch64) as well as the previously shown 3 platforms. This leverages the build matrix. This can be expanded to produce binaries for other target combinations too.
```yaml
name: 'publish'
on:
push:
branches:
- release
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-binaries:
strategy:
fail-fast: false
matrix:
platform:
- os: ubuntu-latest
rust_target: x86_64-unknown-linux-gnu
- os: macos-latest
rust_target: x86_64-apple-darwin
- os: macos-latest
rust_target: aarch64-apple-darwin
- os: windows-latest
rust_target: x86_64-pc-windows-msvc
runs-on: ${{ matrix.platform.os }}
steps:
- uses: actions/checkout@v3
- name: setup node
uses: actions/setup-node@v3
with:
node-version: 20
- name: 'Setup Rust'
uses: actions-rs/toolchain@v1
with:
default: true
override: true
profile: minimal
toolchain: stable
target: ${{ matrix.platform.rust_target }}
- uses: Swatinem/rust-cache@v2
- name: install dependencies (ubuntu only)
if: matrix.platform.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
- uses: JonasKruckenberg/tauri-build@v1.2.2
id: tauri_build
with:
target: ${{ matrix.platform.rust_target }}
# The artifacts output can now be used to upload the artifacts
- uses: actions/upload-artifact@v3
with:
name: artifacts
path: "${{ join(fromJSON(steps.tauri_build.outputs.artifacts), '\n') }}"
publish:
needs: build-binaries
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
# Download the previously uploaded artifacts
- uses: actions/download-artifact@v3
id: download
with:
name: artifacts
path: artifacts
# And create a release with the artifacts attached
- name: 'create release'
uses: softprops/action-gh-release@master
env:
GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
with:
draft: false
files: ./artifacts/**/*
```
## Inputs
| Name | Type | Description | Default |
| ------------- | ------- | ----------------------------------------------------------- | ----------------- |
|---------------|---------|-------------------------------------------------------------|-------------------|
| `runner` | String | Binary to use to build the application | |
| `args` | String | Additional arguments for the build command | |
| `projectPath` | String | Path to the root of the Tauri project | . |
| `configPath` | String | Path to the tauri.conf.json file, relative to `projectPath` | `tauri.conf.json` |
| `target` | String | Rust target triple to build against | |
| `debug` | Boolean | Wether to build _debug_ or _release_ binaries | false |
| `debug` | Boolean | Wether to build *debug* or *release* binaries | false |
## Outputs
| Name | Type | Description |
| ----------- | ------ | ---------------------------------------------------------- |
|-------------|--------|------------------------------------------------------------|
| `artifacts` | String | JSON array of artifact paths produced by the build command |
## Permissions
@ -244,8 +28,4 @@ This Action requires the following permissions on the GitHub integration token:
```yaml
permissions:
contents: write
```
## License
[MIT © Jonas Kruckenberg](./LICENSE)
```

View File

@ -12,6 +12,7 @@ inputs:
description: 'Path to the root of the project'
configPath:
description: 'Path to the tauri.conf.json file if you want a configuration different from the default one'
default: 'tauri.conf.json'
target:
description: 'The target triple to build against'
debug:
@ -21,5 +22,5 @@ outputs:
artifacts:
description: 'JSON array of artifact paths produced by the build command'
runs:
using: 'node20'
using: 'node16'
main: 'dist/index.js'

BIN
dist/cli.darwin-arm64.node generated vendored

Binary file not shown.

BIN
dist/cli.darwin-x64.node generated vendored

Binary file not shown.

BIN
dist/cli.linux-x64-gnu.node generated vendored

Binary file not shown.

BIN
dist/cli.win32-x64-msvc.node generated vendored

Binary file not shown.

25537
dist/index.js generated vendored

File diff suppressed because one or more lines are too long

2
dist/index.js.map generated vendored

File diff suppressed because one or more lines are too long

63
dist/licenses.txt generated vendored
View File

@ -35,28 +35,6 @@ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@fastify/busboy
MIT
Copyright Brian White. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.
@tauri-apps/cli
Apache-2.0 OR MIT
@ -238,9 +216,6 @@ Apache-2.0 OR MIT
END OF TERMS AND CONDITIONS
@tauri-apps/cli-darwin-arm64
MIT
@tauri-apps/cli-darwin-x64
MIT
@ -383,41 +358,3 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
undici
MIT
MIT License
Copyright (c) Matteo Collina and Undici contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
uuid
MIT
The MIT License (MIT)
Copyright (c) 2010-2020 Robert Kieffer and other contributors
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -1,6 +1,6 @@
{
"name": "tauri-build",
"version": "1.5.11",
"version": "0.1.2-beta.6",
"description": "TypeScript template action",
"main": "lib/main.js",
"scripts": {
@ -23,24 +23,22 @@
"author": "",
"license": "MIT",
"dependencies": {
"@actions/core": "^1.10.1",
"@tauri-apps/cli": "1.6.0",
"@tauri-apps/cli-darwin-x64": "1.6.0",
"@tauri-apps/cli-darwin-arm64": "1.6.0",
"@tauri-apps/cli-linux-x64-gnu": "1.6.0",
"@tauri-apps/cli-win32-x64-msvc": "1.6.0",
"string-argv": "^0.3.2",
"@actions/core": "^1.6.0",
"@tauri-apps/cli": "1.0.0-rc.10",
"@tauri-apps/cli-darwin-x64": "1.0.0-rc.10",
"@tauri-apps/cli-linux-x64-gnu": "1.0.0-rc.10",
"@tauri-apps/cli-win32-x64-msvc": "1.0.0-rc.10",
"string-argv": "^0.3.1",
"tiny-glob": "^0.2.9"
},
"devDependencies": {
"@types/node": "20.11.3",
"@typescript-eslint/parser": "6.7.0",
"@vercel/ncc": "0.38.1",
"eslint": "8.49.0",
"eslint-plugin-github": "4.10.1",
"@types/node": "16.11.33",
"@typescript-eslint/parser": "5.22.0",
"@vercel/ncc": "0.33.4",
"eslint": "8.15.0",
"eslint-plugin-github": "4.3.6",
"js-yaml": "4.1.0",
"prettier": "3.0.3",
"typescript": "5.3.3"
},
"packageManager": "pnpm@9.7.1+sha512.faf344af2d6ca65c4c5c8c2224ea77a81a5e8859cbc4e06b1511ddce2f0151512431dd19e6aff31f2c6a8f5f2aced9bd2273e1fed7dd4de1868984059d2c4247"
"prettier": "2.6.2",
"typescript": "4.6.4"
}
}

3377
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,3 @@
{
"extends": ["config:base"],
"packageRules": [
{
"matchPackagePatterns": ["^@tauri-apps/"],
"groupName": "Tauri packages"
}
]
"extends": ["config:base"]
}

View File

@ -1,5 +1,5 @@
import {run} from '@tauri-apps/cli'
import {basename, dirname, join, resolve} from 'path'
import {dirname, join, resolve} from 'path'
import glob from 'tiny-glob'
import * as core from '@actions/core'
import {
@ -19,11 +19,7 @@ interface BuildOptions {
}
export async function buildProject(options: BuildOptions): Promise<string[]> {
const args: string[] = options.args || []
if (options.debug) {
args.push('--debug')
}
let args: string[] = options.args || []
if (options.configPath) {
args.push('--config', options.configPath)
@ -47,17 +43,11 @@ export async function buildProject(options: BuildOptions): Promise<string[]> {
await run(['build', ...args], '')
}
const crateDir = await glob(`./**/Cargo.toml`).then(([manifest]) =>
join(process.cwd(), dirname(manifest))
)
const metaRaw = await execCmd(
'cargo',
['metadata', '--no-deps', '--format-version', '1'],
{cwd: crateDir}
)
const crateDir = await glob(`./**/Cargo.toml`).then(([manifest]) => join(process.cwd(), dirname(manifest)))
const metaRaw = await execCmd('cargo', ['metadata', '--no-deps', '--format-version', '1'], { cwd: crateDir })
const meta = JSON.parse(metaRaw)
const targetDir = meta.target_directory
const profile = options.debug ? 'debug' : 'release'
const bundleDir = options.target
? join(targetDir, options.target, profile, 'bundle')
@ -70,59 +60,22 @@ export async function buildProject(options: BuildOptions): Promise<string[]> {
'AppImage.tar.gz.sig',
'deb'
]
const windowsExts = ['exe', 'exe.zip', 'exe.zip.sig', 'msi', 'msi.zip', 'msi.zip.sig']
const windowsExts = ['msi', 'msi.zip', 'msi.zip.sig']
const artifactsLookupPattern = `${bundleDir}/*/!(linuxdeploy)*.{${[
...macOSExts,
linuxExts,
windowsExts
].join(',')}}`
const artifactsLookupPattern = join(bundleDir, `*/*.{${[...macOSExts, linuxExts, windowsExts].join(',')}}`)
core.debug(
`Looking for artifacts using this pattern: ${artifactsLookupPattern}`
)
core.debug(`Looking for artifacts using this pattern: ${artifactsLookupPattern}`)
const artifacts = await glob(artifactsLookupPattern, {
absolute: true,
filesOnly: false
})
let i = 0
for (const artifact of artifacts) {
if (
artifact.endsWith('.app') &&
!artifacts.some(a => a.endsWith('.app.tar.gz'))
) {
await execCmd('tar', [
'czf',
`${artifact}.tar.gz`,
'-C',
dirname(artifact),
basename(artifact)
])
artifacts[i] += '.tar.gz'
} else if (artifact.endsWith('.app')) {
// we can't upload a directory
artifacts.splice(i, 1)
}
i++
}
return artifacts
return glob(artifactsLookupPattern, { absolute: true, filesOnly: false })
}
async function spawnCmd(
cmd: string,
args: string[],
options: SpawnOptionsWithoutStdio = {}
): Promise<void> {
) {
return new Promise((resolve, reject) => {
const child = spawn(cmd, args, {
...options,
stdio: ['pipe', 'inherit', 'inherit'],
shell: true
})
const child = spawn(cmd, args, {...options, stdio: ['pipe', 'inherit', 'inherit'], shell: true})
child.on('exit', () => resolve)
@ -141,7 +94,7 @@ async function spawnCmd(
async function execCmd(
cmd: string,
args: string[],
options: Omit<ExecOptionsWithStringEncoding, 'encoding'> = {}
options: Omit<ExecOptionsWithStringEncoding, 'encoding'>
): Promise<string> {
return new Promise((resolve, reject) => {
exec(
@ -149,11 +102,7 @@ async function execCmd(
{...options, encoding: 'utf-8'},
(error, stdout, stderr) => {
if (error) {
console.error(
`Failed to execute cmd ${cmd} with args: ${args.join(
' '
)}. reason: ${error}`
)
console.error(`Failed to execute cmd ${cmd} with args: ${args.join(' ')}. reason: ${error}`);
reject(stderr)
} else {
resolve(stdout)

View File

@ -1,6 +1,6 @@
import * as core from '@actions/core'
import {buildProject} from './build-project'
import stringArgv from 'string-argv'
import stringArgv from 'string-argv';
async function run(): Promise<void> {
try {

View File

@ -1,21 +0,0 @@
<!DOCTYPE html>
<html>
<style>
html,
body {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
body {
display: flex;
align-items: center;
justify-content: center;
}
</style>
<body>
<h1>fixture</h1>
</body>
</html>

View File

@ -1,4 +0,0 @@
# Generated by Cargo
# will have compiled files and executables
/target/
WixTools

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +0,0 @@
[package]
name = "app"
version = "0.1.0"
description = "A Tauri App"
authors = ["you"]
license = ""
repository = ""
default-run = "app"
edition = "2021"
rust-version = "1.57"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[build-dependencies]
tauri-build = { version = "1.3", features = [] }
[dependencies]
serde_json = "1.0.82"
serde = { version = "1.0.138", features = ["derive"] }
tauri = { version = "1.3", features = [] }
[features]
# by default Tauri runs in production mode
# when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL
default = [ "custom-protocol" ]
# this feature is used used for production builds where `devPath` points to the filesystem
# DO NOT remove this
custom-protocol = [ "tauri/custom-protocol" ]

View File

@ -1,3 +0,0 @@
fn main() {
tauri_build::build()
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 974 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 903 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@ -1,10 +0,0 @@
#![cfg_attr(
all(not(debug_assertions), target_os = "windows"),
windows_subsystem = "windows"
)]
fn main() {
tauri::Builder::default()
.run(tauri::generate_context!())
.expect("error while running tauri application");
}

View File

@ -1,66 +0,0 @@
{
"$schema": "../node_modules/@tauri-apps/cli/schema.json",
"build": {
"beforeBuildCommand": "",
"beforeDevCommand": "",
"devPath": "../dist",
"distDir": "../dist"
},
"package": {
"productName": "fixture",
"version": "0.1.0"
},
"tauri": {
"allowlist": {
"all": false
},
"bundle": {
"active": true,
"category": "DeveloperTool",
"copyright": "",
"deb": {
"depends": []
},
"externalBin": [],
"icon": [
"icons/32x32.png",
"icons/128x128.png",
"icons/128x128@2x.png",
"icons/icon.icns",
"icons/icon.ico"
],
"identifier": "com.tauri-build.test",
"longDescription": "",
"macOS": {
"entitlements": null,
"exceptionDomain": "",
"frameworks": [],
"providerShortName": null,
"signingIdentity": null
},
"resources": [],
"shortDescription": "",
"targets": "all",
"windows": {
"certificateThumbprint": null,
"digestAlgorithm": "sha256",
"timestampUrl": ""
}
},
"security": {
"csp": null
},
"updater": {
"active": false
},
"windows": [
{
"fullscreen": false,
"height": 600,
"resizable": true,
"title": "Tauri App",
"width": 800
}
]
}
}