package codeowners
import "github.com/hairyhenderson/go-codeowners"
Index ¶
- type Codeowner
- func NewCodeowner(pattern string, owners []string) (Codeowner, error)
- func (c Codeowner) String() string
- type Codeowners
Examples ¶
Types ¶
type Codeowner ¶
Codeowner - owners for a given pattern
func NewCodeowner ¶
NewCodeowner -
func (Codeowner) String ¶
type Codeowners ¶
type Codeowners struct { Patterns []Codeowner // contains filtered or unexported fields }
Codeowners - patterns/owners mappings for the given repo
func FromFile ¶
func FromFile(path string) (*Codeowners, error)
FromFile creates a Codeowners from the path to a local file. Consider using
FromFileWithFS instead.
Code:
Output:Example¶
{
c, _ := FromFile(cwd())
fmt.Println(c.Patterns[0])
// Output:
// * @hairyhenderson
}
* @hairyhenderson
func FromFileWithFS ¶
func FromFileWithFS(fsys fs.FS, path string) (*Codeowners, error)
FromFileWithFS creates a Codeowners from the path to a file relative to the
given filesystem.
Code:
Output:Example¶
{
// open filesystem rooted at current working directory
fsys := os.DirFS(cwd())
c, _ := FromFileWithFS(fsys, ".")
fmt.Println(c.Patterns[0])
// Output:
// * @hairyhenderson
}
* @hairyhenderson
func FromReader ¶
func FromReader(r io.Reader, repoRoot string) (*Codeowners, error)
FromReader creates a Codeowners from a given Reader instance and root path.
Code:
Output:Example¶
{
reader := strings.NewReader(sample2)
c, _ := FromReader(reader, "")
fmt.Println(c.Patterns[0])
// Output:
// * @hairyhenderson
}
* @hairyhenderson
func NewCodeowners ¶
func NewCodeowners(path string) (*Codeowners, error)
Deprecated: Use FromFile instead.
func (*Codeowners) Owners ¶
func (c *Codeowners) Owners(path string) []string
Owners - return the list of code owners for the given path
(within the repo root)
Code:
Output:Example¶
{
c, _ := FromFile(cwd())
owners := c.Owners("README.md")
for i, o := range owners {
fmt.Printf("Owner #%d is %s\n", i, o)
}
// Output:
// Owner #0 is @hairyhenderson
}
Owner #0 is @hairyhenderson
Source Files ¶
- Version
- v0.3.0
- Published
- Dec 31, 2022
- Platform
- darwin/amd64
- Imports
- 10 packages
- Last checked
- now –
Tools for package owners.