Files
rat/.github/workflows/build.yml
2023-02-13 17:46:25 -03:00

116 lines
2.9 KiB
YAML

name: Build Executables
on: [push]
jobs:
tests:
name: Run tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.19
- name: Install dependencies
shell: bash
run: sudo apt-get update && sudo apt-get -y install libgl1-mesa-dev xorg-dev libasound2-dev
- name: Run tests
shell: bash
run: xvfb-run go test -v ./...
build-win:
name: Build Windows binary
needs: tests
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.19
- name: Build Windows exe
shell: bash
run: go build
- name: Upload Windows exe
uses: actions/upload-artifact@v3
with:
name: neko-win
path: |
LICENSE
neko.exe
build-mac:
name: Build MacOS binary
needs: tests
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.19
- name: Build Mac exe
shell: bash
run: go build
- name: Tar it up
shell: bash
run: tar -zcvf neko-mac.tar.gz neko LICENSE
- name: Upload Mac exe
uses: actions/upload-artifact@v3
with:
name: neko-mac
path: neko-mac.tar.gz
build-lin:
name: Build Linux binary
needs: tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.19
- name: Install dependencies
shell: bash
run: sudo apt-get update && sudo apt-get -y install libgl1-mesa-dev xorg-dev libasound2-dev
- name: Build Linux exe
shell: bash
run: go build -v
- name: Tar it up
shell: bash
run: tar -zcvf neko-lin.tar.gz neko LICENSE
- name: Upload Linux exe
uses: actions/upload-artifact@v3
with:
name: neko-lin
path: neko-lin.tar.gz
upload-bundle:
name: Bundle binaries with dev assets
runs-on: ubuntu-latest
needs: [build-lin, build-mac, build-win]
steps:
- uses: actions/checkout@v3
- name: Download Windows binary
uses: actions/download-artifact@v3
with:
name: neko-win
- name: Download Linux binary
uses: actions/download-artifact@v3
with:
name: neko-lin
- name: Download Mac binary
uses: actions/download-artifact@v3
with:
name: neko-mac
- name: Upload beta testing bundle
uses: actions/upload-artifact@v3
with:
name: neko-bundle
path: |
README.md
LICENSE
neko-lin.tar.gz
neko-mac.tar.gz
neko.exe