Skip to content

OPRUN-3063: Generate OLM microshift manifests #604

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Nov 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
742 changes: 742 additions & 0 deletions microshift-manifests/0000_50_olm_00-catalogsources.crd.yaml

Large diffs are not rendered by default.

5,351 changes: 5,351 additions & 0 deletions microshift-manifests/0000_50_olm_00-clusterserviceversions.crd.yaml

Large diffs are not rendered by default.

267 changes: 267 additions & 0 deletions microshift-manifests/0000_50_olm_00-installplans.crd.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,267 @@
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.8.0
include.release.openshift.io/ibm-cloud-managed: "true"
include.release.openshift.io/self-managed-high-availability: "true"
capability.openshift.io/name: "OperatorLifecycleManager"
creationTimestamp: null
name: installplans.operators.coreos.com
spec:
group: operators.coreos.com
names:
categories:
- olm
kind: InstallPlan
listKind: InstallPlanList
plural: installplans
shortNames:
- ip
singular: installplan
scope: Namespaced
versions:
- additionalPrinterColumns:
- description: The first CSV in the list of clusterServiceVersionNames
jsonPath: .spec.clusterServiceVersionNames[0]
name: CSV
type: string
- description: The approval mode
jsonPath: .spec.approval
name: Approval
type: string
- jsonPath: .spec.approved
name: Approved
type: boolean
name: v1alpha1
schema:
openAPIV3Schema:
description: InstallPlan defines the installation of a set of operators.
type: object
required:
- metadata
- spec
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: InstallPlanSpec defines a set of Application resources to be installed
type: object
required:
- approval
- approved
- clusterServiceVersionNames
properties:
approval:
description: Approval is the user approval policy for an InstallPlan. It must be one of "Automatic" or "Manual".
type: string
approved:
type: boolean
clusterServiceVersionNames:
type: array
items:
type: string
generation:
type: integer
source:
type: string
sourceNamespace:
type: string
status:
description: "InstallPlanStatus represents the information about the status of steps required to complete installation. \n Status may trail the actual state of a system."
type: object
required:
- catalogSources
- phase
properties:
attenuatedServiceAccountRef:
description: AttenuatedServiceAccountRef references the service account that is used to do scoped operator install.
type: object
properties:
apiVersion:
description: API version of the referent.
type: string
fieldPath:
description: 'If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.'
type: string
kind:
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
namespace:
description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
type: string
resourceVersion:
description: 'Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
type: string
uid:
description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
type: string
bundleLookups:
description: BundleLookups is the set of in-progress requests to pull and unpackage bundle content to the cluster.
type: array
items:
description: BundleLookup is a request to pull and unpackage the content of a bundle to the cluster.
type: object
required:
- catalogSourceRef
- identifier
- path
- replaces
properties:
catalogSourceRef:
description: CatalogSourceRef is a reference to the CatalogSource the bundle path was resolved from.
type: object
properties:
apiVersion:
description: API version of the referent.
type: string
fieldPath:
description: 'If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.'
type: string
kind:
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
namespace:
description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
type: string
resourceVersion:
description: 'Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
type: string
uid:
description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
type: string
conditions:
description: Conditions represents the overall state of a BundleLookup.
type: array
items:
type: object
required:
- status
- type
properties:
lastTransitionTime:
description: Last time the condition transitioned from one status to another.
type: string
format: date-time
lastUpdateTime:
description: Last time the condition was probed.
type: string
format: date-time
message:
description: A human readable message indicating details about the transition.
type: string
reason:
description: The reason for the condition's last transition.
type: string
status:
description: Status of the condition, one of True, False, Unknown.
type: string
type:
description: Type of condition.
type: string
identifier:
description: Identifier is the catalog-unique name of the operator (the name of the CSV for bundles that contain CSVs)
type: string
path:
description: Path refers to the location of a bundle to pull. It's typically an image reference.
type: string
properties:
description: The effective properties of the unpacked bundle.
type: string
replaces:
description: Replaces is the name of the bundle to replace with the one found at Path.
type: string
catalogSources:
type: array
items:
type: string
conditions:
type: array
items:
description: InstallPlanCondition represents the overall status of the execution of an InstallPlan.
type: object
properties:
lastTransitionTime:
type: string
format: date-time
lastUpdateTime:
type: string
format: date-time
message:
type: string
reason:
description: ConditionReason is a camelcased reason for the state transition.
type: string
status:
type: string
type:
description: InstallPlanConditionType describes the state of an InstallPlan at a certain point as a whole.
type: string
message:
description: Message is a human-readable message containing detailed information that may be important to understanding why the plan has its current status.
type: string
phase:
description: InstallPlanPhase is the current status of a InstallPlan as a whole.
type: string
plan:
type: array
items:
description: Step represents the status of an individual step in an InstallPlan.
type: object
required:
- resolving
- resource
- status
properties:
optional:
type: boolean
resolving:
type: string
resource:
description: StepResource represents the status of a resource to be tracked by an InstallPlan.
type: object
required:
- group
- kind
- name
- sourceName
- sourceNamespace
- version
properties:
group:
type: string
kind:
type: string
manifest:
type: string
name:
type: string
sourceName:
type: string
sourceNamespace:
type: string
version:
type: string
status:
description: StepStatus is the current status of a particular resource an in InstallPlan
type: string
startTime:
description: StartTime is the time when the controller began applying the resources listed in the plan to the cluster.
type: string
format: date-time
served: true
storage: true
subresources:
status: {}
30 changes: 30 additions & 0 deletions microshift-manifests/0000_50_olm_00-namespace.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
apiVersion: v1
kind: Namespace
metadata:
name: openshift-operator-lifecycle-manager
labels:
pod-security.kubernetes.io/enforce: restricted
pod-security.kubernetes.io/enforce-version: "v1.24"
openshift.io/scc: ""
openshift.io/cluster-monitoring: "true"
annotations:
openshift.io/node-selector: ""
workload.openshift.io/allowed: "management"
include.release.openshift.io/ibm-cloud-managed: "true"
include.release.openshift.io/self-managed-high-availability: "true"
capability.openshift.io/name: "OperatorLifecycleManager"
---
apiVersion: v1
kind: Namespace
metadata:
name: openshift-operators
labels:
pod-security.kubernetes.io/enforce: privileged
pod-security.kubernetes.io/enforce-version: "v1.24"
openshift.io/scc: ""
annotations:
openshift.io/node-selector: ""
workload.openshift.io/allowed: "management"
include.release.openshift.io/ibm-cloud-managed: "true"
include.release.openshift.io/self-managed-high-availability: "true"
capability.openshift.io/name: "OperatorLifecycleManager"
Loading