本文整理汇总了Golang中github.com/openshift/source-to-image/pkg/util.GenerateLabelsFromSourceInfo函数的典型用法代码示例。如果您正苦于以下问题:Golang GenerateLabelsFromSourceInfo函数的具体用法?Golang GenerateLabelsFromSourceInfo怎么用?Golang GenerateLabelsFromSourceInfo使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了GenerateLabelsFromSourceInfo函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: buildLabels
// buildLabels returns a slice of KeyValue pairs in a format that appendEnv can
// consume.
func (d *DockerBuilder) buildLabels(dir string) []dockerfile.KeyValue {
labels := map[string]string{}
// TODO: allow source info to be overridden by build
sourceInfo := &git.SourceInfo{}
if d.build.Spec.Source.Git != nil {
var errors []error
sourceInfo, errors = d.gitClient.GetInfo(dir)
if len(errors) > 0 {
for _, e := range errors {
glog.V(0).Infof("warning: Unable to retrieve Git info: %v", e.Error())
}
}
}
if len(d.build.Spec.Source.ContextDir) > 0 {
sourceInfo.ContextDir = d.build.Spec.Source.ContextDir
}
labels = util.GenerateLabelsFromSourceInfo(labels, &sourceInfo.SourceInfo, api.DefaultDockerLabelNamespace)
kv := make([]dockerfile.KeyValue, 0, len(labels)+len(d.build.Spec.Output.ImageLabels))
for k, v := range labels {
kv = append(kv, dockerfile.KeyValue{Key: k, Value: v})
}
// override autogenerated labels
for _, lbl := range d.build.Spec.Output.ImageLabels {
kv = append(kv, dockerfile.KeyValue{Key: lbl.Name, Value: lbl.Value})
}
return kv
}
开发者ID:php-coder,项目名称:origin,代码行数:29,代码来源:docker.go
示例2: buildLabels
// buildLabels returns a slice of KeyValue pairs in a format that appendEnv can
// consume.
func (d *DockerBuilder) buildLabels(dir string) []dockerfile.KeyValue {
labels := map[string]string{}
sourceInfo := d.git.GetInfo(dir)
if len(d.build.Spec.Source.ContextDir) > 0 {
sourceInfo.ContextDir = d.build.Spec.Source.ContextDir
}
labels = util.GenerateLabelsFromSourceInfo(labels, sourceInfo, api.DefaultDockerLabelNamespace)
kv := make([]dockerfile.KeyValue, 0, len(labels))
for k, v := range labels {
kv = append(kv, dockerfile.KeyValue{Key: k, Value: v})
}
return kv
}
开发者ID:kimifdw,项目名称:origin,代码行数:15,代码来源:docker.go
示例3: buildLabels
// buildLabels returns a slice of KeyValue pairs in a format that appendEnv can
// consume.
func (d *DockerBuilder) buildLabels(dir string) []dockerfile.KeyValue {
labels := map[string]string{}
// TODO: allow source info to be overriden by build
sourceInfo := &s2iapi.SourceInfo{}
if d.build.Spec.Source.Git != nil {
sourceInfo = d.git.GetInfo(dir)
}
if len(d.build.Spec.Source.ContextDir) > 0 {
sourceInfo.ContextDir = d.build.Spec.Source.ContextDir
}
labels = util.GenerateLabelsFromSourceInfo(labels, sourceInfo, api.DefaultDockerLabelNamespace)
kv := make([]dockerfile.KeyValue, 0, len(labels))
for k, v := range labels {
kv = append(kv, dockerfile.KeyValue{Key: k, Value: v})
}
return kv
}
开发者ID:Waxolunist,项目名称:origin,代码行数:19,代码来源:docker.go
示例4: addBuildParameters
// addBuildParameters checks if a Image is set to replace the default base image.
// If that's the case then change the Dockerfile to make the build with the given image.
// Also append the environment variables and labels in the Dockerfile.
func (d *DockerBuilder) addBuildParameters(dir string) error {
dockerfilePath := filepath.Join(dir, "Dockerfile")
if d.build.Spec.Strategy.DockerStrategy != nil && len(d.build.Spec.Source.ContextDir) > 0 {
dockerfilePath = filepath.Join(dir, d.build.Spec.Source.ContextDir, "Dockerfile")
}
fileStat, err := os.Lstat(dockerfilePath)
if err != nil {
return err
}
filePerm := fileStat.Mode()
fileData, err := ioutil.ReadFile(dockerfilePath)
if err != nil {
return err
}
var newFileData string
if d.build.Spec.Strategy.DockerStrategy.From != nil && d.build.Spec.Strategy.DockerStrategy.From.Kind == "DockerImage" {
newFileData, err = replaceValidCmd(dockercmd.From, d.build.Spec.Strategy.DockerStrategy.From.Name, fileData)
if err != nil {
return err
}
} else {
newFileData = newFileData + string(fileData)
}
envVars := getBuildEnvVars(d.build)
newFileData = appendMetadata(Env, newFileData, envVars)
labels := map[string]string{}
sourceInfo := d.git.GetInfo(dir)
if len(d.build.Spec.Source.ContextDir) > 0 {
sourceInfo.ContextDir = d.build.Spec.Source.ContextDir
}
labels = util.GenerateLabelsFromSourceInfo(labels, sourceInfo, api.DefaultDockerLabelNamespace)
newFileData = appendMetadata(Label, newFileData, labels)
if ioutil.WriteFile(dockerfilePath, []byte(newFileData), filePerm); err != nil {
return err
}
return nil
}
开发者ID:nikkomega,项目名称:origin,代码行数:48,代码来源:docker.go
示例5: buildLabels
// buildLabels returns a slice of KeyValue pairs in a format that appendEnv can
// consume.
func (d *DockerBuilder) buildLabels(sourceInfo *git.SourceInfo) []dockerfile.KeyValue {
labels := map[string]string{}
if sourceInfo == nil {
sourceInfo = &git.SourceInfo{}
}
if len(d.build.Spec.Source.ContextDir) > 0 {
sourceInfo.ContextDir = d.build.Spec.Source.ContextDir
}
labels = util.GenerateLabelsFromSourceInfo(labels, &sourceInfo.SourceInfo, api.DefaultDockerLabelNamespace)
kv := make([]dockerfile.KeyValue, 0, len(labels)+len(d.build.Spec.Output.ImageLabels))
for k, v := range labels {
kv = append(kv, dockerfile.KeyValue{Key: k, Value: v})
}
// override autogenerated labels
for _, lbl := range d.build.Spec.Output.ImageLabels {
kv = append(kv, dockerfile.KeyValue{Key: lbl.Name, Value: lbl.Value})
}
return kv
}
开发者ID:xgwang-zte,项目名称:origin,代码行数:21,代码来源:docker.go
注:本文中的github.com/openshift/source-to-image/pkg/util.GenerateLabelsFromSourceInfo函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论