h4. What * The operator should appear the OLM * Allow users install the operator by OLM * We should be able to deploy the operator in https://operatorhub.io/contribute
h4. How * This operator need to have the following OLM objects * CSV: https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/design/building-your-csv.md * CatalogSource: * Subscription: * OperatorGroup:
{panel:title=Helpful Information} * Examples: https://github.com/operator-framework/community-operators * Documentation RBCA Permissions : https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/design/ building access - your control.md * Debug: https://github.com/operator - csv framework/operator-lifecycle-manager/blob/master/Documentation/design/debugging .md * Operator-SDK Command to create the CSV file.
{code:java} operator-sdk olm-catalog gen-csv --csv-version 0.0.1 --csv-config memcached-operator.0.0.1.clusterserviceversion.yaml {code}
* Examples of Resources.
{code:java} apiVersion: operators.coreos.com/v1alpha2 kind: CatalogSource metadata: name: installed-my-operator spec: displayName: Custom Operators icon: base64data: "" mediatype: "" publisher: Custom sourceType: grpc {code}
{code:java} apiVersion: operators.coreos.com/v1alpha2 kind: OperatorGroup metadata: name: my-operator namespace: $namespace spec: targetNamespaces: - sdktest {code}
{code:java} apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: my-operator spec: channel: v1alpha1 installPlanApproval: Automatic name: memcached-operator source: installed-my-operator sourceNamespace: $namespace startingCSV: my-operator.v0.0.1 {code}
{panel}
{code:java} apiVersion: app.coreos.com/v1alpha1 kind: InstallPlan metadata: namespace: default name: olm-testing spec: clusterServiceVersionNames: - etcdoperator.v0.7.2 approval: Automatic {panel} |
|