ImageMap v1alpha1

apiVersion: tilt.dev/v1alpha1

import "github.com/tilt-dev/tilt/pkg/apis/core/v1alpha1"

ImageMap

ImageMap expresses the mapping from an image reference to a real, pushed image in an image registry that a container runtime can access.

Another way to think about the ImageMap is that ImageMapSpec is a mutable image reference (where the image might not exist yet), but ImageMapStatus is an immutable image reference (where, if an image is specified, it always exists).

ImageMap does not specify how the image is built or who is responsible for building this. But any API that builds images should produce an ImageMap.

For example, a builder that builds to a local image registry might create a map from: ‘my-apiserver:dev’ to ‘localhost:5000/my-apiserver:content-based-label’.

ImageMap doesn’t follow the usual Kubernetes-style API semantics (where the Status is the result of running the Spec). It’s closer to a ConfigMap. Though the Status does represent a real runtime result (an image in a registry).


ImageMapSpec

ImageMapSpec defines the desired state of ImageMap


  • selector (string), required

    A named image reference.

    Deployment tools expect this image reference to match an image in the YAML being deployed, and will replace that image reference.

    By default, this selector will match an image if the names match (tags on both the selector and the matched reference are ignored).

  • matchExact (boolean)

    If specified, then tags on both the selector and the matched reference are used for matching. The selector will only match the reference if the tags match exactly.

  • matchInEnvVars (boolean)

    If specified, then the selector will also match any strings in container env variables.

  • overrideArgs (ImageMapOverrideArgs)

    If specified, the injector will replace the ‘args’ field in the container when it replaces the image.

    *ImageMapArgsOverride defines args to inject when the image is injected. Only applies to types that embed a v1.Container with a Command field.

    https://pkg.go.dev/k8s.io/api/core/v1#Container*

    • overrideArgs.args ([]string), required

      A list of args strings.

  • overrideCommand (ImageMapOverrideCommand)

    If specified, the injector will replace the ‘command’ field in the container when it replaces the image.

    *ImageMapCommandOverride defines a command to inject when the image is injected. Only applies to types that embed a v1.Container with a Command field.

    https://pkg.go.dev/k8s.io/api/core/v1#Container*

    • overrideCommand.command ([]string), required

      A list of command strings.

ImageMapStatus

ImageMapStatus defines the observed state of ImageMap


  • image (string), required

    A fully-qualified image reference, including a name and an immutable tag.

    The image will not necessarily have the same repo URL as the selector. Many Kubernetes clusters let you push to a local registry for local development.

ImageMapList

ImageMapList


  • apiVersion: tilt.dev/v1alpha1

  • kind: ImageMapList

  • metadata (ListMeta)

  • items ([]ImageMap), required

Operations


get read the specified ImageMap

HTTP Request

GET /apis/tilt.dev/v1alpha1/imagemaps/{name}

Parameters

  • name (in path): string, required

    name of the ImageMap

  • pretty (in query): string

    pretty

Response

200 (ImageMap): OK

get read status of the specified ImageMap

HTTP Request

GET /apis/tilt.dev/v1alpha1/imagemaps/{name}/status

Parameters

  • name (in path): string, required

    name of the ImageMap

  • pretty (in query): string

    pretty

Response

200 (ImageMap): OK

list list or watch objects of kind ImageMap

HTTP Request

GET /apis/tilt.dev/v1alpha1/imagemaps

Parameters

Response

200 (ImageMapList): OK

create create an ImageMap

HTTP Request

POST /apis/tilt.dev/v1alpha1/imagemaps

Parameters

Response

200 (ImageMap): OK

201 (ImageMap): Created

202 (ImageMap): Accepted

update replace the specified ImageMap

HTTP Request

PUT /apis/tilt.dev/v1alpha1/imagemaps/{name}

Parameters

  • name (in path): string, required

    name of the ImageMap

  • body: ImageMap, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • pretty (in query): string

    pretty

Response

200 (ImageMap): OK

201 (ImageMap): Created

update replace status of the specified ImageMap

HTTP Request

PUT /apis/tilt.dev/v1alpha1/imagemaps/{name}/status

Parameters

  • name (in path): string, required

    name of the ImageMap

  • body: ImageMap, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • pretty (in query): string

    pretty

Response

200 (ImageMap): OK

201 (ImageMap): Created

patch partially update the specified ImageMap

HTTP Request

PATCH /apis/tilt.dev/v1alpha1/imagemaps/{name}

Parameters

  • name (in path): string, required

    name of the ImageMap

  • body: Patch, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • force (in query): boolean

    force

  • pretty (in query): string

    pretty

Response

200 (ImageMap): OK

patch partially update status of the specified ImageMap

HTTP Request

PATCH /apis/tilt.dev/v1alpha1/imagemaps/{name}/status

Parameters

  • name (in path): string, required

    name of the ImageMap

  • body: Patch, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • force (in query): boolean

    force

  • pretty (in query): string

    pretty

Response

200 (ImageMap): OK

delete delete an ImageMap

HTTP Request

DELETE /apis/tilt.dev/v1alpha1/imagemaps/{name}

Parameters

Response

200 (Status): OK

202 (Status): Accepted

deletecollection delete collection of ImageMap

HTTP Request

DELETE /apis/tilt.dev/v1alpha1/imagemaps

Parameters

Response

200 (Status): OK