116 lines
3.2 KiB
YAML
Raw Normal View History

2023-08-03 01:47:26 +02:00
# 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:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
2023-08-23 23:26:38 +02:00
linux:
2023-08-03 01:47:26 +02:00
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.20'
- name: Install libfido2-dev
run: sudo apt-get install -y libfido2-dev
- name: Install gio dependencies
run: sudo apt-get install -y gcc pkg-config libwayland-dev libx11-dev libx11-xcb-dev libxkbcommon-x11-dev libgles2-mesa-dev libegl1-mesa-dev libffi-dev libxcursor-dev libvulkan-dev
2023-08-23 23:30:20 +02:00
- name: Build
2023-08-24 22:18:45 +02:00
run: go build -v .
2023-08-03 01:47:26 +02:00
- name: Test
2023-08-24 22:18:45 +02:00
run: go test -v .
2023-09-19 22:56:27 +02:00
- uses: actions/upload-artifact@v3
with:
name: goldwarden-linux
path: ./goldwarden
linux-packaging:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
2023-09-19 23:13:57 +02:00
- name: Install libfido2-dev
run: sudo apt-get install -y libfido2-dev
- name: Install gio dependencies
run: sudo apt-get install -y gcc pkg-config libwayland-dev libx11-dev libx11-xcb-dev libxkbcommon-x11-dev libgles2-mesa-dev libegl1-mesa-dev libffi-dev libxcursor-dev libvulkan-dev
2023-09-20 00:07:02 +02:00
- name: Build
run: go build -v .
- name: Move binaries to directories
2023-09-20 00:13:09 +02:00
run: |
mkdir -p .debpkg/usr/bin &&
2023-09-20 00:07:02 +02:00
mkdir -p .rpmpkg/usr/bin
cp -p goldwarden .debpkg/usr/bin/
cp -p goldwarden .rpmpkg/usr/bin/
- uses: jiro4989/build-deb-action@v3
2023-09-19 22:56:27 +02:00
with:
2023-09-20 00:07:02 +02:00
package: goldwarden
package_root: .debpkg
maintainer: quexten
version: ${{ github.ref }}
arch: 'amd64'
desc: 'Goldwarden'
- uses: actions/upload-artifact@v3
2023-09-19 22:56:27 +02:00
with:
2023-09-20 00:07:02 +02:00
name: goldwarden.deb
path: ./*.deb
2023-09-19 22:56:27 +02:00
2023-09-20 00:07:02 +02:00
- uses: jiro4989/build-rpm-action@v2
with:
summary: 'Goldwarden'
package: goldwarden
package_root: .rpmpkg
maintainer: quexten
version: ${{ github.ref }}
arch: 'x86_64'
desc: 'Goldwarden'
- uses: actions/upload-artifact@v3
with:
name: goldwarden.rpm
path: |
./*.rpm
!./*-debuginfo-*.rpm
2023-08-23 23:26:38 +02:00
macos:
2023-09-19 22:56:27 +02:00
runs-on: macos-latest
2023-08-23 23:26:38 +02:00
steps:
- name: Checkout
uses: actions/checkout@v1
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.20'
2023-08-23 23:30:20 +02:00
- name: Build
2023-08-24 22:18:45 +02:00
run: go build -tags "nofido2 noautofill" -v .
2023-08-23 23:30:20 +02:00
- name: Test
2023-08-24 22:18:45 +02:00
run: go test -tags "nofido2 noautofill" -v .
2023-09-19 22:56:27 +02:00
- uses: actions/upload-artifact@v3
with:
name: goldwarden-macos
path: ./goldwarden
2023-08-23 23:26:38 +02:00
windows:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v1
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.20'
2023-08-23 23:30:20 +02:00
- name: Build
2023-08-24 22:18:45 +02:00
run: go build -tags "nofido2 noautofill" -v .
2023-08-23 23:30:20 +02:00
- name: Test
2023-08-24 22:18:45 +02:00
run: go test -tags "nofido2 noautofill" -v .
2023-09-19 22:56:27 +02:00
- uses: actions/upload-artifact@v3
with:
name: goldwarden-windows.exe
path: ./goldwarden.exe