mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 21:46:22 +01:00
104 lines
3.4 KiB
Plaintext
104 lines
3.4 KiB
Plaintext
// Module included in the following assemblies:
|
|
//
|
|
// * operators/understanding/olm/olm-understanding-olm.adoc
|
|
|
|
:_mod-docs-content-type: CONCEPT
|
|
[id="olm-installplan_{context}"]
|
|
= Install plan
|
|
|
|
An _install plan_, defined by an `InstallPlan` object, describes a set of resources that Operator Lifecycle Manager (OLM) creates to install or upgrade to a specific version of an Operator. The version is defined by a cluster service version (CSV).
|
|
|
|
To install an Operator, a cluster administrator, or a user who has been granted Operator installation permissions, must first create a `Subscription` object. A subscription represents the intent to subscribe to a stream of available versions of an Operator from a catalog source. The subscription then creates an `InstallPlan` object to facilitate the installation of the resources for the Operator.
|
|
|
|
The install plan must then be approved according to one of the following approval strategies:
|
|
|
|
* If the subscription's `spec.installPlanApproval` field is set to `Automatic`, the install plan is approved automatically.
|
|
* If the subscription's `spec.installPlanApproval` field is set to `Manual`, the install plan must be manually approved by a cluster administrator or user with proper permissions.
|
|
|
|
After the install plan is approved, OLM creates the specified resources and installs the Operator in the namespace that is specified by the subscription.
|
|
|
|
.Example `InstallPlan` object
|
|
[%collapsible]
|
|
====
|
|
[source,yaml]
|
|
----
|
|
apiVersion: operators.coreos.com/v1alpha1
|
|
kind: InstallPlan
|
|
metadata:
|
|
name: install-abcde
|
|
namespace: operators
|
|
spec:
|
|
approval: Automatic
|
|
approved: true
|
|
clusterServiceVersionNames:
|
|
- my-operator.v1.0.1
|
|
generation: 1
|
|
status:
|
|
...
|
|
catalogSources: []
|
|
conditions:
|
|
- lastTransitionTime: '2021-01-01T20:17:27Z'
|
|
lastUpdateTime: '2021-01-01T20:17:27Z'
|
|
status: 'True'
|
|
type: Installed
|
|
phase: Complete
|
|
plan:
|
|
- resolving: my-operator.v1.0.1
|
|
resource:
|
|
group: operators.coreos.com
|
|
kind: ClusterServiceVersion
|
|
manifest: >-
|
|
...
|
|
name: my-operator.v1.0.1
|
|
sourceName: redhat-operators
|
|
sourceNamespace: openshift-marketplace
|
|
version: v1alpha1
|
|
status: Created
|
|
- resolving: my-operator.v1.0.1
|
|
resource:
|
|
group: apiextensions.k8s.io
|
|
kind: CustomResourceDefinition
|
|
manifest: >-
|
|
...
|
|
name: webservers.web.servers.org
|
|
sourceName: redhat-operators
|
|
sourceNamespace: openshift-marketplace
|
|
version: v1beta1
|
|
status: Created
|
|
- resolving: my-operator.v1.0.1
|
|
resource:
|
|
group: ''
|
|
kind: ServiceAccount
|
|
manifest: >-
|
|
...
|
|
name: my-operator
|
|
sourceName: redhat-operators
|
|
sourceNamespace: openshift-marketplace
|
|
version: v1
|
|
status: Created
|
|
- resolving: my-operator.v1.0.1
|
|
resource:
|
|
group: rbac.authorization.k8s.io
|
|
kind: Role
|
|
manifest: >-
|
|
...
|
|
name: my-operator.v1.0.1-my-operator-6d7cbc6f57
|
|
sourceName: redhat-operators
|
|
sourceNamespace: openshift-marketplace
|
|
version: v1
|
|
status: Created
|
|
- resolving: my-operator.v1.0.1
|
|
resource:
|
|
group: rbac.authorization.k8s.io
|
|
kind: RoleBinding
|
|
manifest: >-
|
|
...
|
|
name: my-operator.v1.0.1-my-operator-6d7cbc6f57
|
|
sourceName: redhat-operators
|
|
sourceNamespace: openshift-marketplace
|
|
version: v1
|
|
status: Created
|
|
...
|
|
----
|
|
====
|