managementState
The Samples Operator, which operates in the OpenShift namespace, installs and updates the Red Hat Enterprise Linux (RHEL)-based OpenShift Container Platform imagestreams and OpenShift Container Platform templates.
During installation, the Operator creates the default configuration object for itself and then creates the sample imagestreams and templates, including quickstart templates.
The Samples Operator copies the pull secret that is captured by the installation
program into the OpenShift namespace and names the secret,
samples-registry-credentials
, to facilitate imagestream imports from
registry.redhat.io
. Additionally, to facilitate imagestream imports from other
registries that require credentials, a cluster administrator can create any
additional secrets that contain the content of a Docker config.json
file in
the OpenShift namespace needed to facilitate image import.
The Samples Operator configuration is a cluster-wide resource, and the deployment
is contained within the openshift-cluster-samples-operator
namespace.
The image for the Samples Operator contains imagestream and template definitions for the associated OpenShift Container Platform release. When each sample is created or updated, the Samples Operator includes an annotation that denotes the version of OpenShift Container Platform. The Operator uses this annotation to ensure that each sample matches the release version. Samples outside of its inventory are ignored, as are skipped samples. Modifications to any samples that are managed by the Operator, where that version annotation is modified or deleted, will be reverted automatically.
The Jenkins images are part of the image payload from installation and are tagged into the imagestreams directly. |
The Samples Operator configuration resource includes a finalizer which cleans up the following upon deletion:
Operator managed imagestreams.
Operator managed templates.
Operator generated configuration resources.
Cluster status resources.
The samples-registry-credentials
secret.
Upon deletion of the samples resource, the Samples Operator recreates the resource using the default configuration.
The samples resource offers the following configuration fields:
Parameter | Description | ||
---|---|---|---|
|
|
||
|
Overrides the registry from which images are imported.
|
||
|
Placeholder to choose an architecture type. Currently only x86 is supported. |
||
|
Imagestreams that are in the Samples Operator’s inventory but that the cluster
administrator wants the Operator to ignore or not manage. You can add a list of imagestream names to this parameter. For example, |
||
|
Templates that are in the Samples Operator’s inventory, but that the cluster administrator wants the Operator to ignore or not manage. |
Secret, imagestream, and template watch events can come in before the initial samples resource object is created, the Samples Operator detects and re-queues the event.
When the Samples Operator starts supporting multiple architectures, the
architecture list is not allowed to be changed while in the Managed
state.
In order to change the architectures values, a cluster administrator must:
Mark the Management State
as Removed
, saving the change.
In a subsequent change, edit the architecture and change the Management State
back to Managed
.
The Samples Operator still processes secrets while in Removed
state. You can
create the secret before switching to Removed
, while in Removed
before
switching to Managed
, or after switching to Managed
state (though there are
delays in creating the samples until the secret event is processed if you create
the secret after switching to Managed
). This helps facilitate the
changing of the registry, where you choose to remove all the samples before
switching to insure a clean slate (removing before switching is not required).
The samples resource maintains the following conditions in its status:
Condition | Description |
---|---|
|
Indicates the samples are created in the OpenShift namespace. |
|
|
|
A |
|
|
|
Indicator that there is a |
|
Indicator of which imagestreams had errors during the image import phase for one of their tags.
|
|
|
You can configure the Samples Operator by editing the file with the provided parameters.
Install the OpenShift CLI (oc
).
Access the Samples Operator configuration:
$ oc get configs.samples.operator.openshift.io/cluster -o yaml
The Samples Operator configuration resembles the following example:
apiVersion: samples.operator.openshift.io/v1
kind: Config
projectName: cluster-samples-operator
...