Skip to content
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

incorrect strategy yaml key not flagged by linting #100

Open
brianwcook opened this issue Apr 11, 2019 · 0 comments
Open

incorrect strategy yaml key not flagged by linting #100

brianwcook opened this issue Apr 11, 2019 · 0 comments

Comments

@brianwcook
Copy link

according to @awgreene in the attached yaml,
spec.install.deployments.strategy should be
spec.install.strategy but this was not flagged by linting.

kind: ClusterServiceVersion
metadata:
  name: robin-operator.v5.1.0
  namespace: default
  annotations:
      capabilities: Full Lifecycle
      categories: "Database,BigData,Storage"
      certified: "true"
      createdAt: 2019-04-08T01:00:00Z
      containerImage: registry.connect.redhat.com/robinsys/robin-operator:5.1.0-
      description: Robin Storage operator enables advanced data management capacilities to Kubernetes apps like snapshot,clone,rollback,backup,restore,import,etc.
      support: https://robin.io/support/
      alm-examples: >-
          [{ "apiVersion": "robin.io/v1alpha1", "kind": "RobinCluster", "metadata": { "name": "robin", "namespace": "default" }, "spec": { "host_type": "physical", "image_robin": "registry.connect.redhat.com/robinsys/robin-storage:5.1.0", "k8s_provider": "openshift", "node_selector": "node-role.kubernetes.io/compute=true" } } ]
spec:
  displayName: Robin Storage
  keywords: 
  - storage
  - big data 
  - csi
  - databases
  - postgresql
  - cloudera
  provider:
    name: Robin.io
  maturity: stable
  version: 5.1.0
  links:
  - name: Robin
    url: 'https://robin.io'
  - name: User Guide
    url: 'https://get.robin.io/openshift/robin_ug'
  installModes:
  - type: OwnNamespace
    supported: true
  - type: SingleNamespace
    supported: false
  - type: MultiNamespace
    supported: false
  - type: AllNamespaces
    supported: false
  install:
    spec:
      deployments:
        name: robin-operator
        namespace: default
        spec:
          replicas: 1
          selector:
            matchLabels:
              name: robin-operator
          template:
            metadata:
              labels:
                name: robin-operator
                app.kubernetes.io/name: robin
            spec:
              serviceAccountName: robin-operator
              containers:
                - name: robin-operator
                  image: registry.connect.redhat.com/robinsys/robin-operator:5.1.0
                  command:
                  - robin-operator
                  env:
                    - name: WATCH_NAMESPACE
                      valueFrom:
                        fieldRef:
                          fieldPath: metadata.namespace
                    - name: POD_NAME
                      valueFrom:
                        fieldRef:
                          fieldPath: metadata.name
                    - name: OPERATOR_NAME
                      value: robin-operator
      clusterPermissions:
      - serviceAccountName: robin-operator
        rules:
        - apiGroups:
          - ""
          resources:
          - nodes
          verbs:
          - list
          - get
          - watch
        - apiGroups:
          - "rbac.authorization.k8s.io"
          resources:
          - clusterroles
          - clusterrolebindings
          verbs:
          - "*"
        - apiGroups:
          - "storage.k8s.io"
          resources:
          - storageclasses
          verbs:
          - "*"
      permissions:
      - serviceAccountName: robin-operator
        rules:
        - apiGroups:
          - ""
          resources:
          - pods
          - nodes
          - services
          - endpoints
          - persistentvolumeclaims
          - events
          - configmaps
          - secrets
          - serviceaccounts
          verbs:
          - "*"
        - apiGroups:
          - ""
          resources:
          - namespaces
          verbs:
          - get
        - apiGroups:
          - apps
          resources:
          - deployments
          - daemonsets
          - replicasets
          - statefulsets
          verbs:
          - "*"
        - apiGroups:
          - monitoring.coreos.com
          resources:
          - servicemonitors
          verbs:
          - get
          - create
        - apiGroups:
          - robin.io
          resources:
          - "*"
          verbs:
          - "*"
      strategy: deployment

  customresourcedefinitions:
    owned:
    - name: robinclusters.robin.io
      version: v1alpha1
      kind: RobinCluster
      group: robin.io
      displayName: Robin Cluster
      description: Robin storage deployment which enables storage and data management for all apps including helm charts.
      resources:
      - kind: RobinCluster
        name: ''
        version: v1alpha1
      - kind: ConfigMap
        name: ''
        version: v1
      - kind: Service
        name: ''
        version: v1
      - kind: ServiceAccount
        name: ''
        version: v1
      - kind: Node
        name: ''
        version: v1
      specDescriptors:
      - description: Type of the host
        displayName: Host Type
        path: host_type
        x-descriptors:
        - "urn:alm:descriptor:com.tectonic.ui:label"
      - description: Robin docker image
        displayName: Robin Image
        path: image_robin
        x-descriptors:
        - "urn:alm:descriptor:com.tectonic.ui:label"
      - description: Node selector to selet nodes on which Robin will deploy
        displayName: Node selector
        path: node_selector
        x-descriptors:
        - "urn:alm:descriptor:com.tectonic.ui:label"
      - description: Kubernetes provider eg. OpenShift
        displayName: Kubernetes Provider
        path: k8s_provider
        x-descriptors:
        - "urn:alm:descriptor:com.tectonic.ui:label"
      - description: Options
        displayName: Options
        path: options
        x-descriptors:
        - "urn:alm:descriptor:com.tectonic.ui:label"
      statusDescriptors:
      - description: IP of current Robin master
        displayName: Robin Master IP
        path: master_ip
        x-descriptors:
          - "urn:alm:descriptor:com.tectonic.ui:masterIP"
      - description: Command to Connect to Robin Master
        displayName: Connect Command
        path: connect_command
        x-descriptors:
          - "urn:alm:descriptor:com.tectonic.ui:connectCommand"
      - description: Command to Download Robin Master
        displayName: Get Robin Client
        path: get_robin_client
        x-descriptors:
          - "urn:alm:descriptor:com.tectonic.ui:getRobinClient"
      - description: The status of each of the Pods for the Robin cluster.
        displayName: Pod Status
        path: pod_status
        x-descriptors:
          - "urn:alm:descriptor:com.tectonic.ui:podStatuses"
      - description: The status of each of the Robin nodes in the cluster.
        displayName: Robin Node Status
        path: robin_node_status
        x-descriptors:
          - "urn:alm:descriptor:com.tectonic.ui:robinNodeStatuses"
      - description: Phase of the Robin cluster
        displayName: Phase
        path: phase
        x-descriptors:
          - "urn:alm:descriptor:com.tectonic.ui:phase"
  labels:
      app.kubernetes.io/name: robin
      operated-by: robin-operator
  selector:
    matchLabels:
      app.kubernetes.io/name: robina
  minKubeVersion: 1.11.0
  maintainers:
  - email: [email protected]
    name: Robin
  description: >
    Robin Storage operator makes it very easy for users to snapshot, clone, rollback,
    backup, restore, import of helm charts on OpenShift.
     ## Supported Features
     
    * **Snapshot** -
    * **Clone** -
    * **Rollback** -
    * **Backup** -
    * **Restore** -
    * **Import** -



    ## About Robin Storage
    ROBIN Storage for OpenShift is a purpose-built container-native storage solution that brings advanced data management capabilities to OpenShift. 
    It provides automated provisioning, point-in-time snapshots, backup and recovery, application cloning, QoS guarantee, and 
    multi-cloud migration for stateful applications on OpenShift.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant