operator-framework/operator-lifecycle-manager

ImagePullPolicy for CatalogSources

ecordell opened this issue · 11 comments

Right now, CatalogSources are set to IfNotPresent. For development purposes, it would be nice to be able to configure the pull policy on the CatalogSource that generates the pod.

+1

oc explain catalogsource.spec

KIND: CatalogSource
VERSION: operators.coreos.com/v1alpha1

RESOURCE: spec

DESCRIPTION:
Spec for a catalog source.

FIELDS:
address
An optional address. When set, directs OLM to connect to use a pre-existing
registry server at this address.

configMap
The name of a ConfigMap that holds the entries for an in-memory catalog.

displayName
Pretty name for display

image
An image that serves a grpc registry. Only valid for grpc sourceType. If
both image and address are set, OLM does not use the address field.

publisher
The name of an entity that publishes this catalog

secrets <[]string>
A set of secrets that can be used to access the contents of the catalog. It
is best to keep this list small, since each will need to be tried for every
catalog entry.

sourceType -required-
The type of the source. configmap is the new name for internal

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

+1 For this issue. It is really useful for development.

exdx commented

As a hack you could take advantage of the new catalog polling feature described here and set the update poll interval for the development catalog source to something really high, say 24h. If you enable catalog polling the pullpolicy for the catalog source pod is set to Always. Just a little workaround until we add proper support for this feature.

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale commented

This issue has been automatically marked as stale because it has not had any recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contribution.
For more help on your issue, check out the olm-dev channel on the kubernetes slack [1] and the OLM Dev Working Group [2] [1] https://kubernetes.slack.com/archives/C0181L6JYQ2 [2] https://github.com/operator-framework/community#operator-lifecycle-manager-wg

stale commented

This issue has been automatically closed because it has not had any recent activity. Thank you for your contribution.

I was looking for the feature and found the following explanation:

Specify your index image. If you specify a tag after the image name, for example :v4.11, the catalog source pod uses an image pull policy of Always, meaning the pod always pulls the image prior to starting the container. If you specify a digest, for example @sha256:, the image pull policy is IfNotPresent, meaning the pod pulls the image only if it does not already exist on the node.

from https://docs.openshift.com/container-platform/4.11/operators/admin/olm-managing-custom-catalogs.html

I tested and it worked as expected.