mirror of
https://github.com/tuna/tunasync.git
synced 2025-04-21 04:42:46 +00:00
74 lines
1.5 KiB
YAML
74 lines
1.5 KiB
YAML
name: tunasync
|
|
|
|
on: [push]
|
|
|
|
jobs:
|
|
|
|
build:
|
|
name: Build
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
|
|
- name: Set up Go 1.13
|
|
uses: actions/setup-go@v1
|
|
with:
|
|
go-version: 1.13
|
|
id: go
|
|
|
|
- name: Check out code into the Go module directory
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Get dependencies
|
|
run: |
|
|
go get -v -t -d ./cmd/tunasync
|
|
go get -v -t -d ./cmd/tunasynctl
|
|
|
|
- name: Build
|
|
run: |
|
|
make tunasync
|
|
make tunasynctl
|
|
|
|
- name: Keep artifacts
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: tunasync-bin
|
|
path: build-linux-amd64/
|
|
|
|
test:
|
|
name: Test
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
|
|
- name: Setup test dependencies
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y cgroup-bin
|
|
docker pull alpine:3.8
|
|
lssubsys -am
|
|
sudo cgcreate -a $USER -t $USER -g cpu:tunasync
|
|
sudo cgcreate -a $USER -t $USER -g memory:tunasync
|
|
|
|
- name: Set up Go 1.13
|
|
uses: actions/setup-go@v1
|
|
with:
|
|
go-version: 1.13
|
|
id: go
|
|
|
|
- name: Check out code into the Go module directory
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Run Unit tests.
|
|
run: make test
|
|
|
|
- name: Convert coverage to lcov
|
|
uses: jandelgado/gcov2lcov-action@v1.0.0
|
|
with:
|
|
infile: profile.cov
|
|
outfile: coverage.lcov
|
|
|
|
- name: Coveralls
|
|
uses: coverallsapp/github-action@v1.0.1
|
|
with:
|
|
github-token: ${{ secrets.github_token }}
|
|
path-to-lcov: coverage.lcov
|