Skip to content

Quickstart

name: build
on:
push:
branches: [main]
tags: ["v*"]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: dAppCore/build@v4
with:
build-name: myApp

That detects the stack, installs the toolchains it needs, builds, uploads the result as a workflow artifact, and — on a tag — publishes a GitHub release.

Nothing about the action changes per runner; the matrix does the work.

jobs:
build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v7
- uses: dAppCore/build@v4
with:
build-name: myApp

Useful on pull requests, where you want to know it compiles and nothing more.

- uses: dAppCore/build@v4
with:
build-name: myApp
package: false

When your app is not at the repository root

Section titled “When your app is not at the repository root”
- uses: dAppCore/build@v4
with:
build-name: myApp
app-working-directory: apps/desktop

Three levels, so you choose how much movement you want:

@v4 the newest v4 release — the usual choice
@v4.2 the newest v4.2.x — bug fixes, no new behaviour
@v4.2.0 never moves
- uses: dAppCore/build@v4.2.0

The floating tags only move when a release is cut, never on a commit to main, so main running ahead of them is normal.

- uses: dAppCore/build@v4.1.0