52 lines
1.3 KiB
YAML
52 lines
1.3 KiB
YAML
|
version: v0
|
||
|
runs:
|
||
|
- name: Test and lint
|
||
|
tasks:
|
||
|
- name: Checkout code
|
||
|
runtime:
|
||
|
type: pod
|
||
|
containers:
|
||
|
- image: docker.io/alpine/git
|
||
|
steps:
|
||
|
- clone:
|
||
|
- save_to_workspace:
|
||
|
contents:
|
||
|
- source_dir: .
|
||
|
dest_dir: .
|
||
|
paths:
|
||
|
- '**'
|
||
|
- name: Test
|
||
|
runtime:
|
||
|
type: pod
|
||
|
containers:
|
||
|
- image: docker.io/golang:1.19-bullseye
|
||
|
steps:
|
||
|
- restore_workspace:
|
||
|
dest_dir: .
|
||
|
- run:
|
||
|
name: Install Taskfile
|
||
|
command: curl -L https://github.com/go-task/task/releases/latest/download/task_linux_amd64.tar.gz | tar -xvz -C /usr/local/bin task
|
||
|
- run:
|
||
|
name: Run all tests
|
||
|
command: task test
|
||
|
depends:
|
||
|
- Checkout code
|
||
|
|
||
|
- name: Lint code
|
||
|
runtime:
|
||
|
type: pod
|
||
|
arch: amd64
|
||
|
containers:
|
||
|
- image: docker.io/golangci/golangci-lint
|
||
|
environment:
|
||
|
GO111MODULE: "on"
|
||
|
CGO_ENABLED: "0"
|
||
|
steps:
|
||
|
- restore_workspace:
|
||
|
dest_dir: .
|
||
|
- run:
|
||
|
name: Run golangci-lint
|
||
|
command: golangci-lint run -v
|
||
|
depends:
|
||
|
- Checkout code
|