| Comment: |
h1. Getting the operator market place in minishift/openshift 3.11
Clone the official Operator Lifecycle Manager repository.
{code:java} git clone https://github.com/operator-framework/operator-lifecycle-manager {code}
Install Operator Lifecycle Manager v0.7.2. We will install each manifest at a time so we can see the individual components that make up OLM.
Begin by creating the openshift-operator-lifecycle-manager namespace.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_00-namespace.yaml | oc create -f - {code}
Create the olm-operator Service Account, ClusterRole, and ClusterRoleBinding.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_01-olm-operator.serviceaccount.yaml | oc create -f - {code}
Create the kind: ClusterServiceVersion CRD.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_02-clusterserviceversion.crd.yaml | oc create -f - {code}
Create the kind: InstallPlan CRD.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_03-installplan.crd.yaml | oc create -f - {code}
Create the kind: Subscription CRD.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_04-subscription.crd.yaml | oc create -f - {code}
Create the kind: Catalogsource CRD.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_05-catalogsource.crd.yaml | oc create -f - {code}
Verify all four OLM CRDs are present.
oc get crds Create the rh-operators CatalogSource ConfigMap.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_06-rh-operators.configmap.yaml | oc create -f - {code}
Create the rh-operators CatalogSource.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_09-rh-operators.catalogsource.yaml | oc create -f - {code}
Create the olm-operator Operator.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_10-olm-operator.deployment.yaml | oc create -f - {code}
Create the catalog-operator Operator.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_11-catalog-operator.deployment.yaml | oc create -f - {code}
Verify the two OLM operators are running property.
{code:java} oc -n openshift-operator-lifecycle-manager get pods {code}
Create the Aggregate view and edit ClusterRoles.
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_12-aggregated.clusterrole.yaml | oc create -f - {code}
Create the package-server Deployment and Service
{code:java} cat operator-lifecycle-manager/deploy/okd/manifests/0.7.2/0000_30_13-packageserver.yaml | oc create -f - {code}
Verify the package-server is running properly.
{code:java} oc -n openshift-operator-lifecycle-manager get pods {code}
Verify the new openshift-operator-lifecycle-manager namespace has been created along with the three OLM operators: catalog, olm, and package.
{code:java} oc get pods --all-namespaces {code}
The local console proxy utilizes the system:serviceaccount:kube-system:default Service Account to access all resources. Grant this Service Account cluster-admin access and refresh the UI.
{code:java} oc adm policy add-cluster-role-to-user cluster-admin system:serviceaccount:kube-system:default {code}
Serve up the Operator-centric OpenShift UI console locally.
{code:java} ./operator-lifecycle-manager/scripts/run_console_local.sh {code}
You should be able to acces the UI at http://localhost:9000. |