本文整理汇总了Golang中github.com/openshift/origin/pkg/image/api.ImageStream类的典型用法代码示例。如果您正苦于以下问题:Golang ImageStream类的具体用法?Golang ImageStream怎么用?Golang ImageStream使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ImageStream类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: agedStream
func agedStream(registry, namespace, name string, ageInMinutes int64, tags map[string]imageapi.TagEventList) imageapi.ImageStream {
stream := imageapi.ImageStream{
ObjectMeta: kapi.ObjectMeta{
Namespace: namespace,
Name: name,
},
Status: imageapi.ImageStreamStatus{
DockerImageRepository: fmt.Sprintf("%s/%s/%s", registry, namespace, name),
Tags: tags,
},
}
if ageInMinutes >= 0 {
stream.CreationTimestamp = unversioned.NewTime(unversioned.Now().Add(time.Duration(-1*ageInMinutes) * time.Minute))
}
return stream
}
开发者ID:carriercomm,项目名称:origin,代码行数:18,代码来源:imagepruner_test.go
示例2: dockerImageRepository
// dockerImageRepository determines the docker image stream for stream.
// If stream.DockerImageRepository is set, that value is returned. Otherwise,
// if a default registry exists, the value returned is of the form
// <default registry>/<namespace>/<stream name>.
func (s Strategy) dockerImageRepository(stream *api.ImageStream) string {
registry, ok := s.defaultRegistry.DefaultRegistry()
if !ok {
return stream.Spec.DockerImageRepository
}
if len(stream.Namespace) == 0 {
stream.Namespace = kapi.NamespaceDefault
}
ref := api.DockerImageReference{
Registry: registry,
Namespace: stream.Namespace,
Name: stream.Name,
}
return ref.String()
}
开发者ID:kcbabo,项目名称:origin,代码行数:20,代码来源:strategy.go
示例3: done
// done marks the stream as being processed due to an error or failure condition.
func (c *ImportController) done(stream *api.ImageStream, reason string) error {
if len(reason) == 0 {
reason = unversioned.Now().UTC().Format(time.RFC3339)
} else if len(reason) > 300 {
// cut down the reason up to 300 characters max.
reason = reason[:300]
}
if stream.Annotations == nil {
stream.Annotations = make(map[string]string)
}
stream.Annotations[api.DockerImageRepositoryCheckAnnotation] = reason
if _, err := c.streams.ImageStreams(stream.Namespace).Update(stream); err != nil {
return err
}
return nil
}
开发者ID:johnmccawley,项目名称:origin,代码行数:17,代码来源:controller.go
示例4: done
// done marks the stream as being processed due to an error or failure condition
func (c *ImportController) done(stream *api.ImageStream, reason string, retry int) error {
if len(reason) == 0 {
reason = util.Now().UTC().Format(time.RFC3339)
}
if stream.Annotations == nil {
stream.Annotations = make(map[string]string)
}
stream.Annotations[api.DockerImageRepositoryCheckAnnotation] = reason
if _, err := c.streams.ImageStreams(stream.Namespace).Update(stream); err != nil && !errors.IsNotFound(err) {
if errors.IsConflict(err) && retry > 0 {
if stream, err := c.streams.ImageStreams(stream.Namespace).Get(stream.Name); err == nil {
return c.done(stream, reason, retry-1)
}
}
return err
}
return nil
}
开发者ID:jhadvig,项目名称:origin,代码行数:19,代码来源:controller.go
示例5: TestImageStreamAdmissionEvaluatorUsage
func TestImageStreamAdmissionEvaluatorUsage(t *testing.T) {
for _, tc := range []struct {
name string
oldSpec *imageapi.ImageStreamSpec
oldStatus *imageapi.ImageStreamStatus
newSpec *imageapi.ImageStreamSpec
newStatus *imageapi.ImageStreamStatus
expectedImages int64
}{
{
name: "empty image stream",
oldStatus: nil,
newStatus: &imageapi.ImageStreamStatus{},
expectedImages: 0,
},
{
name: "new image stream with one image",
oldStatus: nil,
newStatus: &imageapi.ImageStreamStatus{
Tags: map[string]imageapi.TagEventList{
"latest": {
Items: []imageapi.TagEvent{
{
DockerImageReference: fmt.Sprintf("172.30.12.34:5000/test/[email protected]%s", baseImageWith1LayerDigest),
Image: baseImageWith1LayerDigest,
},
},
},
},
},
expectedImages: 1,
},
{
name: "no change",
oldSpec: &imageapi.ImageStreamSpec{
Tags: map[string]imageapi.TagReference{
"new": {
Name: "new",
From: &kapi.ObjectReference{
Kind: "ImageStreamImage",
Namespace: "shared",
Name: fmt.Sprintf("[email protected]%s", miscImageDigest),
},
},
},
},
oldStatus: &imageapi.ImageStreamStatus{
Tags: map[string]imageapi.TagEventList{
"latest": {
Items: []imageapi.TagEvent{
{
DockerImageReference: fmt.Sprintf("172.30.12.34:5000/test/[email protected]%s", baseImageWith1LayerDigest),
Image: baseImageWith1LayerDigest,
},
},
},
},
},
newSpec: &imageapi.ImageStreamSpec{
Tags: map[string]imageapi.TagReference{
"new": {
Name: "new",
From: &kapi.ObjectReference{
Kind: "ImageStreamImage",
Namespace: "shared",
Name: fmt.Sprintf("[email protected]%s", miscImageDigest),
},
},
},
},
newStatus: &imageapi.ImageStreamStatus{
Tags: map[string]imageapi.TagEventList{
"latest": {
Items: []imageapi.TagEvent{
{
DockerImageReference: fmt.Sprintf("172.30.12.34:5000/test/[email protected]%s", baseImageWith1LayerDigest),
Image: baseImageWith1LayerDigest,
},
},
},
},
},
// misc image is already present in common is
expectedImages: 1,
},
{
name: "adding two new tags",
oldStatus: &imageapi.ImageStreamStatus{
Tags: map[string]imageapi.TagEventList{
"latest": {
Items: []imageapi.TagEvent{
{
DockerImageReference: fmt.Sprintf("172.30.12.34:5000/test/[email protected]%s", baseImageWith1LayerDigest),
Image: baseImageWith1LayerDigest,
},
},
},
//.........这里部分代码省略.........
开发者ID:RomainVabre,项目名称:origin,代码行数:101,代码来源:imagestream_evaluator_test.go
示例6: getImageStreamImageSuggestion
// getImageStreamImageSuggestion will return the appropriate marker Suggestion for when a BuildConfig is missing its input ImageStreamImage
func getImageStreamImageSuggestion(imageID string, imageStream *imageapi.ImageStream) osgraph.Suggestion {
// check the images stream to see if any import images are in flight or have failed
annotation, ok := imageStream.Annotations[imageapi.DockerImageRepositoryCheckAnnotation]
if !ok {
return osgraph.Suggestion(fmt.Sprintf("`oc import-image %s --from=` where `--from` specifies an image with hexadecimal ID %s", imageStream.GetName(), imageID))
}
if checkTime, err := time.Parse(time.RFC3339, annotation); err == nil {
// this time based annotation is set by pkg/image/controller/controller.go whenever import/tag operations are performed; unless
// in the midst of an import/tag operation, it stays set and serves as a timestamp for when the last operation occurred;
// so we will check if the image stream has been updated "recently";
// in case it is a slow link to the remote repo, see if if the check annotation occured within the last 5 minutes; if so, consider that as potentially "in progress"
compareTime := checkTime.Add(5 * time.Minute)
currentTime, _ := time.Parse(time.RFC3339, unversioned.Now().UTC().Format(time.RFC3339))
if compareTime.Before(currentTime) {
return osgraph.Suggestion(fmt.Sprintf("`oc import-image %s --from=` where `--from` specifies an image with hexadecimal ID %s", imageStream.GetName(), imageID))
}
return osgraph.Suggestion(fmt.Sprintf("`oc import-image %s --from=` with hexadecimal ID %s possibly in progress", imageStream.GetName(), imageID))
}
return osgraph.Suggestion(fmt.Sprintf("Possible error occurred with `oc import-image %s --from=` with hexadecimal ID %s; inspect images stream annotations", imageStream.GetName(), imageID))
}
开发者ID:RomainVabre,项目名称:origin,代码行数:24,代码来源:bc.go
注:本文中的github.com/openshift/origin/pkg/image/api.ImageStream类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论