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 2022/01/12 13:53:57 UTC
[camel-k] 11/31: chore(api): Remove Maven repositories from the platform API
This is an automated email from the ASF dual-hosted git repository.
astefanutti pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit 4cc932c3e787bf3c1ffcf00c3db622d16e535cd7
Author: Antonin Stefanutti <an...@stefanutti.fr>
AuthorDate: Fri Jan 7 18:12:06 2022 +0100
chore(api): Remove Maven repositories from the platform API
---
config/crd/bases/camel.apache.org_builds.yaml | 19 +++--
.../crd/bases/camel.apache.org_camelcatalogs.yaml | 6 +-
.../camel.apache.org_integrationplatforms.yaml | 86 +---------------------
helm/camel-k/crds/crd-build.yaml | 19 +++--
helm/camel-k/crds/crd-camel-catalog.yaml | 6 +-
helm/camel-k/crds/crd-integration-platform.yaml | 86 +---------------------
pkg/apis/camel/v1/build_types.go | 9 ++-
pkg/apis/camel/v1/common_types.go | 30 --------
pkg/apis/camel/v1/maven_types.go | 39 +++++++++-
pkg/apis/camel/v1/zz_generated.deepcopy.go | 27 +++++--
pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go | 1 -
pkg/builder/project_test.go | 28 ++++---
12 files changed, 118 insertions(+), 238 deletions(-)
diff --git a/config/crd/bases/camel.apache.org_builds.yaml b/config/crd/bases/camel.apache.org_builds.yaml
index 88b548c..efac42c 100644
--- a/config/crd/bases/camel.apache.org_builds.yaml
+++ b/config/crd/bases/camel.apache.org_builds.yaml
@@ -134,7 +134,7 @@ spec:
type: string
type: array
maven:
- description: MavenSpec --
+ description: MavenBuildSpec --
properties:
caSecret:
description: The Secret name and key, containing the
@@ -164,9 +164,9 @@ spec:
- key
type: object
extension:
- description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -188,15 +188,17 @@ spec:
description: The Maven properties.
type: object
repositories:
+ description: The Maven repositories.
items:
- description: Repository --
+ description: Repository defines a Maven repository
properties:
id:
type: string
name:
type: string
releases:
- description: RepositoryPolicy --
+ description: RepositoryPolicy defines the policy
+ associated to a Maven repository
properties:
checksumPolicy:
type: string
@@ -208,7 +210,8 @@ spec:
- enabled
type: object
snapshots:
- description: RepositoryPolicy --
+ description: RepositoryPolicy defines the policy
+ associated to a Maven repository
properties:
checksumPolicy:
type: string
@@ -316,7 +319,7 @@ spec:
properties:
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -339,7 +342,7 @@ spec:
type: object
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
diff --git a/config/crd/bases/camel.apache.org_camelcatalogs.yaml b/config/crd/bases/camel.apache.org_camelcatalogs.yaml
index 4d33593..536db40 100644
--- a/config/crd/bases/camel.apache.org_camelcatalogs.yaml
+++ b/config/crd/bases/camel.apache.org_camelcatalogs.yaml
@@ -227,7 +227,7 @@ spec:
type: string
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -264,7 +264,7 @@ spec:
properties:
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -287,7 +287,7 @@ spec:
type: object
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
diff --git a/config/crd/bases/camel.apache.org_integrationplatforms.yaml b/config/crd/bases/camel.apache.org_integrationplatforms.yaml
index 4307527..1a0edd6 100644
--- a/config/crd/bases/camel.apache.org_integrationplatforms.yaml
+++ b/config/crd/bases/camel.apache.org_integrationplatforms.yaml
@@ -108,9 +108,9 @@ spec:
- key
type: object
extension:
- description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -131,45 +131,6 @@ spec:
type: string
description: The Maven properties.
type: object
- repositories:
- items:
- description: Repository --
- properties:
- id:
- type: string
- name:
- type: string
- releases:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- snapshots:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- url:
- type: string
- required:
- - id
- - url
- type: object
- type: array
settings:
description: A reference to the ConfigMap or Secret key that
contains the Maven settings.
@@ -349,9 +310,9 @@ spec:
- key
type: object
extension:
- description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -372,45 +333,6 @@ spec:
type: string
description: The Maven properties.
type: object
- repositories:
- items:
- description: Repository --
- properties:
- id:
- type: string
- name:
- type: string
- releases:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- snapshots:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- url:
- type: string
- required:
- - id
- - url
- type: object
- type: array
settings:
description: A reference to the ConfigMap or Secret key that
contains the Maven settings.
diff --git a/helm/camel-k/crds/crd-build.yaml b/helm/camel-k/crds/crd-build.yaml
index 88b548c..efac42c 100644
--- a/helm/camel-k/crds/crd-build.yaml
+++ b/helm/camel-k/crds/crd-build.yaml
@@ -134,7 +134,7 @@ spec:
type: string
type: array
maven:
- description: MavenSpec --
+ description: MavenBuildSpec --
properties:
caSecret:
description: The Secret name and key, containing the
@@ -164,9 +164,9 @@ spec:
- key
type: object
extension:
- description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -188,15 +188,17 @@ spec:
description: The Maven properties.
type: object
repositories:
+ description: The Maven repositories.
items:
- description: Repository --
+ description: Repository defines a Maven repository
properties:
id:
type: string
name:
type: string
releases:
- description: RepositoryPolicy --
+ description: RepositoryPolicy defines the policy
+ associated to a Maven repository
properties:
checksumPolicy:
type: string
@@ -208,7 +210,8 @@ spec:
- enabled
type: object
snapshots:
- description: RepositoryPolicy --
+ description: RepositoryPolicy defines the policy
+ associated to a Maven repository
properties:
checksumPolicy:
type: string
@@ -316,7 +319,7 @@ spec:
properties:
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -339,7 +342,7 @@ spec:
type: object
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
diff --git a/helm/camel-k/crds/crd-camel-catalog.yaml b/helm/camel-k/crds/crd-camel-catalog.yaml
index 4d33593..536db40 100644
--- a/helm/camel-k/crds/crd-camel-catalog.yaml
+++ b/helm/camel-k/crds/crd-camel-catalog.yaml
@@ -227,7 +227,7 @@ spec:
type: string
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -264,7 +264,7 @@ spec:
properties:
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -287,7 +287,7 @@ spec:
type: object
dependencies:
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
diff --git a/helm/camel-k/crds/crd-integration-platform.yaml b/helm/camel-k/crds/crd-integration-platform.yaml
index 4307527..1a0edd6 100644
--- a/helm/camel-k/crds/crd-integration-platform.yaml
+++ b/helm/camel-k/crds/crd-integration-platform.yaml
@@ -108,9 +108,9 @@ spec:
- key
type: object
extension:
- description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -131,45 +131,6 @@ spec:
type: string
description: The Maven properties.
type: object
- repositories:
- items:
- description: Repository --
- properties:
- id:
- type: string
- name:
- type: string
- releases:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- snapshots:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- url:
- type: string
- required:
- - id
- - url
- type: object
- type: array
settings:
description: A reference to the ConfigMap or Secret key that
contains the Maven settings.
@@ -349,9 +310,9 @@ spec:
- key
type: object
extension:
- description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
items:
- description: MavenArtifact --
+ description: MavenArtifact defines a Maven artifact
properties:
artifactId:
type: string
@@ -372,45 +333,6 @@ spec:
type: string
description: The Maven properties.
type: object
- repositories:
- items:
- description: Repository --
- properties:
- id:
- type: string
- name:
- type: string
- releases:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- snapshots:
- description: RepositoryPolicy --
- properties:
- checksumPolicy:
- type: string
- enabled:
- type: boolean
- updatePolicy:
- type: string
- required:
- - enabled
- type: object
- url:
- type: string
- required:
- - id
- - url
- type: object
- type: array
settings:
description: A reference to the ConfigMap or Secret key that
contains the Maven settings.
diff --git a/pkg/apis/camel/v1/build_types.go b/pkg/apis/camel/v1/build_types.go
index 7345702..3f40acc 100644
--- a/pkg/apis/camel/v1/build_types.go
+++ b/pkg/apis/camel/v1/build_types.go
@@ -62,10 +62,17 @@ type BuilderTask struct {
Resources []ResourceSpec `json:"resources,omitempty"`
Dependencies []string `json:"dependencies,omitempty"`
Steps []string `json:"steps,omitempty"`
- Maven MavenSpec `json:"maven,omitempty"`
+ Maven MavenBuildSpec `json:"maven,omitempty"`
BuildDir string `json:"buildDir,omitempty"`
}
+// MavenBuildSpec --
+type MavenBuildSpec struct {
+ MavenSpec `json:",inline"`
+ // The Maven repositories.
+ Repositories []Repository `json:"repositories,omitempty"`
+}
+
// PublishTask --
type PublishTask struct {
ContextDir string `json:"contextDir,omitempty"`
diff --git a/pkg/apis/camel/v1/common_types.go b/pkg/apis/camel/v1/common_types.go
index 45e9f91..5826a06 100644
--- a/pkg/apis/camel/v1/common_types.go
+++ b/pkg/apis/camel/v1/common_types.go
@@ -104,29 +104,6 @@ type Configurable interface {
Configurations() []ConfigurationSpec
}
-// MavenSpec --
-type MavenSpec struct {
- // The path of the local Maven repository.
- LocalRepository string `json:"localRepository,omitempty"`
- // The Maven properties.
- Properties map[string]string `json:"properties,omitempty"`
- // A reference to the ConfigMap or Secret key that contains
- // the Maven settings.
- Settings ValueSource `json:"settings,omitempty"`
- // The Secret name and key, containing the CA certificate(s) used to connect
- // to remote Maven repositories.
- // It can contain X.509 certificates, and PKCS#7 formatted certificate chains.
- // A JKS formatted keystore is automatically created to store the CA certificate(s),
- // and configured to be used as a trusted certificate(s) by the Maven commands.
- // Note that the root CA certificates are also imported into the created keystore.
- CASecret *corev1.SecretKeySelector `json:"caSecret,omitempty"`
- // Deprecated: use IntegrationPlatform.Spec.Build.Timeout instead
- Timeout *metav1.Duration `json:"timeout,omitempty"`
- Repositories []Repository `json:"repositories,omitempty"`
- // Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
- Extension []MavenArtifact `json:"extension,omitempty"`
-}
-
// RegistrySpec provides the configuration for the container registry
type RegistrySpec struct {
Insecure bool `json:"insecure,omitempty"`
@@ -144,13 +121,6 @@ type ValueSource struct {
SecretKeyRef *corev1.SecretKeySelector `json:"secretKeyRef,omitempty"`
}
-// MavenArtifact --
-type MavenArtifact struct {
- GroupID string `json:"groupId" yaml:"groupId" xml:"groupId"`
- ArtifactID string `json:"artifactId" yaml:"artifactId" xml:"artifactId"`
- Version string `json:"version,omitempty" yaml:"version,omitempty" xml:"version,omitempty"`
-}
-
// RuntimeSpec --
type RuntimeSpec struct {
Version string `json:"version" yaml:"version"`
diff --git a/pkg/apis/camel/v1/maven_types.go b/pkg/apis/camel/v1/maven_types.go
index 426f113..569336c 100644
--- a/pkg/apis/camel/v1/maven_types.go
+++ b/pkg/apis/camel/v1/maven_types.go
@@ -17,7 +17,35 @@ limitations under the License.
package v1
-// Repository --
+import (
+ corev1 "k8s.io/api/core/v1"
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+)
+
+// MavenSpec --
+type MavenSpec struct {
+ // The path of the local Maven repository.
+ LocalRepository string `json:"localRepository,omitempty"`
+ // The Maven properties.
+ Properties map[string]string `json:"properties,omitempty"`
+ // A reference to the ConfigMap or Secret key that contains
+ // the Maven settings.
+ Settings ValueSource `json:"settings,omitempty"`
+ // The Secret name and key, containing the CA certificate(s) used to connect
+ // to remote Maven repositories.
+ // It can contain X.509 certificates, and PKCS#7 formatted certificate chains.
+ // A JKS formatted keystore is automatically created to store the CA certificate(s),
+ // and configured to be used as a trusted certificate(s) by the Maven commands.
+ // Note that the root CA certificates are also imported into the created keystore.
+ CASecret *corev1.SecretKeySelector `json:"caSecret,omitempty"`
+ // Deprecated: use IntegrationPlatform.Spec.Build.Timeout instead
+ Timeout *metav1.Duration `json:"timeout,omitempty"`
+ // The Maven build extensions.
+ // See https://maven.apache.org/guides/mini/guide-using-extensions.html.
+ Extension []MavenArtifact `json:"extension,omitempty"`
+}
+
+// Repository defines a Maven repository
type Repository struct {
ID string `xml:"id" json:"id"`
Name string `xml:"name,omitempty" json:"name,omitempty"`
@@ -26,9 +54,16 @@ type Repository struct {
Releases RepositoryPolicy `xml:"releases,omitempty" json:"releases,omitempty"`
}
-// RepositoryPolicy --
+// RepositoryPolicy defines the policy associated to a Maven repository
type RepositoryPolicy struct {
Enabled bool `xml:"enabled" json:"enabled"`
UpdatePolicy string `xml:"updatePolicy,omitempty" json:"updatePolicy,omitempty"`
ChecksumPolicy string `xml:"checksumPolicy,omitempty" json:"checksumPolicy,omitempty"`
}
+
+// MavenArtifact defines a Maven artifact
+type MavenArtifact struct {
+ GroupID string `json:"groupId" yaml:"groupId" xml:"groupId"`
+ ArtifactID string `json:"artifactId" yaml:"artifactId" xml:"artifactId"`
+ Version string `json:"version,omitempty" yaml:"version,omitempty" xml:"version,omitempty"`
+}
diff --git a/pkg/apis/camel/v1/zz_generated.deepcopy.go b/pkg/apis/camel/v1/zz_generated.deepcopy.go
index f23a7da..b9f63d7 100644
--- a/pkg/apis/camel/v1/zz_generated.deepcopy.go
+++ b/pkg/apis/camel/v1/zz_generated.deepcopy.go
@@ -1,4 +1,3 @@
-//go:build !ignore_autogenerated
// +build !ignore_autogenerated
// Code generated by controller-gen. DO NOT EDIT.
@@ -1240,6 +1239,27 @@ func (in *MavenArtifact) DeepCopy() *MavenArtifact {
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *MavenBuildSpec) DeepCopyInto(out *MavenBuildSpec) {
+ *out = *in
+ in.MavenSpec.DeepCopyInto(&out.MavenSpec)
+ if in.Repositories != nil {
+ in, out := &in.Repositories, &out.Repositories
+ *out = make([]Repository, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MavenBuildSpec.
+func (in *MavenBuildSpec) DeepCopy() *MavenBuildSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(MavenBuildSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MavenSpec) DeepCopyInto(out *MavenSpec) {
*out = *in
if in.Properties != nil {
@@ -1260,11 +1280,6 @@ func (in *MavenSpec) DeepCopyInto(out *MavenSpec) {
*out = new(metav1.Duration)
**out = **in
}
- if in.Repositories != nil {
- in, out := &in.Repositories, &out.Repositories
- *out = make([]Repository, len(*in))
- copy(*out, *in)
- }
if in.Extension != nil {
in, out := &in.Extension, &out.Extension
*out = make([]MavenArtifact, len(*in))
diff --git a/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go
index be6e2c5..a5c99f3 100644
--- a/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go
+++ b/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go
@@ -1,4 +1,3 @@
-//go:build !ignore_autogenerated
// +build !ignore_autogenerated
// Code generated by controller-gen. DO NOT EDIT.
diff --git a/pkg/builder/project_test.go b/pkg/builder/project_test.go
index 9a1c7fa..5d8fdcf 100644
--- a/pkg/builder/project_test.go
+++ b/pkg/builder/project_test.go
@@ -58,13 +58,15 @@ func TestMavenSettingsFromConfigMap(t *testing.T) {
Namespace: "ns",
Build: v1.BuilderTask{
Runtime: catalog.Runtime,
- Maven: v1.MavenSpec{
- Settings: v1.ValueSource{
- ConfigMapKeyRef: &corev1.ConfigMapKeySelector{
- LocalObjectReference: corev1.LocalObjectReference{
- Name: "maven-settings",
+ Maven: v1.MavenBuildSpec{
+ MavenSpec: v1.MavenSpec{
+ Settings: v1.ValueSource{
+ ConfigMapKeyRef: &corev1.ConfigMapKeySelector{
+ LocalObjectReference: corev1.LocalObjectReference{
+ Name: "maven-settings",
+ },
+ Key: "settings.xml",
},
- Key: "settings.xml",
},
},
},
@@ -105,13 +107,15 @@ func TestMavenSettingsFromSecret(t *testing.T) {
Namespace: "ns",
Build: v1.BuilderTask{
Runtime: catalog.Runtime,
- Maven: v1.MavenSpec{
- Settings: v1.ValueSource{
- SecretKeyRef: &corev1.SecretKeySelector{
- LocalObjectReference: corev1.LocalObjectReference{
- Name: "maven-settings",
+ Maven: v1.MavenBuildSpec{
+ MavenSpec: v1.MavenSpec{
+ Settings: v1.ValueSource{
+ SecretKeyRef: &corev1.SecretKeySelector{
+ LocalObjectReference: corev1.LocalObjectReference{
+ Name: "maven-settings",
+ },
+ Key: "settings.xml",
},
- Key: "settings.xml",
},
},
},