本文整理汇总了Golang中github.com/concourse/atc.TaskConfig.Params方法的典型用法代码示例。如果您正苦于以下问题:Golang TaskConfig.Params方法的具体用法?Golang TaskConfig.Params怎么用?Golang TaskConfig.Params使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/concourse/atc.TaskConfig
的用法示例。
在下文中一共展示了TaskConfig.Params方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: FetchConfig
// FetchConfig returns the configuration.
func (configSource StaticConfigSource) FetchConfig(*SourceRepository) (atc.TaskConfig, error) {
taskConfig := atc.TaskConfig{}
if configSource.Plan.Config != nil {
taskConfig = *configSource.Plan.Config
}
if configSource.Plan.Params == nil {
return taskConfig, nil
}
if taskConfig.Params == nil {
taskConfig.Params = map[string]string{}
}
for key, val := range configSource.Plan.Params {
switch v := val.(type) {
case string:
taskConfig.Params[key] = v
case float64:
if math.Floor(v) == v {
taskConfig.Params[key] = strconv.FormatInt(int64(v), 10)
} else {
taskConfig.Params[key] = strconv.FormatFloat(v, 'f', -1, 64)
}
default:
bs, err := json.Marshal(val)
if err != nil {
return atc.TaskConfig{}, err
}
taskConfig.Params[key] = string(bs)
}
}
return taskConfig, nil
}