Update Project #9
4 changed files with 82 additions and 9 deletions
37
.forgejo/workflows/workflow.yaml
Normal file
37
.forgejo/workflows/workflow.yaml
Normal file
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
on:
|
||||
pull_request:
|
||||
types:
|
||||
- opened
|
||||
- reopened
|
||||
- synchronize
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: docker
|
||||
env:
|
||||
GO_TEST_VERBOSE: "1"
|
||||
GO_TEST_COVER: "1"
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: https://code.forgejo.org/actions/checkout@v3
|
||||
- name: Setup Go
|
||||
uses: https://code.forgejo.org/actions/setup-go@v4
|
||||
with:
|
||||
go-version: '1.21'
|
||||
- name: Test
|
||||
run: go run magefiles/main.go -v test
|
||||
|
||||
lint:
|
||||
runs-on: docker
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: https://code.forgejo.org/actions/checkout@v3
|
||||
- name: Setup Go
|
||||
uses: https://code.forgejo.org/actions/setup-go@v4
|
||||
with:
|
||||
go-version: '1.21'
|
||||
- name: Lint
|
||||
uses: https://github.com/golangci/golangci-lint-action@v3
|
||||
with:
|
||||
version: v1.54
|
|
@ -110,20 +110,24 @@ Run `spruce` to verify your installation. You should see the usage printed onto
|
|||
[source,console]
|
||||
----
|
||||
$ spruce
|
||||
A tool for building CVs
|
||||
SUMMARY:
|
||||
spruce - A command-line tool for building CVs
|
||||
|
||||
Usage:
|
||||
VERSION:
|
||||
v0.3.0
|
||||
|
||||
USAGE:
|
||||
spruce [flags]
|
||||
spruce [command]
|
||||
|
||||
Available Commands:
|
||||
create create a new CV JSON file
|
||||
generate generate a PDF file from an existing CV JSON file
|
||||
version print the application's build information
|
||||
COMMANDS:
|
||||
create creates a new CV JSON file
|
||||
generate generates a PDF file from an existing CV JSON file
|
||||
version print the application's version and build information
|
||||
|
||||
Flags:
|
||||
-h, --help
|
||||
print the help message for spruce
|
||||
FLAGS:
|
||||
-help, --help
|
||||
print the help message
|
||||
|
||||
Use "spruce [command] --help" for more information about a command.
|
||||
----
|
||||
|
|
|
@ -19,6 +19,25 @@ var (
|
|||
defaultInstallPrefix = "/usr/local"
|
||||
)
|
||||
|
||||
// Test run the go tests.
|
||||
// To enable verbose mode set SPRUCE_TEST_VERBOSE=1.
|
||||
// To enable coverage mode set SPRUCE_TEST_COVER=1.
|
||||
func Test() error {
|
||||
goTest := sh.RunCmd("go", "test")
|
||||
|
||||
args := []string{"./..."}
|
||||
|
||||
if os.Getenv("SPRUCE_TEST_VERBOSE") == "1" {
|
||||
args = append(args, "-v")
|
||||
}
|
||||
|
||||
if os.Getenv("SPRUCE_TEST_COVER") == "1" {
|
||||
args = append(args, "-cover")
|
||||
}
|
||||
|
||||
return goTest(args...)
|
||||
}
|
||||
|
||||
// Lint runs golangci-lint against the code.
|
||||
func Lint() error {
|
||||
return sh.RunV("golangci-lint", "run", "--color", "always")
|
||||
|
|
13
magefiles/main.go
Normal file
13
magefiles/main.go
Normal file
|
@ -0,0 +1,13 @@
|
|||
//go:build ignore
|
||||
|
||||
package main
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"github.com/magefile/mage/mage"
|
||||
)
|
||||
|
||||
func main() {
|
||||
os.Exit(mage.Main())
|
||||
}
|
Loading…
Reference in a new issue