Добавлен Magefile
Этот коммит содержится в:
родитель
118230cd11
коммит
e7ec5361e8
1 изменённых файлов: 78 добавлений и 0 удалений
78
Magefile.go
Обычный файл
78
Magefile.go
Обычный файл
|
@ -0,0 +1,78 @@
|
||||||
|
//go:build mage
|
||||||
|
// +build mage
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
// mage:import
|
||||||
|
. "magefile/docker"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
GolangVolume = "golang.upstream"
|
||||||
|
MyGoImageName = "my/go"
|
||||||
|
GOPATH = "/gopath"
|
||||||
|
GOCACHE = GOPATH + "/gocache"
|
||||||
|
GoPathMount = "-v " + GOPATH + ":" + GOPATH + ":rw"
|
||||||
|
GoPathEnv = "-e GOPATH=" + GOPATH
|
||||||
|
GoCacheEnv = "-e GOCACHE=" + GOCACHE
|
||||||
|
GolangMount = "-v " + GolangVolume + ":/usr/local/go:ro"
|
||||||
|
GoAll = GolangMount + ` \
|
||||||
|
` + GoPathMount + ` \
|
||||||
|
` + GoPathEnv + ` \
|
||||||
|
` + GoCacheEnv
|
||||||
|
|
||||||
|
tests_to_run = []string{}
|
||||||
|
)
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
AppName = "schet"
|
||||||
|
ImageName = "my/go"
|
||||||
|
NetName = "none"
|
||||||
|
|
||||||
|
RunFn = run
|
||||||
|
}
|
||||||
|
|
||||||
|
func run() error {
|
||||||
|
err := BuildCMD()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
return Bash(`./schet config.json statement.txt`)
|
||||||
|
}
|
||||||
|
|
||||||
|
func BuildCMD() error {
|
||||||
|
return Bash(`go build -o schet cmd/schet/main.go `)
|
||||||
|
}
|
||||||
|
|
||||||
|
func Test() {
|
||||||
|
runTests("./...", false)
|
||||||
|
}
|
||||||
|
func TestVerbose() {
|
||||||
|
runTests("./...", true)
|
||||||
|
}
|
||||||
|
|
||||||
|
func runTests(path string, verbose bool) error {
|
||||||
|
v := ""
|
||||||
|
if verbose {
|
||||||
|
v = "-v"
|
||||||
|
}
|
||||||
|
return Bash(`sudo docker run -ti --rm \
|
||||||
|
-h host \
|
||||||
|
--net=none \
|
||||||
|
-v /etc/localtime:/etc/localtime:ro \
|
||||||
|
\
|
||||||
|
` + GoAll + ` \
|
||||||
|
\
|
||||||
|
-v ${PWD}:/app \
|
||||||
|
\
|
||||||
|
-w /app \
|
||||||
|
-u 1000 \
|
||||||
|
\
|
||||||
|
--entrypoint=/bin/bash \
|
||||||
|
\
|
||||||
|
` + ImageName + " -c '" + ` \
|
||||||
|
go test ` + v + ` -gcflags=-l -count=1 ` + path + `
|
||||||
|
'`)
|
||||||
|
}
|
Загрузка…
Создание таблицы
Сослаться в новой задаче