You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by as...@apache.org on 2020/01/22 15:59:08 UTC

[camel-k] 12/13: chore(it): Report generated resources in integration status

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 19727c73f21db4004d6935fb70387cea502a0248
Author: Antonin Stefanutti <an...@stefanutti.fr>
AuthorDate: Wed Jan 22 12:01:02 2020 +0100

    chore(it): Report generated resources in integration status
---
 pkg/apis/camel/v1/integration_types.go         | 33 +++++++++++++-------------
 pkg/apis/camel/v1/integration_types_support.go | 17 +++++++++----
 pkg/apis/camel/v1/zz_generated.deepcopy.go     |  5 ++++
 pkg/trait/trait_types.go                       |  2 +-
 4 files changed, 36 insertions(+), 21 deletions(-)

diff --git a/pkg/apis/camel/v1/integration_types.go b/pkg/apis/camel/v1/integration_types.go
index dcb2739..e62710c 100644
--- a/pkg/apis/camel/v1/integration_types.go
+++ b/pkg/apis/camel/v1/integration_types.go
@@ -40,22 +40,23 @@ type IntegrationSpec struct {
 
 // IntegrationStatus defines the observed state of Integration
 type IntegrationStatus struct {
-	Phase            IntegrationPhase       `json:"phase,omitempty"`
-	Digest           string                 `json:"digest,omitempty"`
-	Image            string                 `json:"image,omitempty"`
-	Dependencies     []string               `json:"dependencies,omitempty"`
-	Profile          TraitProfile           `json:"profile,omitempty"`
-	Kit              string                 `json:"kit,omitempty"`
-	Platform         string                 `json:"platform,omitempty"`
-	GeneratedSources []SourceSpec           `json:"generatedSources,omitempty"`
-	Failure          *Failure               `json:"failure,omitempty"`
-	CamelVersion     string                 `json:"camelVersion,omitempty"`
-	RuntimeVersion   string                 `json:"runtimeVersion,omitempty"`
-	RuntimeProvider  *RuntimeProvider       `json:"runtimeProvider,omitempty"`
-	Configuration    []ConfigurationSpec    `json:"configuration,omitempty"`
-	Conditions       []IntegrationCondition `json:"conditions,omitempty"`
-	Version          string                 `json:"version,omitempty"`
-	Replicas         *int32                 `json:"replicas,omitempty"`
+	Phase              IntegrationPhase       `json:"phase,omitempty"`
+	Digest             string                 `json:"digest,omitempty"`
+	Image              string                 `json:"image,omitempty"`
+	Dependencies       []string               `json:"dependencies,omitempty"`
+	Profile            TraitProfile           `json:"profile,omitempty"`
+	Kit                string                 `json:"kit,omitempty"`
+	Platform           string                 `json:"platform,omitempty"`
+	GeneratedSources   []SourceSpec           `json:"generatedSources,omitempty"`
+	GeneratedResources []ResourceSpec         `json:"generatedResources,omitempty"`
+	Failure            *Failure               `json:"failure,omitempty"`
+	CamelVersion       string                 `json:"camelVersion,omitempty"`
+	RuntimeVersion     string                 `json:"runtimeVersion,omitempty"`
+	RuntimeProvider    *RuntimeProvider       `json:"runtimeProvider,omitempty"`
+	Configuration      []ConfigurationSpec    `json:"configuration,omitempty"`
+	Conditions         []IntegrationCondition `json:"conditions,omitempty"`
+	Version            string                 `json:"version,omitempty"`
+	Replicas           *int32                 `json:"replicas,omitempty"`
 }
 
 // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
diff --git a/pkg/apis/camel/v1/integration_types_support.go b/pkg/apis/camel/v1/integration_types_support.go
index f723884..2b2e61f 100644
--- a/pkg/apis/camel/v1/integration_types_support.go
+++ b/pkg/apis/camel/v1/integration_types_support.go
@@ -50,11 +50,20 @@ func NewIntegrationList() IntegrationList {
 
 // Sources return a new slice containing all the sources associated to the integration
 func (in *Integration) Sources() []SourceSpec {
-	allSources := make([]SourceSpec, 0, len(in.Spec.Sources)+len(in.Status.GeneratedSources))
-	allSources = append(allSources, in.Spec.Sources...)
-	allSources = append(allSources, in.Status.GeneratedSources...)
+	sources := make([]SourceSpec, 0, len(in.Spec.Sources)+len(in.Status.GeneratedSources))
+	sources = append(sources, in.Spec.Sources...)
+	sources = append(sources, in.Status.GeneratedSources...)
 
-	return allSources
+	return sources
+}
+
+// Resources return a new slice containing all the resources associated to the integration
+func (in *Integration) Resources() []ResourceSpec {
+	resources := make([]ResourceSpec, 0, len(in.Spec.Resources)+len(in.Status.GeneratedResources))
+	resources = append(resources, in.Spec.Resources...)
+	resources = append(resources, in.Status.GeneratedResources...)
+
+	return resources
 }
 
 // AddSource --
diff --git a/pkg/apis/camel/v1/zz_generated.deepcopy.go b/pkg/apis/camel/v1/zz_generated.deepcopy.go
index 74c59dd..0427675 100644
--- a/pkg/apis/camel/v1/zz_generated.deepcopy.go
+++ b/pkg/apis/camel/v1/zz_generated.deepcopy.go
@@ -1057,6 +1057,11 @@ func (in *IntegrationStatus) DeepCopyInto(out *IntegrationStatus) {
 		*out = make([]SourceSpec, len(*in))
 		copy(*out, *in)
 	}
+	if in.GeneratedResources != nil {
+		in, out := &in.GeneratedResources, &out.GeneratedResources
+		*out = make([]ResourceSpec, len(*in))
+		copy(*out, *in)
+	}
 	if in.Failure != nil {
 		in, out := &in.Failure, &out.Failure
 		*out = new(Failure)
diff --git a/pkg/trait/trait_types.go b/pkg/trait/trait_types.go
index f3c8e4b..1664214 100644
--- a/pkg/trait/trait_types.go
+++ b/pkg/trait/trait_types.go
@@ -456,7 +456,7 @@ func (e *Environment) ConfigureVolumesAndMounts(vols *[]corev1.Volume, mnts *[]c
 		})
 	}
 
-	for i, r := range e.Integration.Spec.Resources {
+	for i, r := range e.Integration.Resources() {
 		if r.Type != v1.ResourceTypeData {
 			continue
 		}