MCPcopy
hub / github.com/cli/cli / ParseRulesForDisplay

Function ParseRulesForDisplay

pkg/cmd/ruleset/shared/shared.go:70–112  ·  view source on GitHub ↗
(rules []RulesetRule)

Source from the content-addressed store, hash-verified

68}
69
70func ParseRulesForDisplay(rules []RulesetRule) string {
71 var display strings.Builder
72
73 // sort keys for consistent responses
74 sort.SliceStable(rules, func(i, j int) bool {
75 return rules[i].Type < rules[j].Type
76 })
77
78 for _, rule := range rules {
79 display.WriteString(fmt.Sprintf("- %s", rule.Type))
80
81 if len(rule.Parameters) > 0 {
82 display.WriteString(": ")
83
84 // sort these keys too for consistency
85 params := make([]string, 0, len(rule.Parameters))
86 for p := range rule.Parameters {
87 params = append(params, p)
88 }
89 sort.Strings(params)
90
91 for _, n := range params {
92 display.WriteString(fmt.Sprintf("[%s: %v] ", n, rule.Parameters[n]))
93 }
94 }
95
96 // ruleset source info is only returned from the "get rules for a branch" endpoint
97 if rule.RulesetSource != "" {
98 display.WriteString(
99 fmt.Sprintf(
100 "\n (configured in ruleset %d from %s %s)\n",
101 rule.RulesetId,
102 strings.ToLower(rule.RulesetSourceType),
103 rule.RulesetSource,
104 ),
105 )
106 }
107
108 display.WriteString("\n")
109 }
110
111 return display.String()
112}
113
114func NoRulesetsFoundError(orgOption string, repoI ghrepo.Interface, includeParents bool) error {
115 entityName := EntityName(orgOption, repoI)

Callers 2

viewRunFunction · 0.92
checkRunFunction · 0.92

Calls 1

StringMethod · 0.45

Tested by

no test coverage detected