Documentation ¶
Index ¶
- func FetchPRCommentCount(user, repository string) (int, error)
- func GetKubernetesOwnersFiles() (*[]string, error)
- func GetOwnerFiles(root string) ([]string, error)
- func GetOwnersAliasesFile(root string) (string, error)
- func GetSigsYamlFile(root string) (string, error)
- func GroupIndex(groups []Group, predicate func(Group) bool) int
- func RemoveUserFromOWNERS(path string, users []string) error
- type Aliases
- type Contact
- type Context
- type Contribution
- type DirOptions
- type FiltersInfo
- type FoldedString
- type Frames
- type GithubTeam
- type Group
- type LeadershipGroup
- type Meeting
- type OwnersInfo
- type Person
- type Subproject
- type Values
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FetchPRCommentCount ¶
func GetOwnerFiles ¶
func GetOwnersAliasesFile ¶
func GetSigsYamlFile ¶
func RemoveUserFromOWNERS ¶
Types ¶
type Contact ¶
type Contact struct { Slack string `yaml:",omitempty" json:",omitempty"` MailingList string `yaml:"mailing_list,omitempty" json:"mailing_list,omitempty"` PrivateMailingList string `yaml:"private_mailing_list,omitempty" json:"private_mailing_list,omitempty"` GithubTeams []GithubTeam `yaml:"teams,omitempty" json:"teams,omitempty"` Liaison *Person `yaml:"liaison,omitempty" json:"liaison,omitempty"` }
Contact represents the various contact points for a group.
type Context ¶
Context is the context for the sigs.yaml file.
func GetSigsYaml ¶
func (*Context) PrefixToGroupMap ¶
PrefixToGroupMap returns a map of prefix to groups, useful for iteration over all groups
type Contribution ¶
func GetContributionsForAYear ¶
func GetContributionsForAYear(repository string, period string) (error, []Contribution)
type DirOptions ¶
type DirOptions struct {
NoParentOwners bool `json:"no_parent_owners,omitempty"`
}
type FiltersInfo ¶
type FoldedString ¶
type FoldedString string
FoldedString is a string that will be serialized in FoldedStyle by go-yaml
func (FoldedString) MarshalYAML ¶
func (x FoldedString) MarshalYAML() (interface{}, error)
MarshalYAML customizes how FoldedStrings will be serialized by go-yaml
type GithubTeam ¶
GithubTeam represents a specific Github Team.
type Group ¶
type Group struct { Dir string Name string MissionStatement FoldedString `yaml:"mission_statement,omitempty" json:"mission_statement,omitempty"` CharterLink string `yaml:"charter_link,omitempty" json:"charter_link,omitempty"` StakeholderSIGs []string `yaml:"stakeholder_sigs,omitempty" json:"stakeholder_sigs,omitempty"` Label string Leadership LeadershipGroup `yaml:"leadership" json:"leadership"` Meetings []Meeting Contact Contact Subprojects []Subproject `yaml:",omitempty" json:",omitempty"` }
Group represents either a Special Interest Group (SIG) or a Working Group (WG)
type LeadershipGroup ¶
type LeadershipGroup struct { Chairs []Person TechnicalLeads []Person `yaml:"tech_leads,omitempty" json:"tech_leads,omitempty"` EmeritusLeads []Person `yaml:"emeritus_leads,omitempty" json:"emeritus_leads,omitempty"` }
LeadershipGroup represents the different groups of leaders within a group
func (*LeadershipGroup) PrefixToPersonMap ¶
func (g *LeadershipGroup) PrefixToPersonMap() map[string][]Person
PrefixToPersonMap returns a map of prefix to persons, useful for iteration over all persons
type Meeting ¶
type Meeting struct { Description string Day string Time string TZ string Frequency string URL string `yaml:",omitempty" json:",omitempty"` ArchiveURL string `yaml:"archive_url,omitempty" json:"archive_url,omitempty"` RecordingsURL string `yaml:"recordings_url,omitempty" json:"recordings_url,omitempty"` }
Meeting represents a regular meeting for a group.
type OwnersInfo ¶
type OwnersInfo struct { Filters map[string]FiltersInfo `json:"filters,omitempty"` Approvers []string `json:"approvers,omitempty"` Reviewers []string `json:"reviewers,omitempty"` RequiredReviewers []string `json:"required_reviewers,omitempty"` Labels []string `json:"labels,omitempty"` EmeritusApprovers []string `json:"emeritus_approvers,omitempty"` Options DirOptions `json:"options,omitempty"` }
func GetOwnersInfo ¶
func GetOwnersInfo(file string) (*OwnersInfo, error)
func GetOwnersInfoFromBytes ¶
func GetOwnersInfoFromBytes(bytes []byte) (*OwnersInfo, error)
type Person ¶
type Person struct { GitHub string Name string Company string `yaml:"company,omitempty" json:",omitempty"` }
Person represents an individual person holding a role in a group.
type Subproject ¶
type Subproject struct { Name string Description string `yaml:",omitempty" json:",omitempty"` Contact *Contact `yaml:",omitempty" json:",omitempty"` Owners []string Meetings []Meeting `yaml:",omitempty" json:",omitempty"` }
Subproject represents a specific subproject owned by the group