| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- package main
- import (
- "fmt"
- "os"
- "strings"
- "github.com/OliveTin/OliveTin/internal/config"
- "github.com/OliveTin/OliveTin/internal/configissues"
- "github.com/OliveTin/OliveTin/internal/executor"
- )
- func runSyntaxCheck() {
- printSyntaxCheckSearchResults()
- printLoadedConfigFiles()
- if syntaxCheckLoadError != nil {
- fmt.Printf("Configuration load failed: %v\n", syntaxCheckLoadError)
- fmt.Println("0 configuration issues found")
- os.Exit(1)
- }
- executor.DefaultExecutor(cfg).RebuildActionMap()
- printConfigIssues(configissues.List())
- issueCount := configissues.Count()
- fmt.Printf("%d configuration issues found\n", issueCount)
- if issueCount > 0 {
- os.Exit(1)
- }
- os.Exit(0)
- }
- func printSyntaxCheckSearchResults() {
- for _, line := range syntaxCheckSearchResults {
- fmt.Println(line)
- }
- }
- func printLoadedConfigFiles() {
- files := config.LoadedSources()
- if len(files) == 0 {
- fmt.Println("No config files were read")
- return
- }
- fmt.Println("Config files read:")
- for _, path := range files {
- fmt.Printf(" %s\n", path)
- }
- }
- func printConfigIssues(issues []configissues.Issue) {
- if len(issues) == 0 {
- return
- }
- fmt.Println("Configuration issues:")
- for _, issue := range issues {
- fmt.Printf(" %s\n", formatConfigIssue(issue))
- }
- }
- func formatConfigIssue(issue configissues.Issue) string {
- parts := []string{issue.Severity, issue.Code}
- if issue.ConfigFile != "" {
- parts = append(parts, "file="+issue.ConfigFile)
- }
- if issue.ActionTitle != "" {
- parts = append(parts, "action="+issue.ActionTitle)
- }
- if issue.ArgumentName != "" {
- parts = append(parts, "argument="+issue.ArgumentName)
- }
- return strings.Join(parts, " ") + ": " + issue.Message
- }
|