This is an automated email from the ASF dual-hosted git repository.

astefanutti pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git

commit e3c9822e71e1052f65eb944fc9b276b9153228c8
Author: Antonin Stefanutti <[email protected]>
AuthorDate: Wed Jun 10 12:03:22 2020 +0200

    chore(api): Upgrade IntegrationKit CRD to apiextensions.k8s.io/v1
---
 deploy/crd-integration-kit.yaml           | 209 ++++++++++++++++++++++++++----
 deploy/resources.go                       |   4 +-
 pkg/apis/camel/v1/integrationkit_types.go |   9 +-
 3 files changed, 191 insertions(+), 31 deletions(-)

diff --git a/deploy/crd-integration-kit.yaml b/deploy/crd-integration-kit.yaml
index f8547d8..ee6e5b3 100644
--- a/deploy/crd-integration-kit.yaml
+++ b/deploy/crd-integration-kit.yaml
@@ -15,7 +15,7 @@
 # limitations under the License.
 # ---------------------------------------------------------------------------
 
-apiVersion: apiextensions.k8s.io/v1beta1
+apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   name: integrationkits.camel.apache.org
@@ -23,34 +23,189 @@ metadata:
     app: "camel-k"
 spec:
   group: camel.apache.org
-  scope: Namespaced
-  version: v1
-  versions:
-  - name: v1
-    served: true
-    storage: true
-  - name: v1alpha1
-    served: true
-    storage: false
-  subresources:
-    status: {}
   names:
     kind: IntegrationKit
     listKind: IntegrationKitList
     plural: integrationkits
-    singular: integrationkit
     shortNames:
-    - ik
-  additionalPrinterColumns:
-    - name: Phase
-      type: string
-      description: The IntegrationKit phase
-      JSONPath: .status.phase
-    - name: Type
-      type: string
-      description: The IntegrationKit type
-      JSONPath: .metadata.labels.camel\.apache\.org\/kit\.type
-    - name: Image
-      type: string
-      description: The IntegrationKit image
-      JSONPath: .status.image
+      - ik
+    singular: integrationkit
+  scope: Namespaced
+  versions:
+    - additionalPrinterColumns:
+        - description: The integration kit phase
+          jsonPath: .status.phase
+          name: Phase
+          type: string
+        - description: The integration kit type
+          jsonPath: .metadata.labels.camel\.apache\.org\/kit\.type
+          name: Type
+          type: string
+        - description: The integration kit image
+          jsonPath: .status.image
+          name: Image
+          type: string
+      name: v1
+      schema:
+        openAPIV3Schema:
+          description: IntegrationKit is the Schema for the integrationkits API
+          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: IntegrationKitSpec defines the desired state of 
IntegrationKit
+              properties:
+                configuration:
+                  items:
+                    description: ConfigurationSpec --
+                    properties:
+                      type:
+                        type: string
+                      value:
+                        type: string
+                    required:
+                      - type
+                      - value
+                    type: object
+                  type: array
+                dependencies:
+                  items:
+                    type: string
+                  type: array
+                image:
+                  type: string
+                profile:
+                  description: TraitProfile represents lists of traits that 
are enabled
+                    for the specific installation/integration
+                  type: string
+                repositories:
+                  items:
+                    type: string
+                  type: array
+                traits:
+                  additionalProperties:
+                    description: A TraitSpec contains the configuration of a 
trait
+                    properties:
+                      configuration:
+                        additionalProperties:
+                          type: string
+                        type: object
+                    type: object
+                  type: object
+              type: object
+            status:
+              description: IntegrationKitStatus defines the observed state of 
IntegrationKit
+              properties:
+                artifacts:
+                  items:
+                    description: Artifact --
+                    properties:
+                      checksum:
+                        type: string
+                      id:
+                        type: string
+                      location:
+                        type: string
+                      target:
+                        type: string
+                    required:
+                      - id
+                    type: object
+                  type: array
+                baseImage:
+                  type: string
+                conditions:
+                  items:
+                    description: IntegrationKitCondition describes the state 
of a resource
+                      at a certain point.
+                    properties:
+                      lastTransitionTime:
+                        description: Last time the condition transitioned from 
one status
+                          to another.
+                        format: date-time
+                        type: string
+                      lastUpdateTime:
+                        description: The last time this condition was updated.
+                        format: date-time
+                        type: string
+                      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 integration condition.
+                        type: string
+                    required:
+                      - status
+                      - type
+                    type: object
+                  type: array
+                digest:
+                  type: string
+                failure:
+                  description: Failure --
+                  properties:
+                    reason:
+                      type: string
+                    recovery:
+                      description: FailureRecovery --
+                      properties:
+                        attempt:
+                          type: integer
+                        attemptMax:
+                          type: integer
+                        attemptTime:
+                          format: date-time
+                          type: string
+                      required:
+                        - attempt
+                        - attemptMax
+                        - attemptTime
+                      type: object
+                    time:
+                      format: date-time
+                      type: string
+                  required:
+                    - reason
+                    - recovery
+                    - time
+                  type: object
+                image:
+                  type: string
+                phase:
+                  description: IntegrationKitPhase --
+                  type: string
+                platform:
+                  type: string
+                runtimeProvider:
+                  description: RuntimeProvider --
+                  type: string
+                runtimeVersion:
+                  type: string
+                version:
+                  type: string
+              type: object
+          type: object
+      served: true
+      storage: true
+      subresources:
+        status: {}
+    - name: v1alpha1
+        served: true
+        storage: false
diff --git a/deploy/resources.go b/deploy/resources.go
index 0b11a09..2293445 100644
--- a/deploy/resources.go
+++ b/deploy/resources.go
@@ -126,9 +126,9 @@ var assets = func() http.FileSystem {
                "/crd-integration-kit.yaml": &vfsgen۰CompressedFileInfo{
                        name:             "crd-integration-kit.yaml",
                        modTime:          time.Time{},
-                       uncompressedSize: 1844,
+                       uncompressedSize: 8068,
 
-                       compressedContent: 
[]byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x54\x4d\x6f\xe3\x36\x10\xbd\xeb\x57\x3c\x58\x97\x5d\x20\x91\xbb\x3d\x15\xea\xc9\xcd\x07\xaa\x26\xb0\x83\xc8\xdb\xc5\x02\xb9\x8c\xa5\xb1\x34\x30\x45\xb2\x24\x15\xc7\x28\xfa\xdf\x0b\x4a\x72\xec\x34\x0b\xf4\xb0\xab\x9b\x38\x33\x7c\x1f\xf3\xa4\x14\x97\x3f\xee\x49\x52\xdc\x4b\xc5\xda\x73\x8d\x60\x10\x5a\xc6\xc2\x52\xd5\x32\x4a\xb3\x0d\x7b\x72\x8c\x5b\xd3\xeb\x9a\x82\x18\x8d\x0f\x8b\xf2\xf6\x23\x7a\x5d\xb3\x83\xd1\x0c\x
 [...]
+                       compressedContent: 
[]byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x59\xcd\x6e\xe3\xc8\x11\xbe\xf3\x29\x0a\xd6\x61\x76\x01\x4b\xca\x24\x97\x40\x39\x29\x9a\x31\x22\xcc\x8c\x6d\x58\x9a\x5d\x2c\x30\x97\x12\x59\x22\x6b\x45\x76\x33\xdd\x4d\xc9\x4e\x90\x77\x0f\xaa\x49\x49\xa4\x4c\x52\xf2\xcf\xae\x6e\x66\x77\x55\x7d\xf5\xf7\x55\x91\x1e\xc0\xf0\xfd\x7e\xc1\x00\xbe\x72\x48\xca\x52\x04\x4e\x83\x4b\x08\xa6\x39\x86\x09\xc1\x42\xaf\xdd\x0e\x0d\xc1\x8d\x2e\x54\x84\x8e\xb5\x82\x9f\xa6\x8b\x9b\x
 [...]
                },
                "/crd-integration-platform.yaml": &vfsgen۰CompressedFileInfo{
                        name:             "crd-integration-platform.yaml",
diff --git a/pkg/apis/camel/v1/integrationkit_types.go 
b/pkg/apis/camel/v1/integrationkit_types.go
index eef5e2e..0434e0e 100644
--- a/pkg/apis/camel/v1/integrationkit_types.go
+++ b/pkg/apis/camel/v1/integrationkit_types.go
@@ -50,10 +50,15 @@ type IntegrationKitStatus struct {
 }
 
 // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
-// IntegrationKit is the Schema for the integrationkits API
 // +k8s:openapi-gen=true
 // +genclient
+// +kubebuilder:resource:path=integrationkits,scope=Namespaced,shortName=ik
+// +kubebuilder:subresource:status
+// 
+kubebuilder:printcolumn:name="Phase",type=string,JSONPath=`.status.phase`,description="The
 integration kit phase"
+// 
+kubebuilder:printcolumn:name="Type",type=string,JSONPath=`.metadata.labels.camel\.apache\.org\/kit\.type`,description="The
 integration kit type"
+// 
+kubebuilder:printcolumn:name="Image",type=string,JSONPath=`.status.image`,description="The
 integration kit image"
+
+// IntegrationKit is the Schema for the integrationkits API
 type IntegrationKit struct {
        metav1.TypeMeta   `json:",inline"`
        metav1.ObjectMeta `json:"metadata,omitempty"`

Reply via email to