ImageStreamImport [image.openshift.io/v1]
The image stream import resource provides an easy way for a user to find and import container images from other container image registries into the server. Individual images or an entire image repository may be imported, and users may choose to see the results of the import prior to tagging the resulting images into the specified image stream.
This API is intended for end-user tools that need to see the metadata of the image prior to import (for instance, to generate an application from it). Clients that know the desired image can continue to create spec.tags directly into their image streams.
Type
Required
spec
status
.spec
Description
ImageStreamImportSpec defines what images should be imported.
Type
object
Required
import
Property | Type | Description |
---|---|---|
|
| Images are a list of individual images to import. |
|
| ImageImportSpec describes a request to import a specific image. |
|
| Import indicates whether to perform an import - if so, the specified tags are set on the spec and status of the image stream defined by the type meta. |
|
| RepositoryImportSpec describes a request to import images from a container image repository. |
.spec.images
Description
Images are a list of individual images to import.
Type
array
.spec.images[]
Description
ImageImportSpec describes a request to import a specific image.
Type
object
Required
from
Property | Type | Description |
---|---|---|
| From is the source of an image to import; only kind DockerImage is allowed | |
|
| TagImportPolicy controls how images related to this tag will be imported. |
|
| IncludeManifest determines if the manifest for each image is returned in the response |
|
| TagReferencePolicy describes how pull-specs for images in this image stream tag are generated when image change triggers in deployment configs or builds are resolved. This allows the image stream author to control how images are accessed. |
| To is a tag in the current image stream to assign the imported image to, if name is not specified the default tag from from.name will be used |
.spec.images[].importPolicy
Description
TagImportPolicy controls how images related to this tag will be imported.
Type
object
Property | Type | Description |
---|---|---|
|
| Insecure is true if the server may bypass certificate verification or connect directly over HTTP during image import. |
|
| Scheduled indicates to the server that this tag should be periodically checked to ensure it is up to date, and imported |
.spec.images[].referencePolicy
Description
TagReferencePolicy describes how pull-specs for images in this image stream tag are generated when image change triggers in deployment configs or builds are resolved. This allows the image stream author to control how images are accessed.
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| Type determines how the image pull spec should be transformed when the image stream tag is used in deployment config triggers or new builds. The default value is |
.spec.repository
Description
RepositoryImportSpec describes a request to import images from a container image repository.
Type
object
Required
from
Property | Type | Description |
---|---|---|
| From is the source for the image repository to import; only kind DockerImage and a name of a container image repository is allowed | |
|
| TagImportPolicy controls how images related to this tag will be imported. |
|
| IncludeManifest determines if the manifest for each image is returned in the response |
|
| TagReferencePolicy describes how pull-specs for images in this image stream tag are generated when image change triggers in deployment configs or builds are resolved. This allows the image stream author to control how images are accessed. |
.spec.repository.importPolicy
Description
TagImportPolicy controls how images related to this tag will be imported.
Type
object
Property | Type | Description |
---|---|---|
|
| Insecure is true if the server may bypass certificate verification or connect directly over HTTP during image import. |
|
| Scheduled indicates to the server that this tag should be periodically checked to ensure it is up to date, and imported |
.spec.repository.referencePolicy
Description
TagReferencePolicy describes how pull-specs for images in this image stream tag are generated when image change triggers in deployment configs or builds are resolved. This allows the image stream author to control how images are accessed.
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| Type determines how the image pull spec should be transformed when the image stream tag is used in deployment config triggers or new builds. The default value is |
.status
Description
ImageStreamImportStatus contains information about the status of an image stream import.
Type
object
Property | Type | Description |
---|---|---|
|
| Images is set with the result of importing spec.images |
|
| ImageImportStatus describes the result of an image import. |
|
| An ImageStream stores a mapping of tags to images, metadata overrides that are applied when images are tagged in a stream, and an optional reference to a container image repository on a registry. Users typically update the spec.tags field to point to external images which are imported from container registries using credentials in your namespace with the pull secret type, or to existing image stream tags and images which are immediately accessible for tagging or pulling. The history of images applied to a tag is visible in the status.tags field and any user who can view an image stream is allowed to tag that image into their own image streams. Access to pull images from the integrated registry is granted by having the “get imagestreams/layers” permission on a given image stream. Users may remove a tag by deleting the imagestreamtag resource, which causes both spec and status for that tag to be removed. Image stream history is retained until an administrator runs the prune operation, which removes references that are no longer in use. To preserve a historical image, ensure there is a tag in spec pointing to that image by its digest. |
|
| RepositoryImportStatus describes the result of an image repository import |
.status.images
Description
Images is set with the result of importing spec.images
Type
array
.status.images[]
Description
ImageImportStatus describes the result of an image import.
Type
object
Required
status
Property | Type | Description |
---|---|---|
|
| Image is an immutable representation of a container image and metadata at a point in time. Images are named by taking a hash of their contents (metadata and content) and any change in format, content, or metadata results in a new name. The images resource is primarily for use by cluster administrators and integrations like the cluster image registry - end users instead access images via the imagestreamtags or imagestreamimages resources. While image metadata is stored in the API, any integration that implements the container image registry API must provide its own storage for the raw manifest data, image config, and layer contents. |
| Status is the status of the image import, including errors encountered while retrieving the image | |
|
| Tag is the tag this image was located under, if any |
.status.images[].image
Description
Image is an immutable representation of a container image and metadata at a point in time. Images are named by taking a hash of their contents (metadata and content) and any change in format, content, or metadata results in a new name. The images resource is primarily for use by cluster administrators and integrations like the cluster image registry - end users instead access images via the imagestreamtags or imagestreamimages resources. While image metadata is stored in the API, any integration that implements the container image registry API must provide its own storage for the raw manifest data, image config, and layer contents.
Type
object
Required
dockerImageLayers
Property | Type | Description |
---|---|---|
|
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| DockerImageConfig is a JSON blob that the runtime uses to set up the container. This is a part of manifest schema v2. |
|
| DockerImageLayers represents the layers in the image. May not be set if the image does not define that data. |
|
| ImageLayer represents a single layer of the image. Some images may have multiple layers. Some may have none. |
|
| DockerImageManifest is the raw JSON of the manifest |
|
| DockerImageManifestMediaType specifies the mediaType of manifest. This is a part of manifest schema v2. |
| DockerImageMetadata contains metadata about this image | |
|
| DockerImageMetadataVersion conveys the version of the object, which if empty defaults to “1.0” |
|
| DockerImageReference is the string that can be used to pull this image. |
|
| DockerImageSignatures provides the signatures as opaque blobs. This is a part of manifest schema v1. |
|
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| ||
|
| Signatures holds all signatures of the image. |
|
| ImageSignature holds a signature of an image. It allows to verify image identity and possibly other claims as long as the signature is trusted. Based on this information it is possible to restrict runnable images to those matching cluster-wide policy. Mandatory fields should be parsed by clients doing image verification. The others are parsed from signature’s content by the server. They serve just an informative purpose. |
.status.images[].image.dockerImageLayers
Description
DockerImageLayers represents the layers in the image. May not be set if the image does not define that data.
Type
array
.status.images[].image.dockerImageLayers[]
Description
ImageLayer represents a single layer of the image. Some images may have multiple layers. Some may have none.
Type
object
Required
name
size
Property | Type | Description |
---|---|---|
|
| MediaType of the referenced object. |
|
| Name of the layer as defined by the underlying store. |
|
| Size of the layer in bytes as defined by the underlying store. |
.status.images[].image.signatures
Description
Signatures holds all signatures of the image.
Type
array
.status.images[].image.signatures[]
Description
ImageSignature holds a signature of an image. It allows to verify image identity and possibly other claims as long as the signature is trusted. Based on this information it is possible to restrict runnable images to those matching cluster-wide policy. Mandatory fields should be parsed by clients doing image verification. The others are parsed from signature’s content by the server. They serve just an informative purpose.
Type
object
Required
type
content
.status.images[].image.signatures[].conditions
Description
Conditions represent the latest available observations of a signature’s current state.
Type
array
.status.images[].image.signatures[].conditions[]
Description
SignatureCondition describes an image signature condition of particular kind at particular probe time.
Type
object
Required
type
status
Property | Type | Description |
---|---|---|
| Last time the condition was checked. | |
| Last time the condition transit from one status to another. | |
|
| Human readable message indicating details about last transition. |
|
| (brief) reason for the condition’s last transition. |
|
| Status of the condition, one of True, False, Unknown. |
|
| Type of signature condition, Complete or Failed. |
.status.images[].image.signatures[].issuedBy
Description
SignatureIssuer holds information about an issuer of signing certificate or key.
Type
object
Property | Type | Description |
---|---|---|
|
| Common name (e.g. openshift-signing-service). |
|
| Organization name. |
.status.images[].image.signatures[].issuedTo
Description
SignatureSubject holds information about a person or entity who created the signature.
Type
object
Required
publicKeyID
Property | Type | Description |
---|---|---|
|
| Common name (e.g. openshift-signing-service). |
|
| Organization name. |
|
| If present, it is a human readable key id of public key belonging to the subject used to verify image signature. It should contain at least 64 lowest bits of public key’s fingerprint (e.g. 0x685ebe62bf278440). |
.status.import
Description
An ImageStream stores a mapping of tags to images, metadata overrides that are applied when images are tagged in a stream, and an optional reference to a container image repository on a registry. Users typically update the spec.tags field to point to external images which are imported from container registries using credentials in your namespace with the pull secret type, or to existing image stream tags and images which are immediately accessible for tagging or pulling. The history of images applied to a tag is visible in the status.tags field and any user who can view an image stream is allowed to tag that image into their own image streams. Access to pull images from the integrated registry is granted by having the “get imagestreams/layers” permission on a given image stream. Users may remove a tag by deleting the imagestreamtag resource, which causes both spec and status for that tag to be removed. Image stream history is retained until an administrator runs the prune operation, which removes references that are no longer in use. To preserve a historical image, ensure there is a tag in spec pointing to that image by its digest.
Type
object
Property | Type | Description |
---|---|---|
|
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: |
| ||
|
| ImageStreamSpec represents options for ImageStreams. |
|
| ImageStreamStatus contains information about the state of this image stream. |
.status.import.spec
Description
ImageStreamSpec represents options for ImageStreams.
Type
object
Property | Type | Description |
---|---|---|
|
| dockerImageRepository is optional, if specified this stream is backed by a container repository on this server Deprecated: This field is deprecated as of v3.7 and will be removed in a future release. Specify the source for the tags to be imported in each tag via the spec.tags.from reference instead. |
|
| ImageLookupPolicy describes how an image stream can be used to override the image references used by pods, builds, and other resources in a namespace. |
|
| tags map arbitrary string values to specific image locators |
|
| TagReference specifies optional annotations for images using this tag and an optional reference to an ImageStreamTag, ImageStreamImage, or DockerImage this tag should track. |
.status.import.spec.lookupPolicy
Description
ImageLookupPolicy describes how an image stream can be used to override the image references used by pods, builds, and other resources in a namespace.
Type
object
Required
local
Property | Type | Description |
---|---|---|
|
| local will change the docker short image references (like “mysql” or “php:latest”) on objects in this namespace to the image ID whenever they match this image stream, instead of reaching out to a remote registry. The name will be fully qualified to an image ID if found. The tag’s referencePolicy is taken into account on the replaced value. Only works within the current namespace. |
.status.import.spec.tags
Description
tags map arbitrary string values to specific image locators
Type
array
.status.import.spec.tags[]
Description
TagReference specifies optional annotations for images using this tag and an optional reference to an ImageStreamTag, ImageStreamImage, or DockerImage this tag should track.
Type
object
Required
name
Property | Type | Description |
---|---|---|
|
| Optional; if specified, annotations that are applied to images retrieved via ImageStreamTags. |
| Optional; if specified, a reference to another image that this tag should point to. Valid values are ImageStreamTag, ImageStreamImage, and DockerImage. ImageStreamTag references can only reference a tag within this same ImageStream. | |
|
| Generation is a counter that tracks mutations to the spec tag (user intent). When a tag reference is changed the generation is set to match the current stream generation (which is incremented every time spec is changed). Other processes in the system like the image importer observe that the generation of spec tag is newer than the generation recorded in the status and use that as a trigger to import the newest remote tag. To trigger a new import, clients may set this value to zero which will reset the generation to the latest stream generation. Legacy clients will send this value as nil which will be merged with the current tag generation. |
|
| TagImportPolicy controls how images related to this tag will be imported. |
|
| Name of the tag |
|
| Reference states if the tag will be imported. Default value is false, which means the tag will be imported. |
|
| TagReferencePolicy describes how pull-specs for images in this image stream tag are generated when image change triggers in deployment configs or builds are resolved. This allows the image stream author to control how images are accessed. |
.status.import.spec.tags[].importPolicy
Description
TagImportPolicy controls how images related to this tag will be imported.
Type
object
Property | Type | Description |
---|---|---|
|
| Insecure is true if the server may bypass certificate verification or connect directly over HTTP during image import. |
|
| Scheduled indicates to the server that this tag should be periodically checked to ensure it is up to date, and imported |
.status.import.spec.tags[].referencePolicy
Description
TagReferencePolicy describes how pull-specs for images in this image stream tag are generated when image change triggers in deployment configs or builds are resolved. This allows the image stream author to control how images are accessed.
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| Type determines how the image pull spec should be transformed when the image stream tag is used in deployment config triggers or new builds. The default value is |
.status.import.status
Description
ImageStreamStatus contains information about the state of this image stream.
Type
object
Required
dockerImageRepository
Property | Type | Description |
---|---|---|
|
| DockerImageRepository represents the effective location this stream may be accessed at. May be empty until the server determines where the repository is located |
|
| PublicDockerImageRepository represents the public location from where the image can be pulled outside the cluster. This field may be empty if the administrator has not exposed the integrated registry externally. |
|
| Tags are a historical record of images associated with each tag. The first entry in the TagEvent array is the currently tagged image. |
|
| NamedTagEventList relates a tag to its image history. |
.status.import.status.tags
Description
Tags are a historical record of images associated with each tag. The first entry in the TagEvent array is the currently tagged image.
Type
array
.status.import.status.tags[]
Description
NamedTagEventList relates a tag to its image history.
Type
object
Required
tag
items
Property | Type | Description |
---|---|---|
|
| Conditions is an array of conditions that apply to the tag event list. |
|
| TagEventCondition contains condition information for a tag event. |
|
| Standard object’s metadata. |
|
| TagEvent is used by ImageStreamStatus to keep a historical record of images associated with a tag. |
|
| Tag is the tag for which the history is recorded |
.status.import.status.tags[].conditions
Description
Conditions is an array of conditions that apply to the tag event list.
Type
array
.status.import.status.tags[].conditions[]
Description
TagEventCondition contains condition information for a tag event.
Type
object
Required
type
status
generation
.status.import.status.tags[].items
Description
Standard object’s metadata.
array
.status.import.status.tags[].items[]
Description
TagEvent is used by ImageStreamStatus to keep a historical record of images associated with a tag.
Type
object
Required
dockerImageReference
image
generation
Property | Type | Description |
---|---|---|
| Created holds the time the TagEvent was created | |
|
| DockerImageReference is the string that can be used to pull this image |
|
| Generation is the spec tag generation that resulted in this tag being updated |
|
| Image is the image |
.status.repository
Description
RepositoryImportStatus describes the result of an image repository import
Type
object
Property | Type | Description |
---|---|---|
|
| AdditionalTags are tags that exist in the repository but were not imported because a maximum limit of automatic imports was applied. |
|
| Images is a list of images successfully retrieved by the import of the repository. |
|
| ImageImportStatus describes the result of an image import. |
| Status reflects whether any failure occurred during import |
.status.repository.images
Description
Images is a list of images successfully retrieved by the import of the repository.
Type
array
.status.repository.images[]
Description
ImageImportStatus describes the result of an image import.
Type
object
Required
status
Property | Type | Description |
---|---|---|
|
| Image is an immutable representation of a container image and metadata at a point in time. Images are named by taking a hash of their contents (metadata and content) and any change in format, content, or metadata results in a new name. The images resource is primarily for use by cluster administrators and integrations like the cluster image registry - end users instead access images via the imagestreamtags or imagestreamimages resources. While image metadata is stored in the API, any integration that implements the container image registry API must provide its own storage for the raw manifest data, image config, and layer contents. |
| Status is the status of the image import, including errors encountered while retrieving the image | |
|
| Tag is the tag this image was located under, if any |
.status.repository.images[].image
Description
Image is an immutable representation of a container image and metadata at a point in time. Images are named by taking a hash of their contents (metadata and content) and any change in format, content, or metadata results in a new name. The images resource is primarily for use by cluster administrators and integrations like the cluster image registry - end users instead access images via the imagestreamtags or imagestreamimages resources. While image metadata is stored in the API, any integration that implements the container image registry API must provide its own storage for the raw manifest data, image config, and layer contents.
Type
object
Required
dockerImageLayers
Property | Type | Description |
---|---|---|
|
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: |
|
| DockerImageConfig is a JSON blob that the runtime uses to set up the container. This is a part of manifest schema v2. |
|
| DockerImageLayers represents the layers in the image. May not be set if the image does not define that data. |
|
| ImageLayer represents a single layer of the image. Some images may have multiple layers. Some may have none. |
|
| DockerImageManifest is the raw JSON of the manifest |
|
| DockerImageManifestMediaType specifies the mediaType of manifest. This is a part of manifest schema v2. |
| DockerImageMetadata contains metadata about this image | |
|
| DockerImageMetadataVersion conveys the version of the object, which if empty defaults to “1.0” |
|
| DockerImageReference is the string that can be used to pull this image. |
|
| DockerImageSignatures provides the signatures as opaque blobs. This is a part of manifest schema v1. |
|
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: |
| ||
|
| Signatures holds all signatures of the image. |
|
| ImageSignature holds a signature of an image. It allows to verify image identity and possibly other claims as long as the signature is trusted. Based on this information it is possible to restrict runnable images to those matching cluster-wide policy. Mandatory fields should be parsed by clients doing image verification. The others are parsed from signature’s content by the server. They serve just an informative purpose. |
.status.repository.images[].image.dockerImageLayers
Description
DockerImageLayers represents the layers in the image. May not be set if the image does not define that data.
Type
array
.status.repository.images[].image.dockerImageLayers[]
Description
ImageLayer represents a single layer of the image. Some images may have multiple layers. Some may have none.
Type
object
Required
name
size
mediaType
Property | Type | Description |
---|---|---|
|
| MediaType of the referenced object. |
|
| Name of the layer as defined by the underlying store. |
|
| Size of the layer in bytes as defined by the underlying store. |
.status.repository.images[].image.signatures
Description
Signatures holds all signatures of the image.
Type
array
.status.repository.images[].image.signatures[]
Description
ImageSignature holds a signature of an image. It allows to verify image identity and possibly other claims as long as the signature is trusted. Based on this information it is possible to restrict runnable images to those matching cluster-wide policy. Mandatory fields should be parsed by clients doing image verification. The others are parsed from signature’s content by the server. They serve just an informative purpose.
Type
object
Required
type
content
Property | Type | Description |
---|---|---|
|
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: |
|
| Conditions represent the latest available observations of a signature’s current state. |
|
| SignatureCondition describes an image signature condition of particular kind at particular probe time. |
|
| Required: An opaque binary string which is an image’s signature. |
| If specified, it is the time of signature’s creation. | |
|
| A human readable string representing image’s identity. It could be a product name and version, or an image pull spec (e.g. “registry.access.redhat.com/rhel7/rhel:7.2”). |
|
| SignatureIssuer holds information about an issuer of signing certificate or key. |
|
| SignatureSubject holds information about a person or entity who created the signature. |
|
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: |
| ||
|
| Contains claims from the signature. |
|
| Required: Describes a type of stored blob. |
.status.repository.images[].image.signatures[].conditions
Description
Conditions represent the latest available observations of a signature’s current state.
Type
array
.status.repository.images[].image.signatures[].conditions[]
Description
SignatureCondition describes an image signature condition of particular kind at particular probe time.
Type
object
Required
type
status
Property | Type | Description |
---|---|---|
| Last time the condition was checked. | |
| Last time the condition transit from one status to another. | |
|
| Human readable message indicating details about last transition. |
|
| (brief) reason for the condition’s last transition. |
|
| Status of the condition, one of True, False, Unknown. |
|
| Type of signature condition, Complete or Failed. |
.status.repository.images[].image.signatures[].issuedBy
Description
SignatureIssuer holds information about an issuer of signing certificate or key.
Type
object
Property | Type | Description |
---|---|---|
|
| Common name (e.g. openshift-signing-service). |
|
| Organization name. |
.status.repository.images[].image.signatures[].issuedTo
Description
SignatureSubject holds information about a person or entity who created the signature.
Type
object
Required
publicKeyID
Property | Type | Description |
---|---|---|
|
| Common name (e.g. openshift-signing-service). |
|
| Organization name. |
|
| If present, it is a human readable key id of public key belonging to the subject used to verify image signature. It should contain at least 64 lowest bits of public key’s fingerprint (e.g. 0x685ebe62bf278440). |
API endpoints
The following API endpoints are available:
/apis/image.openshift.io/v1/namespaces/{namespace}/imagestreamimports
Parameter | Type | Description |
---|---|---|
|
| object name and auth scope, such as for teams and projects |
Parameter | Type | Description |
---|---|---|
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://golang.org/pkg/unicode/#IsPrint. |
|
| If ‘true’, then the output is pretty printed. |
HTTP method
POST
Description
create an ImageStreamImport
HTTP code | Reponse body |
---|---|
200 - OK |