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:
|
||||||
|
SPRUCE_TEST_VERBOSE: "1"
|
||||||
|
SPRUCE_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]
|
[source,console]
|
||||||
----
|
----
|
||||||
$ spruce
|
$ spruce
|
||||||
A tool for building CVs
|
SUMMARY:
|
||||||
|
spruce - A command-line tool for building CVs
|
||||||
|
|
||||||
Usage:
|
VERSION:
|
||||||
|
v0.3.0
|
||||||
|
|
||||||
|
USAGE:
|
||||||
spruce [flags]
|
spruce [flags]
|
||||||
spruce [command]
|
spruce [command]
|
||||||
|
|
||||||
Available Commands:
|
COMMANDS:
|
||||||
create create a new CV JSON file
|
create creates a new CV JSON file
|
||||||
generate generate a PDF file from an existing CV JSON file
|
generate generates a PDF file from an existing CV JSON file
|
||||||
version print the application's build information
|
version print the application's version and build information
|
||||||
|
|
||||||
Flags:
|
FLAGS:
|
||||||
-h, --help
|
-help, --help
|
||||||
print the help message for spruce
|
print the help message
|
||||||
|
|
||||||
Use "spruce [command] --help" for more information about a command.
|
Use "spruce [command] --help" for more information about a command.
|
||||||
----
|
----
|
||||||
|
|
|
@ -19,6 +19,25 @@ var (
|
||||||
defaultInstallPrefix = "/usr/local"
|
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.
|
// Lint runs golangci-lint against the code.
|
||||||
func Lint() error {
|
func Lint() error {
|
||||||
return sh.RunV("golangci-lint", "run", "--color", "always")
|
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