Documentation
¶
Index ¶
Constants ¶
View Source
const ( RepoName = "service-mesh-hub" OrgName = "solo-io" )
Variables ¶
View Source
var ( DefaultRequestTimeout = 15 * time.Second NoReleaseContainingAssetError = eris.New("couldn't find any release with the desired asset") )
Functions ¶
func MeshctlBinaryName ¶
func MeshctlBinaryName() string
func TryGetAssetWithName ¶
func TryGetAssetWithName(release *github.RepositoryRelease, expectedAssetName string) *github.ReleaseAsset
Types ¶
type AssetHelper ¶
type AssetHelper interface {
GetReleaseWithAsset(ctx context.Context, tag string, expectedAssetName string) (*github.RepositoryRelease, error)
DownloadAsset(downloadUrl string, destFile string) error
}
func NewAssetHelper ¶
func NewAssetHelper(client GithubAssetClient) AssetHelper
type GithubAssetClient ¶
type GithubAssetClient interface {
ListReleases(ctx context.Context, opt *github.ListOptions) ([]*github.RepositoryRelease, error)
GetReleaseByTag(ctx context.Context, tag string) (*github.RepositoryRelease, error)
}
func DefaultGithubAssetClient ¶
func DefaultGithubAssetClient() GithubAssetClient
func NewGithubAssetClient ¶
func NewGithubAssetClient(client *github.Client, org, repo string) GithubAssetClient
Click to show internal directories.
Click to hide internal directories.