operand-deployment-lifecycle-manager

command module
v1.20.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 24, 2022 License: Apache-2.0 Imports: 29 Imported by: 0

README

Docker Repository on Quay License Go Report Card

Operand Deployment Lifecycle Manager (ODLM)

Overview

Note: Documents in this repo are in active development. For the official documentation, see IBM Knowledge Center.

Operand Deployment Lifecycle Manager is used to manage the lifecycle of a group of operands. Check the design document here.

Operand Deployment Lifecycle Manager has four CRDs:

Resource Short Name Description
OperandRequest opreq It defines which operator/operand want to be installed in the cluster
OperandRegistry opreg It defines the OLM information, like channel and catalog source, for each operator
OperandConfig opcon It defines the parameters that should be used to install the operator's operand
OperandBindInfo opbi It identifies secrets and/or configmaps that should be shared with requests

Supported platforms

You can install the Operand Deployment Lifecycle Manager on Linux® x86_64 with Red Hat® OpenShift® Container Platform version 4.3+.

Prerequisites

  • operator-sdk version v1.3.0.
  • go version 1.15.7+
  • oc version v3.11+ or kubectl v1.11.3+
  • Access to an Openshift v4.3+ cluster

Documentation

Developer guide

Cloning the repository

Checkout this Operand Deployment Lifecycle Manager repository

# git clone https://github.com/IBM/operand-deployment-lifecycle-manager.git
# cd operand-deployment-lifecycle-manager
Building the operator

Build the odlm image and push it to a public registry, such as quay.io:

# make build
# make images
Installing

Run make install to install the operator. Check that the operator is running in the cluster, also check that the common service was deployed.

Following the expected result.

# kubectl get all -n ibm-common-services
NAME                                           READY   STATUS    RESTARTS   AGE
pod/operand-deployment-lifecycle-manager-786d699956-z7k4n   1/1     Running   0          21s

NAME                                      READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/operand-deployment-lifecycle-manager   1/1     1            1           22s

NAME                                                 DESIRED   CURRENT   READY   AGE
replicaset.apps/operand-deployment-lifecycle-manager-786d699956   1         1         1       22s
Uninstalling

To uninstall all that was performed in the above step run make uninstall.

Troubleshooting

Use the following command to check the operator logs.

# kubectl logs deployment.apps/operand-deployment-lifecycle-manager -n ibm-common-services
Running Tests
Development

When the API or CRD changed, run make code-dev re-generate the code.

SecurityContextConstraints Requirements

The Operand Deployment Lifecycle Manager supports running under the OpenShift Container Platform default restricted security context constraints.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
v1alpha1
Package v1alpha1 contains API Schema definitions for the operator v1alpha1 API group +kubebuilder:object:generate=true +groupName=operator.ibm.com
Package v1alpha1 contains API Schema definitions for the operator v1alpha1 API group +kubebuilder:object:generate=true +groupName=operator.ibm.com
controllers
test
e2e

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL