Documentation
¶
Index ¶
- func AddGraphvizExeChecks(m map[string][]string)
- func AddPlantUMLExeChecks(m map[string][]string)
- func CheckExes(exeToRefURLs map[string][]string) (missing map[string][]string)
- func LogMissingExes(log *slog.Logger, level slog.Level, missing map[string][]string)
- func Watch(prj *gomkore.Project, chg *gomkore.Changer) error
- type Dot
- type GoDefaultGoals
- type GoModule
- func (m *GoModule) DefaultGolas(prj gomk.ProjectEd) (gs GoDefaultGoals)
- func (m *GoModule) DotGoals(prj gomk.ProjectEd) (dotSVG gomk.GoalEd)
- func (m *GoModule) Flags()
- func (m *GoModule) GoBuild() *gomk.GoBuild
- func (m *GoModule) GoGenerate() *gomk.GoGenerate
- func (m *GoModule) GoTest() *gomk.GoTest
- func (m *GoModule) GoVulncheck() *GoVulncheck
- func (m *GoModule) Make(prj *gomkore.Project) error
- type GoVulncheck
- type PlantUML
- func (puml *PlantUML) ConvertAll(prj gomk.ProjectEd, src, dst mkfs.Directory, ignoreErrors bool, ...)
- func (puml *PlantUML) Describe(*gomkore.Action, *gomkore.Env) string
- func (puml *PlantUML) Do(tr *gomkore.Trace, a *gomkore.Action, env *gomkore.Env) error
- func (puml *PlantUML) OutputFiles(source string) (res []string, err error)
- func (puml *PlantUML) WriteHash(h hash.Hash, _ *gomkore.Action, _ *gomkore.Env) (bool, error)
- type SlogTrace
- func (tr SlogTrace) CheckGoal(t *gomkore.Trace, g *gomkore.Goal)
- func (tr SlogTrace) Debug(t *gomkore.Trace, msg string, args ...any)
- func (tr SlogTrace) DoneProject(t *gomkore.Trace, p *gomkore.Project, activity string, dt time.Duration)
- func (tr SlogTrace) GoalNeedsActions(t *gomkore.Trace, g *gomkore.Goal, n int)
- func (tr SlogTrace) GoalUpToDate(t *gomkore.Trace, g *gomkore.Goal)
- func (tr SlogTrace) Info(t *gomkore.Trace, msg string, args ...any)
- func (tr SlogTrace) RemoveArtefact(t *gomkore.Trace, g *gomkore.Goal)
- func (tr SlogTrace) RunAction(t *gomkore.Trace, a *gomkore.Action)
- func (tr SlogTrace) RunImplicitAction(t *gomkore.Trace, _ *gomkore.Action)
- func (tr SlogTrace) ScheduleNotPremises(t *gomkore.Trace, a *gomkore.Action, res *gomkore.Goal)
- func (tr SlogTrace) ScheduleOutdated(t *gomkore.Trace, a *gomkore.Action, res, pre *gomkore.Goal)
- func (tr SlogTrace) SchedulePreTimeZero(t *gomkore.Trace, a *gomkore.Action, res, pre *gomkore.Goal)
- func (tr SlogTrace) ScheduleResTimeZero(t *gomkore.Trace, a *gomkore.Action, res *gomkore.Goal)
- func (tr SlogTrace) StartProject(t *gomkore.Trace, p *gomkore.Project, activity string)
- func (tr SlogTrace) Warn(t *gomkore.Trace, msg string, args ...any)
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AddGraphvizExeChecks ¶
func AddPlantUMLExeChecks ¶
func LogMissingExes ¶
Types ¶
type GoDefaultGoals ¶
type GoModule ¶
type GoModule struct { Trace *gomkore.Trace Env *gomkore.Env Clean bool DryRun bool WriteDot bool NoTest bool Watch bool ExeChecks []func(map[string][]string) // contains filtered or unexported fields }
Example ¶
build := GoModule{Env: gomkore.DefaultEnv(nil)} // Set out own Env… // …to discard stdout that breaks Go test Example output build.Env.Out = nil build.Flags() // Register and parse some useful flags // The project, name is taken from current working directory prj := gomkore.NewProject("testdata/prj") // Now, edit project for this project's specifics err := gomk.Edit(prj, func(prj gomk.ProjectEd) { // Some goals: generate, govulncheck, test goAls := build.DefaultGolas(prj) prj.Goal(mkfs.File("yacmd")). By(build.GoBuild(), goAls.Test, prj.Goal(mkfs.DirList{Dir: "cmd/yacmd"})) }) if err != nil { log.Fatal(err) } // Now, go for it… err = build.Make(prj) if err != nil { log.Fatal(err) } fmt.Println("DONE") // just for Go test Example
Output: DONE
func (*GoModule) DefaultGolas ¶
func (m *GoModule) DefaultGolas(prj gomk.ProjectEd) (gs GoDefaultGoals)
func (*GoModule) GoGenerate ¶
func (m *GoModule) GoGenerate() *gomk.GoGenerate
func (*GoModule) GoVulncheck ¶
func (m *GoModule) GoVulncheck() *GoVulncheck
type PlantUML ¶
func (*PlantUML) ConvertAll ¶
func (puml *PlantUML) ConvertAll( prj gomk.ProjectEd, src, dst mkfs.Directory, ignoreErrors bool, withOutput func([]gomk.GoalEd), )
ConvertAll panics – but can only be used in gomk.Edit context.
func (*PlantUML) Do ¶
1 .puml -> 1 .img => explicit by Op 1 .puml -> n .img => set Dir + files not checked 1 .puml -> 1 Dir => set Dir + files not checked 1 .puml -> n Dir => ERROR n .puml -> 1 .img => ERROR n .puml -> n .img => ??? n .puml -> 1 Dir => set Dir + files not checked * Dir -> => ERROR (may be supported later)
func (*PlantUML) OutputFiles ¶
Example ¶
puml := PlantUML{} ofs, err := puml.OutputFiles("testdata/dias.puml") if err != nil { fmt.Println(err) return } for _, of := range ofs { fmt.Printf("[%s]\n", of) }
Output: [dias.png] [dia1.png] [dia2.png] [dias_001.png]
type SlogTrace ¶
func (SlogTrace) DoneProject ¶
func (SlogTrace) GoalNeedsActions ¶
func (SlogTrace) RemoveArtefact ¶
func (SlogTrace) RunImplicitAction ¶
func (SlogTrace) ScheduleNotPremises ¶
func (SlogTrace) ScheduleOutdated ¶
func (SlogTrace) SchedulePreTimeZero ¶
func (SlogTrace) ScheduleResTimeZero ¶
func (SlogTrace) StartProject ¶
Click to show internal directories.
Click to hide internal directories.