This is an automated email from the ASF dual-hosted git repository.
cdeppisch pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git
The following commit(s) were added to refs/heads/main by this push:
new 82df6091b fix(#3433): Platform trait create default option
82df6091b is described below
commit 82df6091b5e99abb5c564ce8e63c3074868990a7
Author: Christoph Deppisch <[email protected]>
AuthorDate: Tue Feb 20 15:29:16 2024 +0100
fix(#3433): Platform trait create default option
- Deprecate option to create default integration platform as part of the
trait
- Option to create default integration platform needs to be explicitly
enabled (e.g. with auto=true, create-default=true)
- Usually platform gets automatically created already as part of the
operator installation startup procedure
- Fix trait documentation
---
pkg/apis/camel/v1/trait/platform.go | 5 ++++-
pkg/trait/platform.go | 39 +++++++++++++++++--------------------
2 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/pkg/apis/camel/v1/trait/platform.go
b/pkg/apis/camel/v1/trait/platform.go
index 116de6ad0..3d31ab1d0 100644
--- a/pkg/apis/camel/v1/trait/platform.go
+++ b/pkg/apis/camel/v1/trait/platform.go
@@ -27,9 +27,12 @@ package trait
type PlatformTrait struct {
PlatformBaseTrait `property:",squash" json:",inline"`
// To create a default (empty) platform when the platform is missing.
+ // Deprecated: Platform is auto generated by the operator install
procedure - maintained for backward compatibility
CreateDefault *bool `property:"create-default"
json:"createDefault,omitempty"`
// Indicates if the platform should be created globally in the case of
global operator (default true).
+ // Deprecated: Platform is auto generated by the operator install
procedure - maintained for backward compatibility
Global *bool `property:"global" json:"global,omitempty"`
- // To automatically detect from the environment if a default platform
can be created (it will be created on OpenShift only).
+ // To automatically detect from the environment if a default platform
can be created (it will be created on OpenShift or when a registry address is
set).
+ // Deprecated: Platform is auto generated by the operator install
procedure - maintained for backward compatibility
Auto *bool `property:"auto" json:"auto,omitempty"`
}
diff --git a/pkg/trait/platform.go b/pkg/trait/platform.go
index ec3fb1e04..397310501 100644
--- a/pkg/trait/platform.go
+++ b/pkg/trait/platform.go
@@ -44,7 +44,8 @@ func newPlatformTrait() Trait {
}
func (t *platformTrait) Configure(e *Environment) (bool, *TraitCondition,
error) {
- if e.Integration == nil {
+ if e.Integration == nil || e.Integration.IsSynthetic() {
+ // Don't run this trait for a synthetic integration
return false, nil, nil
}
@@ -52,29 +53,25 @@ func (t *platformTrait) Configure(e *Environment) (bool,
*TraitCondition, error)
return false, nil, nil
}
- if !pointer.BoolDeref(t.Auto, false) {
- if e.Platform == nil {
- if t.CreateDefault == nil {
- // Calculate if the platform should be
automatically created when missing.
- if ocp, err := openshift.IsOpenShift(t.Client);
err != nil {
- return false, nil, err
- } else if ocp {
- t.CreateDefault = &ocp
- } else if addr, err :=
image.GetRegistryAddress(e.Ctx, t.Client); err != nil {
- return false, nil, err
- } else if addr != nil {
- t.CreateDefault = pointer.Bool(true)
- }
- }
- if t.Global == nil {
- globalOperator :=
platform.IsCurrentOperatorGlobal()
- t.Global = &globalOperator
- }
+ if t.CreateDefault == nil && pointer.BoolDeref(t.Auto, false) &&
e.Platform == nil {
+ // Calculate if the platform should be automatically created
when missing.
+ if ocp, err := openshift.IsOpenShift(t.Client); err != nil {
+ return false, nil, err
+ } else if ocp {
+ t.CreateDefault = pointer.Bool(true)
+ } else if addr, err := image.GetRegistryAddress(e.Ctx,
t.Client); err != nil {
+ return false, nil, err
+ } else if addr != nil {
+ t.CreateDefault = pointer.Bool(true)
}
}
- // Don't run this trait for a synthetic Integration
- return e.Integration == nil || !e.Integration.IsSynthetic(), nil, nil
+ if t.Global == nil {
+ globalOperator := platform.IsCurrentOperatorGlobal()
+ t.Global = &globalOperator
+ }
+
+ return true, nil, nil
}
func (t *platformTrait) Apply(e *Environment) error {