Skip to content

build

build #346

Workflow file for this run

name: build
on:
push:
branches:
- main
pull_request:
merge_group:
schedule:
- cron: '0 1 * * *'
concurrency:
group: ${{ github.workflow }}-${{ github.event.number || github.ref }}
cancel-in-progress: true
env:
HUSKY: 0
jobs:
lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
- name: ⚙️ Setup pnpm
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
with:
standalone: true
- name: ⚙️ Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
with:
node-version-file: .node-version
cache: 'pnpm'
- run: pnpm install
- run: pnpm prettier
build:
needs:
- lint
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
distro:
- focal
- jammy
arch:
- x86_64
- aarch64
env:
DISTRO: ${{ matrix.distro }} # build target, name required by binary-builder
ARCH: ${{ matrix.arch }} # build target, name required by binary-builder
steps:
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
- name: binary-builder
uses: containerbase/internal-tools@6cd18334eca58b47ff6fdb465d953b5f0c92dc6b # v3.4.28
with:
command: binary-builder
dry-run: ${{github.ref != 'refs/heads/main'}}
token: ${{ secrets.GITHUB_TOKEN }}
# Catch-all required check for matrix
success:
needs:
- build
runs-on: ubuntu-latest
timeout-minutes: 1
if: always()
steps:
- name: Fail for failed or cancelled build tests
if: |
needs.build.result == 'failure' ||
needs.build.result == 'cancelled'
run: exit 1