Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateFormula ¶
func GenerateFormula(data FormulaTemplateData) (string, error)
func ToClassName ¶
Types ¶
type CommandProvider ¶
type CommandProvider interface {
Run(name string, args ...string) (string, error)
RunWithEnv(name string, env []string, args ...string) error
BuildBinary(moduleName, version, osName, arch, ldflags string) (string, error)
}
func NewCommandProvider ¶
func NewCommandProvider() CommandProvider
type ConfigProvider ¶
type ConfigProvider interface {
ConfigExists() bool
CreateDefaultConfig() error
LoadConfig() (*models.Config, error)
GetDefaultConfigData() []byte
}
func NewConfigProvider ¶
func NewConfigProvider(fsProvider FileSystemProvider) ConfigProvider
type FileSystemProvider ¶
type FileSystemProvider interface {
ReadFile(path string) ([]byte, error)
WriteFile(path string, data []byte, perm os.FileMode) error
Open(path string) (io.ReadCloser, error)
Create(path string) (io.WriteCloser, error)
Stat(path string) (os.FileInfo, error)
MkdirAll(path string, perm os.FileMode) error
Remove(path string) error
RemoveAll(path string) error
GetModuleName() (string, error)
EnsureDistDir(clean bool) error
CalculateSHA256(r io.Reader) (string, error)
}
func NewFileSystemProvider ¶
func NewFileSystemProvider() FileSystemProvider
type FormulaTemplateData ¶
type GitHubProvider ¶
type GitHubProvider interface {
GetRelease(ctx context.Context, repo *models.GitHubRepository, tagName string) (*github.RepositoryRelease, error)
CreateRelease(ctx context.Context, repo *models.GitHubRepository, tagName string) (*github.RepositoryRelease, error)
UploadAssets(ctx context.Context, repo *models.GitHubRepository, release *github.RepositoryRelease, assets []models.ReleaseAsset) error
UpdateTapRepository(ctx context.Context, tapRepo *models.Repository, formula string, moduleName, version string) error
}
func NewGitHubProvider ¶
func NewGitHubProvider(token string, fsProvider FileSystemProvider) GitHubProvider
type GitProvider ¶
type GitProvider interface {
GetCurrentVersion() (string, error)
GetGitHubRepository() (*models.GitHubRepository, error)
}
func NewGitProvider ¶
func NewGitProvider() GitProvider
Source Files
¶
Click to show internal directories.
Click to hide internal directories.