Documentation
¶
Index ¶
- Constants
- Variables
- func BatchProcess(importProjects []*importing.ImportProjectInfo, maxConcurrent int, ...) error
- func ChunkImportProjects(importProjects []*importing.ImportProjectInfo, n int) [][]*importing.ImportProjectInfo
- func CreateFlagName(full, short string) string
- func DescribeProject() func(*cli.Context) error
- func ExtractNamesFromProjects(projects []*project.Project) (out []string)
- func GitAction(vcsType string) cli.ActionFunc
- func HandleErr(actionFunc cli.ActionFunc) cli.ActionFunc
- func ImportBatch(batch []*importing.ImportProjectInfo, vcsType, coordinatorAddr string, ...)
- func MapVcsTypesToVcsMessage(vcsType string) (string, error)
- func NewSpinner(prefix, finalMsg string) *spinner.Spinner
- type AggregatedError
Constants ¶
View Source
const ( BaseCommandGet = "get" BaseCommandImport = "import" BaseCommandDescribe = "describe" CoordinatorFlagName = "coordinator" TimeOut = 10 * time.Second MaxRecvMsgSize = 1024 * 1024 * 20 MaxConcurrentFlag = "max-concurrent" MaxConcurrentShortFlag = "mc" FileFlag = "file" FileShortFlag = "f" FileFlagUsage = "Reads a list of projects from a file" )
Variables ¶
View Source
var ( MissingProjectNameArgErr = cli.NewExitError("Missing project name.", 1) MissingVCSTypeArgErr = cli.NewExitError("Missing vcs type.", 1) MissingRemoteURLErr = cli.NewExitError("Missing vcs remote url.", 1) UnsupportedVCSTypeErr = cli.NewExitError("Unsupported vcs type.", 1) ProjectNotFoundErr = cli.NewExitError("No Project(s) can be found.", 1) MalformedRemoteVcsURLErr = cli.NewExitError("Unable to detect vcs from remote url.", 1) RenderAsJSONErr = cli.NewExitError("Unable to render projects as json.", 1) InvalidFileFormat = cli.NewExitError("Invalid file format.", 1) GenericExitErr = func(err error) error { return cli.NewExitError(fmt.Sprintf("something went wrong, %s", err.Error()), 1) } )
View Source
var BaseCommands = []cli.Command{ { Name: BaseCommandGet, Description: "Retrieves a list of resource names", Subcommands: cli.Commands{ { Name: "projects", ShortName: "prj", Aliases: []string{ "project", }, Usage: "Retrieves a list of projects", Description: "Retrieves a list of project names", Action: HandleErr(getProjects()), }, }, }, { Name: BaseCommandDescribe, Description: "Prints detailed information about various resources in Vastness", Subcommands: cli.Commands{ { Name: "projects", ShortName: "prj", Aliases: []string{ "project", }, Usage: "Describes a project", Description: "Prints detailed information of a particular vcs project", ArgsUsage: "NAME [github|bitbucket-server]", Action: HandleErr(DescribeProject()), }, }, }, { Name: BaseCommandImport, Description: "Imports a vcs project to Vastness", Subcommands: cli.Commands{ { Name: "github", Action: HandleErr(GitAction(vcs.VcsType_GITHUB.String())), Usage: "Imports a github project", Description: "Imports a github project to Vastness", ArgsUsage: "REMOTE_URL BRANCH", Flags: []cli.Flag{ cli.StringFlag{ Name: CreateFlagName(FileFlag, FileShortFlag), Usage: FileFlagUsage, }, cli.IntFlag{ Name: CreateFlagName(MaxConcurrentFlag, MaxConcurrentShortFlag), Value: 1, }, }, }, { Name: "bitbucket-server", Action: HandleErr(GitAction(vcs.VcsType_BITBUCKET_SERVER.String())), Usage: "Imports a bitbucket server project", Description: "Imports a bitbucket server project to Vastness", ArgsUsage: "REMOTE_URL BRANCH", Flags: []cli.Flag{ cli.StringFlag{ Name: CreateFlagName(FileFlag, FileShortFlag), Usage: FileFlagUsage, }, cli.IntFlag{ Name: CreateFlagName(MaxConcurrentFlag, MaxConcurrentShortFlag), Value: 1, }, }, }, }, }, }
Functions ¶
func BatchProcess ¶
func BatchProcess(importProjects []*importing.ImportProjectInfo, maxConcurrent int, vcsType, coordinatorAddr string, tracer opentracing.Tracer) error
func ChunkImportProjects ¶
func ChunkImportProjects(importProjects []*importing.ImportProjectInfo, n int) [][]*importing.ImportProjectInfo
func CreateFlagName ¶
func DescribeProject ¶
func GitAction ¶
func GitAction(vcsType string) cli.ActionFunc
func HandleErr ¶
func HandleErr(actionFunc cli.ActionFunc) cli.ActionFunc
func ImportBatch ¶
func ImportBatch(batch []*importing.ImportProjectInfo, vcsType, coordinatorAddr string, tracer opentracing.Tracer, errCh chan<- error)
func MapVcsTypesToVcsMessage ¶
func NewSpinner ¶
Types ¶
type AggregatedError ¶
type AggregatedError struct {
// contains filtered or unexported fields
}
func (*AggregatedError) Add ¶
func (e *AggregatedError) Add(err error) *AggregatedError
func (*AggregatedError) Error ¶
func (e *AggregatedError) Error() string
func (*AggregatedError) ToError ¶
func (e *AggregatedError) ToError() error
Click to show internal directories.
Click to hide internal directories.