cloudflare/pint

Public

mirrored from https://github.com/cloudflare/pintAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
v0.77.0

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

internal/config/checks.go

35lines · modecode

1package config
2
3import (
4 "fmt"
5 "slices"
6
7 "github.com/cloudflare/pint/internal/checks"
8)
9
10type Checks struct {
11 Enabled []string `hcl:"enabled,optional" json:"enabled,omitempty"`
12 Disabled []string `hcl:"disabled,optional" json:"disabled,omitempty"`
13}
14
15func (c Checks) validate() error {
16 for _, name := range c.Enabled {
17 if err := validateCheckName(name); err != nil {
18 return err
19 }
20 }
21 for _, name := range c.Disabled {
22 if err := validateCheckName(name); err != nil {
23 return err
24 }
25 }
26
27 return nil
28}
29
30func validateCheckName(name string) error {
31 if slices.Contains(checks.CheckNames, name) {
32 return nil
33 }
34 return fmt.Errorf("unknown check name %s", name)
35}
36