1
0
forked from YaBL/app
app/.github/workflows/build.yml
2025-06-21 13:07:53 +03:00

66 lines
1.9 KiB
YAML

# This workflow will build a golang project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go
name: Go
on:
release:
types: [published]
workflow_dispatch:
jobs:
build-ubuntu:
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.24.4'
- name: Setup NodeJS
uses: actions/setup-node@v1
with:
node-version: '24.2.0'
- name: Build web
working-directory: ./apps/web
run: |
npm ci
npm run build
mv dist/* ../api/web
- name: Build server for linux
working-directory: ./apps/api
run: |
GOOS=linux go build -v -o ./yabl-linux-x86_64 .
GOOS=darwin go build -v -o ./yabl-darwin-x86_64 .
GOOS=windows go build -v -o ./yabl-windows-x86_64.exe .
- name: upload linux artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./yabl-linux-x86_64
asset_name: server-linux
asset_content_type: application/octet-stream
- name: upload darwin artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./yabl-darwin-x86_64
asset_name: yabl-darwin-x86_64
asset_content_type: application/octet-stream
- name: upload windows artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./yabl-windows-x86_64.exe
asset_name: yabl-windows-x86_64.exe
asset_content_type: application/octet-stream