本文整理汇总了Golang中github.com/bitrise-io/go-utils/colorstring.Yellow函数的典型用法代码示例。如果您正苦于以下问题:Golang Yellow函数的具体用法?Golang Yellow怎么用?Golang Yellow使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Yellow函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: checkCIAndPRModeFromSecrets
func checkCIAndPRModeFromSecrets(envs []envmanModels.EnvironmentItemModel) error {
for _, env := range envs {
key, value, err := env.GetKeyValuePair()
if err != nil {
return err
}
if !configs.IsCIMode {
if key == bitrise.CIModeEnvKey && value == "true" {
configs.IsCIMode = true
}
}
if !configs.IsPullRequestMode {
if key == bitrise.PullRequestIDEnvKey && value != "" {
configs.IsPullRequestMode = true
}
if key == bitrise.PRModeEnvKey && value == "true" {
configs.IsPullRequestMode = true
}
}
}
if configs.IsCIMode {
log.Info(colorstring.Yellow("bitrise runs in CI mode"))
}
if configs.IsPullRequestMode {
log.Info(colorstring.Yellow("bitrise runs in PR mode"))
}
return nil
}
示例2: before
func before(c *cli.Context) error {
initLogFormatter()
initHelpAndVersionFlags()
initAppHelpTemplate()
// Debug mode?
if c.Bool(DebugModeKey) {
// set for other tools, as an ENV
if err := os.Setenv(bitrise.DebugModeEnvKey, "true"); err != nil {
return err
}
IsDebugMode = true
log.Warn("=> Started in DEBUG mode")
}
// Log level
// If log level defined - use it
logLevelStr := c.String(LogLevelKey)
if logLevelStr == "" && IsDebugMode {
// if no Log Level defined and we're in Debug Mode - set loglevel to debug
logLevelStr = "debug"
log.Warn("=> LogLevel set to debug")
}
if logLevelStr == "" {
// if still empty: set the default
logLevelStr = "info"
}
level, err := log.ParseLevel(logLevelStr)
if err != nil {
return err
}
if err := os.Setenv(bitrise.LogLevelEnvKey, level.String()); err != nil {
log.Fatal("Failed to set log level env:", err)
}
log.SetLevel(level)
// CI Mode check
if c.Bool(CIKey) {
// if CI mode indicated make sure we set the related env
// so all other tools we use will also get it
if err := os.Setenv(bitrise.CIModeEnvKey, "true"); err != nil {
return err
}
IsCIMode = true
log.Info(colorstring.Yellow("bitrise runs in CI mode"))
}
if err := bitrise.InitPaths(); err != nil {
log.Fatalf("Failed to initialize required paths: %s", err)
}
// Pull Request Mode check
IsPullRequestMode = (os.Getenv(bitrise.PullRequestIDEnvKey) != "")
return nil
}
示例3: registerPrMode
func registerPrMode(isPRMode bool) error {
configs.IsPullRequestMode = isPRMode
if isPRMode {
log.Info(colorstring.Yellow("bitrise runs in PR mode"))
return os.Setenv(configs.PRModeEnvKey, "true")
}
return os.Setenv(configs.PRModeEnvKey, "false")
}
示例4: registerCIMode
func registerCIMode(isCIMode bool) error {
configs.IsCIMode = isCIMode
if isCIMode {
log.Info(colorstring.Yellow("bitrise runs in CI mode"))
return os.Setenv(configs.CIModeEnvKey, "true")
}
return os.Setenv(configs.CIModeEnvKey, "false")
}
示例5: stepNoteCell
func stepNoteCell(stepRunResult models.StepRunResultsModel) string {
iconBoxWidth := len(" ")
timeBoxWidth := len(" time (s) ")
titleBoxWidth := stepRunSummaryBoxWidthInChars - 4 - iconBoxWidth - timeBoxWidth - 2
stepInfo := stepRunResult.StepInfo
whitespaceWidth := titleBoxWidth - len(fmt.Sprintf("update available %s -> %s", stepInfo.Version, stepInfo.Latest))
content := colorstring.Yellow(fmt.Sprintf(" Update available: %s -> %s%s", stepInfo.Version, stepInfo.Latest, strings.Repeat(" ", whitespaceWidth)))
return fmt.Sprintf("|%s|%s|%s|", strings.Repeat("-", iconBoxWidth), content, strings.Repeat("-", timeBoxWidth))
}
示例6: GuideTextForStart
// GuideTextForStart ...
func GuideTextForStart() string {
guide := colorstring.Blue("Fork the StepLib repository") + " you want to share your Step in.\n" +
` You can find the main ("official") StepLib repository at: ` + colorstring.Green("https://github.com/bitrise-io/bitrise-steplib") + `
` + colorstring.Yellow("Note") + `: You can use any StepLib repository you like,
the StepLib system is decentralized, you don't have to work with the main StepLib repository
if you don't want to. Feel free to maintain and use your own (or your team's) Step Library.
`
return guide
}
示例7: trigger
func trigger(c *cli.Context) {
PrintBitriseHeaderASCIIArt(c.App.Version)
if !bitrise.CheckIsSetupWasDoneForVersion(c.App.Version) {
log.Warnln(colorstring.Yellow("Setup was not performed for this version of bitrise, doing it now..."))
if err := bitrise.RunSetup(c.App.Version, false); err != nil {
log.Fatalln("Setup failed:", err)
}
}
startTime := time.Now()
// ------------------------
// Input validation
// Inventory validation
inventoryEnvironments, err := CreateInventoryFromCLIParams(c)
if err != nil {
log.Fatalf("Failed to create inventory, err: %s", err)
}
if err := checkCIAndPRModeFromSecrets(inventoryEnvironments); err != nil {
log.Fatalf("Failed to check PR and CI mode, err: %s", err)
}
// Config validation
bitriseConfig, err := CreateBitriseConfigFromCLIParams(c)
if err != nil {
log.Fatalf("Failed to create bitrise cofing, err: %s", err)
}
// Trigger filter validation
triggerPattern := ""
if len(c.Args()) < 1 {
log.Errorln("No workfow specified!")
} else {
triggerPattern = c.Args()[0]
}
if triggerPattern == "" {
// no trigger filter specified
// list all the available ones and then exit
printAvailableTriggerFilters(bitriseConfig.TriggerMap)
}
workflowToRunID, err := GetWorkflowIDByPattern(bitriseConfig, triggerPattern)
if err != nil {
log.Fatalf("Faild to select workflow by pattern (%s), err: %s", triggerPattern, err)
}
log.Infof("Pattern (%s) triggered workflow (%s) ", triggerPattern, workflowToRunID)
// Run selected configuration
if _, err := runWorkflowWithConfiguration(startTime, workflowToRunID, bitriseConfig, inventoryEnvironments); err != nil {
log.Fatalln("Error: ", err)
}
}
示例8: share
func share(c *cli.Context) error {
toolMode := c.Bool(ToolMode)
guide := `
Do you want to ` + colorstring.Green("share ") + colorstring.Yellow("your ") + colorstring.Magenta("own ") + colorstring.Blue("Step") + ` with the world? Awesome!!
To get started you can find a template Step repository at: ` + colorstring.Green("https://github.com/bitrise-steplib/step-template") + `
Once you have your Step in a ` + colorstring.Yellow("public git repository") + ` you can share it with others.
To share your Step just follow these steps (pun intended ;) :
1. ` + GuideTextForStart() + `
2. ` + GuideTextForShareStart(toolMode) + `
3. ` + GuideTextForShareCreate(toolMode) + `
4. ` + GuideTextForAudit(toolMode) + `
5. ` + GuideTextForShareFinish(toolMode) + `
6. ` + GuideTextForFinish()
fmt.Println(guide)
return nil
}
示例9: run
func run(c *cli.Context) {
PrintBitriseHeaderASCIIArt(c.App.Version)
log.Debugln("[BITRISE_CLI] - Run")
if !bitrise.CheckIsSetupWasDoneForVersion(c.App.Version) {
log.Warnln(colorstring.Yellow("Setup was not performed for this version of bitrise, doing it now..."))
if err := bitrise.RunSetup(c.App.Version, false); err != nil {
log.Fatalln("Setup failed:", err)
}
}
startTime := time.Now()
// Inventory validation
inventoryEnvironments, err := CreateInventoryFromCLIParams(c)
if err != nil {
log.Fatalf("Failed to create inventory, err: %s", err)
}
if err := checkCIAndPRModeFromSecrets(inventoryEnvironments); err != nil {
log.Fatalf("Failed to check PR and CI mode, err: %s", err)
}
// Config validation
bitriseConfig, err := CreateBitriseConfigFromCLIParams(c)
if err != nil {
log.Fatalf("Failed to create bitrise config, err: %s", err)
}
// Workflow validation
workflowToRunID := ""
if len(c.Args()) < 1 {
log.Errorln("No workfow specified!")
} else {
workflowToRunID = c.Args()[0]
}
if workflowToRunID == "" {
// no workflow specified
// list all the available ones and then exit
printAvailableWorkflows(bitriseConfig)
}
if strings.HasPrefix(workflowToRunID, "_") {
// util workflow specified
// print about util workflows and then exit
printAboutUtilityWorkflos()
}
// Run selected configuration
if _, err := runWorkflowWithConfiguration(startTime, workflowToRunID, bitriseConfig, inventoryEnvironments); err != nil {
log.Fatalln("Error: ", err)
}
}
示例10: GuideTextForShareCreate
// GuideTextForShareCreate ...
func GuideTextForShareCreate(toolMode bool) string {
name := "stepman"
if toolMode {
name = "bitrise"
}
guide := "Next, call " + colorstring.Blue("'"+name+" share create --tag STEP_VERSION_TAG --git STEP_GIT_URI --stepid STEP_ID'") + `,
to add your Step to your forked StepLib repository (locally).
This will copy the required step.yml file from your Step's repository.
This is all what's required to add your step (or a new version) to a StepLib.
` + colorstring.Yellow("Important") + `: You have to add the (version) tag to your Step's repository before you would call this!
You can do that at: https://github.com/[your-username]/[step-repository]/tags
An example call:
` + colorstring.Green(""+name+" share create --tag 1.0.0 --git https://github.com/[your-username]/[step-repository].git --stepid my-awesome-step") + `
` + colorstring.Yellow("Note") + `: You'll still be able to modify the step.yml in the StepLib after this.
`
return guide
}
示例11: GuideTextForShareFinish
// GuideTextForShareFinish ...
func GuideTextForShareFinish(toolMode bool) string {
name := "stepman"
if toolMode {
name = "bitrise"
}
guide := `Almost done! You should review your Step's step.yml file (the one added to the local StepLib),
and once you're happy with it call: ` + colorstring.Blue("'"+name+" share finish'") + `
This will commit & push the step.yml ` + colorstring.Yellow("into your forked StepLib repository") + `.
`
return guide
}
示例12: runAndExit
func runAndExit(bitriseConfig models.BitriseDataModel, inventoryEnvironments []envmanModels.EnvironmentItemModel, workflowToRunID string) {
if workflowToRunID == "" {
log.Fatal("No workflow id specified")
}
if !configs.CheckIsSetupWasDoneForVersion(version.VERSION) {
log.Warnln(colorstring.Yellow("Setup was not performed for this version of bitrise, doing it now..."))
if err := bitrise.RunSetup(version.VERSION, false); err != nil {
log.Fatalf("Setup failed, error: %s", err)
}
}
startTime := time.Now()
// Run selected configuration
if buildRunResults, err := runWorkflowWithConfiguration(startTime, workflowToRunID, bitriseConfig, inventoryEnvironments); err != nil {
log.Fatalf("Failed to run workflow, error: %s", err)
} else if buildRunResults.IsBuildFailed() {
os.Exit(1)
}
os.Exit(0)
}
示例13: scanXamarinProject
//.........这里部分代码省略.........
}
xamarinCmd.ProjectName = selectedXamarinProject.Name
log.Debugf("xamarinCmd.ProjectName: %s", xamarinCmd.ProjectName)
log.Debugf("selectedXamarinProject.Configs: %#v", selectedXamarinProject.Configs)
// Xamarin Configuration Name
selectedXamarinConfigurationName := ""
{
acceptableConfigs := []string{}
for configName, aConfig := range selectedXamarinProject.Configs {
if aConfig.Platform == "iPhone" {
if aConfig.Configuration == "Release" {
// ios & tvOS app
acceptableConfigs = append(acceptableConfigs, configName)
}
} else if aConfig.Platform == "x86" {
if aConfig.Configuration == "Release" || aConfig.Configuration == "Debug" {
// MacOS app
acceptableConfigs = append(acceptableConfigs, configName)
}
}
}
if len(acceptableConfigs) < 1 {
return printXamarinScanFinishedWithError(
`No acceptable Configuration found in the provided Solution and Project, or none can be used for iOS "Archive for Publishing".`,
)
}
if paramXamarinConfigurationName != "" {
// configuration specified via flag/param
for _, aConfigName := range acceptableConfigs {
if paramXamarinConfigurationName == aConfigName {
selectedXamarinConfigurationName = aConfigName
break
}
}
if selectedXamarinConfigurationName == "" {
return printXamarinScanFinishedWithError(
"Invalid Configuration specified (%s), either not found in the provided Solution and Project or it can't be used for iOS Archive.",
paramXamarinConfigurationName)
}
} else {
// no configuration CLI param specified
if len(acceptableConfigs) == 1 {
selectedXamarinConfigurationName = acceptableConfigs[0]
} else {
fmt.Println()
answerValue, err := goinp.SelectFromStrings(
`Select the Configuration Name you use for "Archive for Publishing" (usually Release|iPhone)?`,
acceptableConfigs,
)
if err != nil {
return printXamarinScanFinishedWithError("Failed to select Configuration: %s", err)
}
log.Debugf("selected configuration: %v", answerValue)
selectedXamarinConfigurationName = answerValue
}
}
}
if selectedXamarinConfigurationName == "" {
return printXamarinScanFinishedWithError(
`No acceptable Configuration found (it was empty) in the provided Solution and Project, or none can be used for iOS "Archive for Publishing".`,
)
}
xamarinCmd.ConfigurationName = selectedXamarinConfigurationName
fmt.Println()
fmt.Println()
log.Println(`🔦 Running a Build, to get all the required code signing settings...`)
xamLogOut, err := xamarinCmd.GenerateLog()
logOutput = xamLogOut
// save the xamarin output into a debug log file
logOutputFilePath := filepath.Join(absExportOutputDirPath, "xamarin-build-output.log")
{
log.Infof(" 💡 "+colorstring.Yellow("Saving xamarin output into file")+": %s", logOutputFilePath)
if logWriteErr := fileutil.WriteStringToFile(logOutputFilePath, logOutput); logWriteErr != nil {
log.Errorf("Failed to save xamarin build output into file (%s), error: %s", logOutputFilePath, logWriteErr)
} else if err != nil {
log.Infoln(colorstring.Yellow("Please check the logfile (" + logOutputFilePath + ") to see what caused the error"))
log.Infoln(colorstring.Red(`and make sure that you can "Archive for Publishing" this project from Xamarin!`))
fmt.Println()
log.Infoln("Open the project: ", xamarinCmd.SolutionFilePath)
log.Infoln(`And do "Archive for Publishing", after selecting the Configuration: `, xamarinCmd.ConfigurationName)
fmt.Println()
}
}
if err != nil {
return printXamarinScanFinishedWithError("Failed to run xamarin build command: %s", err)
}
}
codeSigningSettings, err := xamarinCmd.ScanCodeSigningSettings(logOutput)
if err != nil {
return printXamarinScanFinishedWithError("Failed to detect code signing settings: %s", err)
}
log.Debugf("codeSigningSettings: %#v", codeSigningSettings)
return exportCodeSigningFiles("Xamarin Studio", absExportOutputDirPath, codeSigningSettings)
}
示例14: printWorkflList
func printWorkflList(workflowList map[string]map[string]string, format string, minimal bool) error {
printRawWorkflowMap := func(name string, workflow map[string]string) {
fmt.Printf("⚡️ %s\n", colorstring.Green(name))
fmt.Printf(" %s: %s\n", colorstring.Yellow("Summary"), workflow["summary"])
if !minimal {
fmt.Printf(" %s: %s\n", colorstring.Yellow("Description"), workflow["description"])
}
fmt.Println()
}
switch format {
case output.FormatRaw:
workflowNames := []string{}
utilityWorkflowNames := []string{}
for wfName := range workflowList {
if strings.HasPrefix(wfName, "_") {
utilityWorkflowNames = append(utilityWorkflowNames, wfName)
} else {
workflowNames = append(workflowNames, wfName)
}
}
sort.Strings(workflowNames)
sort.Strings(utilityWorkflowNames)
fmt.Println()
if len(workflowNames) > 0 {
fmt.Printf("%s\n", "Workflows")
fmt.Printf("%s\n", "---------")
for _, name := range workflowNames {
workflow := workflowList[name]
printRawWorkflowMap(name, workflow)
}
fmt.Println()
}
if len(utilityWorkflowNames) > 0 {
fmt.Printf("%s\n", "Util Workflows")
fmt.Printf("%s\n", "--------------")
for _, name := range utilityWorkflowNames {
workflow := workflowList[name]
printRawWorkflowMap(name, workflow)
}
fmt.Println()
}
if len(workflowNames) == 0 && len(utilityWorkflowNames) == 0 {
fmt.Printf("Config doesn't contain any workflow")
}
case output.FormatJSON:
bytes, err := json.Marshal(workflowList)
if err != nil {
return err
}
fmt.Println(string(bytes))
default:
return fmt.Errorf("Invalid output format: %s", format)
}
return nil
}
示例15: scanXcodeProject
func scanXcodeProject(cmd *cobra.Command, args []string) error {
absExportOutputDirPath, err := initExportOutputDir()
if err != nil {
return printXcodeScanFinishedWithError("Failed to prepare Export directory: %s", err)
}
xcodebuildOutput := ""
xcodeCmd := xcode.CommandModel{}
if paramXcodebuildOutputLogFilePath != "" {
xcLog, err := fileutil.ReadStringFromFile(paramXcodebuildOutputLogFilePath)
if err != nil {
return printXcodeScanFinishedWithError("Failed to read log from the specified log file, error: %s", err)
}
xcodebuildOutput = xcLog
} else {
projectPath := paramXcodeProjectFilePath
if projectPath == "" {
askText := `Please drag-and-drop your Xcode Project (` + colorstring.Green(".xcodeproj") + `)
or Workspace (` + colorstring.Green(".xcworkspace") + `) file, the one you usually open in Xcode,
then hit Enter.
(Note: if you have a Workspace file you should most likely use that)`
fmt.Println()
projpth, err := goinp.AskForPath(askText)
if err != nil {
return printXcodeScanFinishedWithError("Failed to read input: %s", err)
}
projectPath = projpth
}
log.Debugf("projectPath: %s", projectPath)
xcodeCmd.ProjectFilePath = projectPath
schemeToUse := paramXcodeScheme
if schemeToUse == "" {
fmt.Println()
fmt.Println()
log.Println("🔦 Scanning Schemes ...")
schemes, err := xcodeCmd.ScanSchemes()
if err != nil {
return printXcodeScanFinishedWithError("Failed to scan Schemes: %s", err)
}
log.Debugf("schemes: %v", schemes)
fmt.Println()
selectedScheme, err := goinp.SelectFromStrings("Select the Scheme you usually use in Xcode", schemes)
if err != nil {
return printXcodeScanFinishedWithError("Failed to select Scheme: %s", err)
}
log.Debugf("selected scheme: %v", selectedScheme)
schemeToUse = selectedScheme
}
xcodeCmd.Scheme = schemeToUse
fmt.Println()
fmt.Println()
log.Println("🔦 Running an Xcode Archive, to get all the required code signing settings...")
xcLog, err := xcodeCmd.GenerateLog()
xcodebuildOutput = xcLog
// save the xcodebuild output into a debug log file
xcodebuildOutputFilePath := filepath.Join(absExportOutputDirPath, "xcodebuild-output.log")
{
log.Infof(" 💡 "+colorstring.Yellow("Saving xcodebuild output into file")+": %s", xcodebuildOutputFilePath)
if logWriteErr := fileutil.WriteStringToFile(xcodebuildOutputFilePath, xcodebuildOutput); logWriteErr != nil {
log.Errorf("Failed to save xcodebuild output into file (%s), error: %s", xcodebuildOutputFilePath, logWriteErr)
} else if err != nil {
log.Infoln(colorstring.Yellow("Please check the logfile (" + xcodebuildOutputFilePath + ") to see what caused the error"))
log.Infoln(colorstring.Red("and make sure that you can Archive this project from Xcode!"))
fmt.Println()
log.Infoln("Open the project:", xcodeCmd.ProjectFilePath)
log.Infoln("and Archive, using the Scheme:", xcodeCmd.Scheme)
fmt.Println()
}
}
if err != nil {
return printXcodeScanFinishedWithError("Failed to run Xcode Archive: %s", err)
}
}
codeSigningSettings, err := xcodeCmd.ScanCodeSigningSettings(xcodebuildOutput)
if err != nil {
return printXcodeScanFinishedWithError("Failed to detect code signing settings: %s", err)
}
log.Debugf("codeSigningSettings: %#v", codeSigningSettings)
return exportCodeSigningFiles("Xcode", absExportOutputDirPath, codeSigningSettings)
}