This is an automated email from the ASF dual-hosted git repository.
wmedvedeo pushed a commit to branch main
in repository
https://gitbox.apache.org/repos/asf/incubator-kie-kogito-serverless-operator.git
The following commit(s) were added to refs/heads/main by this push:
new 7d9c3c98 kie-kogito-serverless-operator-536: Adjust cors configuration
for the dev profile deployments, and JS and DI deployments (#537)
7d9c3c98 is described below
commit 7d9c3c989f731de24df484b76cb0a26bbec68bdd
Author: Walter Medvedeo <[email protected]>
AuthorDate: Wed Oct 2 10:24:04 2024 +0200
kie-kogito-serverless-operator-536: Adjust cors configuration for the dev
profile deployments, and JS and DI deployments (#537)
---
config/manager/manager.yaml | 6 +-
.../discovery/discovery_openshift_test.go | 4 +-
internal/controller/discovery/openshift_catalog.go | 5 +-
internal/controller/platform/services/services.go | 19 +-
.../profiles/common/constants/workflows.go | 3 +
.../profiles/common/properties/managed.go | 33 +++
.../profiles/common/properties/managed_test.go | 298 ++++++++++++---------
operator.yaml | 6 +-
8 files changed, 215 insertions(+), 159 deletions(-)
diff --git a/config/manager/manager.yaml b/config/manager/manager.yaml
index eb34274f..ece1636e 100644
--- a/config/manager/manager.yaml
+++ b/config/manager/manager.yaml
@@ -56,9 +56,9 @@ spec:
resources:
limits:
cpu: 500m
- memory: 128Mi
+ memory: 500Mi
requests:
- cpu: 10m
- memory: 64Mi
+ cpu: 100m
+ memory: 200Mi
serviceAccountName: controller-manager
terminationGracePeriodSeconds: 10
diff --git a/internal/controller/discovery/discovery_openshift_test.go
b/internal/controller/discovery/discovery_openshift_test.go
index ac54da72..91fbf6cc 100644
--- a/internal/controller/discovery/discovery_openshift_test.go
+++ b/internal/controller/discovery/discovery_openshift_test.go
@@ -33,11 +33,11 @@ import (
)
func Test_QueryOpenShiftRoute(t *testing.T) {
- doTestQueryOpenShiftRoute(t, false, "http://openshiftroutehost1:80")
+ doTestQueryOpenShiftRoute(t, false, "http://openshiftroutehost1")
}
func Test_QueryOpenShiftRouteWithTLS(t *testing.T) {
- doTestQueryOpenShiftRoute(t, true, "https://openshiftroutehost1:443")
+ doTestQueryOpenShiftRoute(t, true, "https://openshiftroutehost1")
}
func doTestQueryOpenShiftRoute(t *testing.T, tls bool, expectedUri string) {
diff --git a/internal/controller/discovery/openshift_catalog.go
b/internal/controller/discovery/openshift_catalog.go
index 0dae25a3..b3222320 100644
--- a/internal/controller/discovery/openshift_catalog.go
+++ b/internal/controller/discovery/openshift_catalog.go
@@ -107,12 +107,11 @@ func (c openShiftServiceCatalog)
resolveOpenShiftRouteQuery(ctx context.Context,
return "", err
} else {
scheme := httpProtocol
- port := defaultHttpPort
if route.Spec.TLS != nil {
scheme = httpsProtocol
- port = defaultHttpsPort
}
- return buildURI(scheme, route.Spec.Host, port), nil
+ // the OpenShift routes are only opened at the http/https
standard ports.
+ return fmt.Sprintf("%s://%s", scheme, route.Spec.Host), nil
}
}
diff --git a/internal/controller/platform/services/services.go
b/internal/controller/platform/services/services.go
index 1aa03627..20673b75 100644
--- a/internal/controller/platform/services/services.go
+++ b/internal/controller/platform/services/services.go
@@ -197,14 +197,6 @@ func (d *DataIndexHandler) GetEnvironmentVariables()
[]corev1.EnvVar {
Name: "KOGITO_DATA_INDEX_QUARKUS_PROFILE",
Value: "http-events-support",
},
- {
- Name: "QUARKUS_HTTP_CORS",
- Value: "true",
- },
- {
- Name: "QUARKUS_HTTP_CORS_ORIGINS",
- Value: "/.*/",
- },
}
}
@@ -373,16 +365,7 @@ func (j *JobServiceHandler) GetLocalServiceBaseUrl()
string {
}
func (j *JobServiceHandler) GetEnvironmentVariables() []corev1.EnvVar {
- return []corev1.EnvVar{
- {
- Name: "QUARKUS_HTTP_CORS",
- Value: "true",
- },
- {
- Name: "QUARKUS_HTTP_CORS_ORIGINS",
- Value: "/.*/",
- },
- }
+ return []corev1.EnvVar{}
}
func (j *JobServiceHandler) GetPodResourceRequirements()
corev1.ResourceRequirements {
diff --git a/internal/controller/profiles/common/constants/workflows.go
b/internal/controller/profiles/common/constants/workflows.go
index c771414a..1cd52ac0 100644
--- a/internal/controller/profiles/common/constants/workflows.go
+++ b/internal/controller/profiles/common/constants/workflows.go
@@ -23,4 +23,7 @@ const (
KnativeHealthEnabled =
"org.kie.kogito.addons.knative.eventing.health-enabled"
KnativeInjectedEnvVar = "${K_SINK}"
TriggerFinalizer = "trigger-deletion"
+ QuarkusDevUICorsEnabled = "quarkus.dev-ui.cors.enabled"
+ QuarkusHttpCors = "quarkus.http.cors"
+ QuarkusHttpCorsOrigins = "quarkus.http.cors.origins"
)
diff --git a/internal/controller/profiles/common/properties/managed.go
b/internal/controller/profiles/common/properties/managed.go
index 59b28cf6..3a6bb0dc 100644
--- a/internal/controller/profiles/common/properties/managed.go
+++ b/internal/controller/profiles/common/properties/managed.go
@@ -23,6 +23,8 @@ import (
"context"
"fmt"
+
"github.com/apache/incubator-kie-kogito-serverless-operator/internal/controller/profiles"
+
"github.com/apache/incubator-kie-kogito-serverless-operator/internal/controller/profiles/common/persistence"
"github.com/apache/incubator-kie-kogito-serverless-operator/utils"
@@ -96,6 +98,10 @@ func (a *managedPropertyHandler) Build() string {
// produce the MicroProfileConfigServiceCatalog properties for
the service discovery property values if any.
discoveryProps.Merge(generateDiscoveryProperties(a.ctx,
a.catalog, userProps, a.workflow))
}
+ if profiles.IsDevProfile(a.workflow) && a.requireServiceDiscovery() {
+ // produce dev profile properties that must be calculated at
service discovery time.
+ setDevProfileDiscoveryProperties(a.ctx, a.catalog,
a.defaultManagedProperties, a.workflow)
+ }
userProps = utils.NewApplicationPropertiesBuilder().
WithInitialProperties(discoveryProps).
WithImmutableProperties(properties.MustLoadString(immutableApplicationProperties)).
@@ -148,6 +154,9 @@ func NewManagedPropertyHandler(workflow
*operatorapi.SonataFlow, platform *opera
platform: platform,
}
props := properties.NewProperties()
+ if profiles.IsDevProfile(workflow) {
+ setDevProfileProperties(props)
+ }
props.Set(constants.KogitoUserTasksEventsEnabled, "false")
if platform != nil {
p, err := resolvePlatformWorkflowProperties(platform)
@@ -183,6 +192,30 @@ func NewManagedPropertyHandler(workflow
*operatorapi.SonataFlow, platform *opera
return handler.withKogitoServiceUrl(), nil
}
+func setDevProfileProperties(props *properties.Properties) {
+ props.Set(constants.QuarkusDevUICorsEnabled, "false")
+}
+
+func setDevProfileDiscoveryProperties(ctx context.Context, catalog
discovery.ServiceCatalog, props *properties.Properties, workflow
*operatorapi.SonataFlow) {
+ if utils.IsOpenShift() {
+ // in OpenShift deployments the route is created before the
workflow, at this point it can be queried safely.
+ routeUrl, err := catalog.Query(ctx,
*discovery.NewResourceUriBuilder(discovery.OpenshiftScheme).
+ Kind("routes").
+ Group("route.openshift.io").
+ Version("v1").
+ Namespace(workflow.Namespace).
+ Name(workflow.Name).
+ Build(),
+ discovery.KubernetesDNSAddress)
+ if err != nil {
+ klog.V(log.E).ErrorS(err, "An error was produced while
getting workflow route url. ", "workflow", workflow.Name)
+ } else {
+ props.Set(constants.QuarkusHttpCors, "true")
+ props.Set(constants.QuarkusHttpCorsOrigins, routeUrl)
+ }
+ }
+}
+
// ApplicationManagedProperties immutable default application properties that
can be used with any workflow based on Quarkus.
// Alias for NewManagedPropertyHandler(workflow).Build()
func ApplicationManagedProperties(workflow *operatorapi.SonataFlow, platform
*operatorapi.SonataFlowPlatform) (string, error) {
diff --git a/internal/controller/profiles/common/properties/managed_test.go
b/internal/controller/profiles/common/properties/managed_test.go
index 714452d9..db4501c7 100644
--- a/internal/controller/profiles/common/properties/managed_test.go
+++ b/internal/controller/profiles/common/properties/managed_test.go
@@ -67,14 +67,8 @@ const (
)
var (
- enabled = true
- disabled = false
- jobServiceDevProperties *properties.Properties
- jobServiceProdProperties *properties.Properties
- dataIndexDevProperties *properties.Properties
- dataIndexProdProperties *properties.Properties
- dataIndexJobServiceDevProperties *properties.Properties
- dataIndexJobServiceProdProperties *properties.Properties
+ enabled = true
+ disabled = false
)
type mockCatalogService struct {
@@ -231,7 +225,7 @@ func
Test_appPropertyHandler_WithServicesWithUserOverrides(t *testing.T) {
assert.NoError(t, err)
generatedProps, propsErr :=
properties.LoadString(props.WithUserProperties(userProperties).Build())
assert.NoError(t, propsErr)
- assert.Equal(t, 11, len(generatedProps.Keys()))
+ assert.Equal(t, 12, len(generatedProps.Keys()))
assert.NotContains(t, "property1", generatedProps.Keys())
assert.NotContains(t, "property2", generatedProps.Keys())
@@ -344,7 +338,7 @@ var _ = Describe("Platform properties", func() {
Entry("has enabled field set to false and
workflow with production profile",
generateFlow(setProfileInFlow(metadata.PreviewProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&disabled),
setPlatformNamespace("default"), setPlatformName("foo")),
-
generateJobServiceWorkflowDevProperties()),
+
generateJobServiceWorkflowProductionWithJobServiceDisabled()),
Entry("has enabled field undefined and workflow
with dev profile",
generateFlow(setProfileInFlow(metadata.DevProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(nil),
setPlatformNamespace("default"), setPlatformName("foo")),
@@ -352,7 +346,7 @@ var _ = Describe("Platform properties", func() {
Entry("has enabled field undefined and workflow
with production profile",
generateFlow(setProfileInFlow(metadata.PreviewProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(nil),
setPlatformNamespace("default"), setPlatformName("foo")),
-
generateJobServiceWorkflowDevProperties()),
+
generateJobServiceWorkflowProductionWithJobServiceDisabled()),
Entry("has enabled field set to true and
workflow with dev profile",
generateFlow(setProfileInFlow(metadata.DevProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&enabled), setPlatformName("foo"),
setPlatformNamespace("default")),
@@ -368,11 +362,11 @@ var _ = Describe("Platform properties", func() {
Entry("has enabled field set to false and
workflow with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&disabled), setPlatformName("foo"),
setPlatformNamespace("default")),
-
generateJobServiceWorkflowDevProperties()),
+
generateJobServiceWorkflowProductionWithJobServiceDisabled()),
Entry("has enabled field undefined and workflow
with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(nil), setPlatformName("foo"),
setPlatformNamespace("default")),
-
generateJobServiceWorkflowDevProperties()),
+
generateJobServiceWorkflowProductionWithJobServiceDisabled()),
)
DescribeTable("only data index service when the spec",
@@ -392,7 +386,7 @@ var _ = Describe("Platform properties", func() {
Entry("has enabled field set to false and
workflow with production profile",
generateFlow(setProfileInFlow(metadata.PreviewProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setDataIndexEnabledValue(&disabled),
setPlatformNamespace("default"), setPlatformName("foo")),
-
generateDataIndexWorkflowDevProperties()),
+
generateDataIndexWorkflowProductionPropertiesWithDataIndexDisabled()),
Entry("has enabled field undefined and workflow
with dev profile",
generateFlow(setProfileInFlow(metadata.DevProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setDataIndexEnabledValue(nil),
setPlatformNamespace("default"), setPlatformName("foo")),
@@ -400,7 +394,7 @@ var _ = Describe("Platform properties", func() {
Entry("has enabled field undefined and workflow
with production profile",
generateFlow(setProfileInFlow(metadata.PreviewProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setDataIndexEnabledValue(nil),
setPlatformNamespace("default"), setPlatformName("foo")),
-
generateDataIndexWorkflowDevProperties()),
+
generateDataIndexWorkflowProductionPropertiesWithDataIndexDisabled()),
Entry("has enabled field set to true and
workflow with dev profile",
generateFlow(setProfileInFlow(metadata.DevProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setDataIndexEnabledValue(&enabled),
setPlatformNamespace("default"), setPlatformName("foo")),
@@ -412,7 +406,7 @@ var _ = Describe("Platform properties", func() {
Entry("has enabled field set to false and
workflow with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setDataIndexEnabledValue(&disabled),
setPlatformNamespace("default"), setPlatformName("foo")),
-
generateDataIndexWorkflowDevProperties()),
+
generateDataIndexWorkflowProductionPropertiesWithDataIndexDisabled()),
Entry("has enabled field set to true and
workflow with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setDataIndexEnabledValue(&enabled),
setPlatformNamespace("default"), setPlatformName("foo")),
@@ -420,7 +414,7 @@ var _ = Describe("Platform properties", func() {
Entry("has enabled field undefined and workflow
with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setDataIndexEnabledValue(nil),
setPlatformNamespace("default"), setPlatformName("foo")),
-
generateDataIndexWorkflowDevProperties()),
+
generateDataIndexWorkflowProductionPropertiesWithDataIndexDisabled()),
)
DescribeTable("both Data Index and Job Services are
available and", func(wf *operatorapi.SonataFlow, plfm
*operatorapi.SonataFlowPlatform, expectedProperties *properties.Properties) {
@@ -439,7 +433,7 @@ var _ = Describe("Platform properties", func() {
Entry("both are undefined and workflow in prod
profile",
generateFlow(setProfileInFlow(metadata.PreviewProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setPlatformNamespace("default"), setPlatformName("foo")),
-
generateDataIndexAndJobServiceWorkflowDevProperties()),
+
generateDataIndexAndJobServiceWorkflowProductionDataIndexAndJobsServiceDisabled()),
Entry("both have enabled field set to true and
workflow with dev profile",
generateFlow(setProfileInFlow(metadata.DevProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&enabled),
setDataIndexEnabledValue(&enabled), setPlatformName("foo"),
setPlatformNamespace("default")),
@@ -455,7 +449,7 @@ var _ = Describe("Platform properties", func() {
Entry("both have enabled field undefined and
workflow with production profile",
generateFlow(setProfileInFlow(metadata.PreviewProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(nil), setDataIndexEnabledValue(nil),
setPlatformName("foo"), setPlatformNamespace("default"),
setJobServiceJDBC("jdbc:postgresql://postgres:5432/sonataflow?currentSchema=myschema")),
-
generateDataIndexAndJobServiceWorkflowDevProperties()),
+
generateDataIndexAndJobServiceWorkflowProductionDataIndexAndJobsServiceDisabled()),
Entry("both have enabled field set to false and
workflow with dev profile",
generateFlow(setProfileInFlow(metadata.DevProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&disabled),
setDataIndexEnabledValue(&disabled), setPlatformName("foo"),
setPlatformNamespace("default"),
setJobServiceJDBC("jdbc:postgresql://postgres:5432/sonataflow?currentSchema=myschema")),
@@ -463,11 +457,11 @@ var _ = Describe("Platform properties", func() {
Entry("both have enabled field set to false and
workflow with production profile",
generateFlow(setProfileInFlow(metadata.PreviewProfile), setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&disabled),
setDataIndexEnabledValue(&disabled), setPlatformName("foo"),
setPlatformNamespace("default"),
setJobServiceJDBC("jdbc:postgresql://postgres:5432/sonataflow?currentSchema=myschema")),
-
generateDataIndexAndJobServiceWorkflowDevProperties()),
+
generateDataIndexAndJobServiceWorkflowProductionDataIndexAndJobsServiceDisabled()),
Entry("both have enabled field set to false and
workflow with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&disabled),
setDataIndexEnabledValue(&disabled), setPlatformName("foo"),
setPlatformNamespace("default"),
setJobServiceJDBC("jdbc:postgresql://postgres:5432/sonataflow?currentSchema=myschema")),
-
generateDataIndexAndJobServiceWorkflowDevProperties()),
+
generateDataIndexAndJobServiceWorkflowProductionDataIndexAndJobsServiceDisabled()),
Entry("both have enabled field set to true and
workflow with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(&enabled),
setDataIndexEnabledValue(&enabled), setPlatformName("foo"),
setPlatformNamespace("default"),
setJobServiceJDBC("jdbc:postgresql://postgres:5432/sonataflow?currentSchema=myschema")),
@@ -475,7 +469,7 @@ var _ = Describe("Platform properties", func() {
Entry("both have enabled field undefined and
workflow with no profile",
generateFlow(setWorkflowName("foo"),
setWorkflowNamespace("default")),
generatePlatform(setJobServiceEnabledValue(nil),
setDataIndexEnabledValue(&disabled), setPlatformName("foo"),
setPlatformNamespace("default"),
setJobServiceJDBC("jdbc:postgresql://postgres:5432/sonataflow?currentSchema=myschema")),
-
generateDataIndexAndJobServiceWorkflowDevProperties()),
+
generateDataIndexAndJobServiceWorkflowProductionDataIndexAndJobsServiceDisabled()),
)
})
})
@@ -483,129 +477,173 @@ var _ = Describe("Platform properties", func() {
})
func generateJobServiceWorkflowDevProperties() *properties.Properties {
- if jobServiceDevProperties == nil {
- jobServiceDevProperties = properties.NewProperties()
- jobServiceDevProperties.Set("kogito.service.url",
"http://foo.default")
- jobServiceDevProperties.Set("quarkus.http.host", "0.0.0.0")
- jobServiceDevProperties.Set("quarkus.http.port", "8080")
- jobServiceDevProperties.Set("quarkus.devservices.enabled",
"false")
-
jobServiceDevProperties.Set("quarkus.kogito.devservices.enabled", "false")
-
jobServiceDevProperties.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
-
jobServiceDevProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
-
jobServiceDevProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
-
jobServiceDevProperties.Set("kogito.events.processdefinitions.enabled", "false")
-
jobServiceDevProperties.Set("kogito.events.processinstances.enabled", "false")
- jobServiceDevProperties.Set("kogito.events.usertasks.enabled",
"false")
- jobServiceDevProperties.Sort()
- }
- return jobServiceDevProperties
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+ props.Set("kogito.events.processdefinitions.enabled", "false")
+ props.Set("kogito.events.processinstances.enabled", "false")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Set("quarkus.dev-ui.cors.enabled", "false")
+ props.Sort()
+ return props
+}
+
+func generateJobServiceWorkflowProductionWithJobServiceDisabled()
*properties.Properties {
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+ props.Set("kogito.events.processdefinitions.enabled", "false")
+ props.Set("kogito.events.processinstances.enabled", "false")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Sort()
+ return props
}
func generateJobServiceWorkflowProductionProperties() *properties.Properties {
- if jobServiceProdProperties == nil {
- jobServiceProdProperties = properties.NewProperties()
- jobServiceProdProperties.Set("kogito.service.url",
"http://foo.default")
- jobServiceProdProperties.Set("kogito.jobs-service.url",
"http://foo-jobs-service.default")
- jobServiceProdProperties.Set("quarkus.http.host", "0.0.0.0")
- jobServiceProdProperties.Set("quarkus.http.port", "8080")
-
jobServiceProdProperties.Set("quarkus.kogito.devservices.enabled", "false")
- jobServiceProdProperties.Set("quarkus.devservices.enabled",
"false")
-
jobServiceProdProperties.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
-
jobServiceProdProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
-
jobServiceProdProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://foo-jobs-service.default/v2/jobs/events")
-
jobServiceProdProperties.Set("kogito.events.processdefinitions.enabled",
"false")
-
jobServiceProdProperties.Set("kogito.events.processinstances.enabled", "false")
- jobServiceProdProperties.Set("kogito.events.usertasks.enabled",
"false")
- jobServiceProdProperties.Sort()
- }
- return jobServiceProdProperties
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("kogito.jobs-service.url", "http://foo-jobs-service.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://foo-jobs-service.default/v2/jobs/events")
+ props.Set("kogito.events.processdefinitions.enabled", "false")
+ props.Set("kogito.events.processinstances.enabled", "false")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Sort()
+ return props
}
func generateDataIndexWorkflowDevProperties() *properties.Properties {
- if dataIndexDevProperties == nil {
- dataIndexDevProperties = properties.NewProperties()
- dataIndexDevProperties.Set("kogito.service.url",
"http://foo.default")
- dataIndexDevProperties.Set("quarkus.http.host", "0.0.0.0")
- dataIndexDevProperties.Set("quarkus.http.port", "8080")
- dataIndexDevProperties.Set("quarkus.devservices.enabled",
"false")
-
dataIndexDevProperties.Set("quarkus.kogito.devservices.enabled", "false")
-
dataIndexDevProperties.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
-
dataIndexDevProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
-
dataIndexDevProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
-
dataIndexDevProperties.Set("kogito.events.processdefinitions.enabled", "false")
-
dataIndexDevProperties.Set("kogito.events.processinstances.enabled", "false")
- dataIndexDevProperties.Set("kogito.events.usertasks.enabled",
"false")
- dataIndexDevProperties.Sort()
- }
- return dataIndexDevProperties
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
+ props.Set("kogito.events.processdefinitions.enabled", "false")
+ props.Set("kogito.events.processinstances.enabled", "false")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Set("quarkus.dev-ui.cors.enabled", "false")
+ props.Sort()
+ return props
+}
+
+func generateDataIndexWorkflowProductionPropertiesWithDataIndexDisabled()
*properties.Properties {
+ props := properties.NewProperties()
+ props = properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
+ props.Set("kogito.events.processdefinitions.enabled", "false")
+ props.Set("kogito.events.processinstances.enabled", "false")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Sort()
+ return props
}
func generateDataIndexWorkflowProductionProperties() *properties.Properties {
- if dataIndexProdProperties == nil {
- dataIndexProdProperties = properties.NewProperties()
- dataIndexProdProperties.Set("kogito.service.url",
"http://foo.default")
- dataIndexProdProperties.Set("kogito.data-index.url",
"http://foo-data-index-service.default")
- dataIndexProdProperties.Set("kogito.data-index.health-enabled",
"true")
- dataIndexProdProperties.Set("quarkus.http.host", "0.0.0.0")
- dataIndexProdProperties.Set("quarkus.http.port", "8080")
- dataIndexProdProperties.Set("quarkus.devservices.enabled",
"false")
-
dataIndexProdProperties.Set("quarkus.kogito.devservices.enabled", "false")
-
dataIndexProdProperties.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
-
dataIndexProdProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
-
dataIndexProdProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
-
dataIndexProdProperties.Set("mp.messaging.outgoing.kogito-processdefinitions-events.url",
"http://foo-data-index-service.default/definitions")
-
dataIndexProdProperties.Set("mp.messaging.outgoing.kogito-processinstances-events.url",
"http://foo-data-index-service.default/processes")
-
dataIndexProdProperties.Set("kogito.events.processdefinitions.enabled", "true")
-
dataIndexProdProperties.Set("kogito.events.processdefinitions.errors.propagate",
"true")
-
dataIndexProdProperties.Set("kogito.events.processinstances.enabled", "true")
- dataIndexProdProperties.Set("kogito.events.usertasks.enabled",
"false")
- dataIndexProdProperties.Sort()
- }
- return dataIndexProdProperties
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("kogito.data-index.url",
"http://foo-data-index-service.default")
+ props.Set("kogito.data-index.health-enabled", "true")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
+ props.Set("mp.messaging.outgoing.kogito-processdefinitions-events.url",
"http://foo-data-index-service.default/definitions")
+ props.Set("mp.messaging.outgoing.kogito-processinstances-events.url",
"http://foo-data-index-service.default/processes")
+ props.Set("kogito.events.processdefinitions.enabled", "true")
+ props.Set("kogito.events.processdefinitions.errors.propagate", "true")
+ props.Set("kogito.events.processinstances.enabled", "true")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Sort()
+ return props
}
func generateDataIndexAndJobServiceWorkflowDevProperties()
*properties.Properties {
- if dataIndexJobServiceDevProperties == nil {
- dataIndexJobServiceDevProperties = properties.NewProperties()
- dataIndexJobServiceDevProperties.Set("kogito.service.url",
"http://foo.default")
- dataIndexJobServiceDevProperties.Set("quarkus.http.host",
"0.0.0.0")
- dataIndexJobServiceDevProperties.Set("quarkus.http.port",
"8080")
-
dataIndexJobServiceDevProperties.Set("quarkus.kogito.devservices.enabled",
"false")
-
dataIndexJobServiceDevProperties.Set("quarkus.devservices.enabled", "false")
-
dataIndexJobServiceDevProperties.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
-
dataIndexJobServiceDevProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
-
dataIndexJobServiceDevProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
-
dataIndexJobServiceDevProperties.Set("kogito.events.processdefinitions.enabled",
"false")
-
dataIndexJobServiceDevProperties.Set("kogito.events.processinstances.enabled",
"false")
-
dataIndexJobServiceDevProperties.Set("kogito.events.usertasks.enabled", "false")
- dataIndexJobServiceDevProperties.Sort()
- }
- return dataIndexJobServiceDevProperties
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
+ props.Set("kogito.events.processdefinitions.enabled", "false")
+ props.Set("kogito.events.processinstances.enabled", "false")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Set("quarkus.dev-ui.cors.enabled", "false")
+ props.Sort()
+ return props
+}
+
+func
generateDataIndexAndJobServiceWorkflowProductionDataIndexAndJobsServiceDisabled()
*properties.Properties {
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://localhost/v2/jobs/events")
+ props.Set("kogito.events.processdefinitions.enabled", "false")
+ props.Set("kogito.events.processinstances.enabled", "false")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Sort()
+ return props
}
func generateDataIndexAndJobServiceWorkflowProductionProperties()
*properties.Properties {
- if dataIndexJobServiceProdProperties == nil {
- dataIndexJobServiceProdProperties = properties.NewProperties()
- dataIndexJobServiceProdProperties.Set("kogito.service.url",
"http://foo.default")
- dataIndexJobServiceProdProperties.Set("kogito.data-index.url",
"http://foo-data-index-service.default")
-
dataIndexJobServiceProdProperties.Set("kogito.data-index.health-enabled",
"true")
-
dataIndexJobServiceProdProperties.Set("kogito.jobs-service.url",
"http://foo-jobs-service.default")
- dataIndexJobServiceProdProperties.Set("quarkus.http.host",
"0.0.0.0")
- dataIndexJobServiceProdProperties.Set("quarkus.http.port",
"8080")
-
dataIndexJobServiceProdProperties.Set("quarkus.kogito.devservices.enabled",
"false")
-
dataIndexJobServiceProdProperties.Set("quarkus.devservices.enabled", "false")
-
dataIndexJobServiceProdProperties.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
-
dataIndexJobServiceProdProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
-
dataIndexJobServiceProdProperties.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://foo-jobs-service.default/v2/jobs/events")
-
dataIndexJobServiceProdProperties.Set("kogito.events.processdefinitions.enabled",
"true")
-
dataIndexJobServiceProdProperties.Set("kogito.events.processdefinitions.errors.propagate",
"true")
-
dataIndexJobServiceProdProperties.Set("kogito.events.processinstances.enabled",
"true")
-
dataIndexJobServiceProdProperties.Set("kogito.events.usertasks.enabled",
"false")
-
dataIndexJobServiceProdProperties.Set("mp.messaging.outgoing.kogito-processdefinitions-events.url",
"http://foo-data-index-service.default/definitions")
-
dataIndexJobServiceProdProperties.Set("mp.messaging.outgoing.kogito-processinstances-events.url",
"http://foo-data-index-service.default/processes")
- dataIndexJobServiceProdProperties.Sort()
- }
- return dataIndexJobServiceProdProperties
+ props := properties.NewProperties()
+ props.Set("kogito.service.url", "http://foo.default")
+ props.Set("kogito.data-index.url",
"http://foo-data-index-service.default")
+ props.Set("kogito.data-index.health-enabled", "true")
+ props.Set("kogito.jobs-service.url", "http://foo-jobs-service.default")
+ props.Set("quarkus.http.host", "0.0.0.0")
+ props.Set("quarkus.http.port", "8080")
+ props.Set("quarkus.kogito.devservices.enabled", "false")
+ props.Set("quarkus.devservices.enabled", "false")
+ props.Set("org.kie.kogito.addons.knative.eventing.health-enabled",
"false")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.connector",
"quarkus-http")
+
props.Set("mp.messaging.outgoing.kogito-job-service-job-request-events.url",
"http://foo-jobs-service.default/v2/jobs/events")
+ props.Set("kogito.events.processdefinitions.enabled", "true")
+ props.Set("kogito.events.processdefinitions.errors.propagate", "true")
+ props.Set("kogito.events.processinstances.enabled", "true")
+ props.Set("kogito.events.usertasks.enabled", "false")
+ props.Set("mp.messaging.outgoing.kogito-processdefinitions-events.url",
"http://foo-data-index-service.default/definitions")
+ props.Set("mp.messaging.outgoing.kogito-processinstances-events.url",
"http://foo-data-index-service.default/processes")
+ props.Sort()
+ return props
+
}
type wfOptionFn func(wf *operatorapi.SonataFlow)
diff --git a/operator.yaml b/operator.yaml
index a3332d49..85d94910 100644
--- a/operator.yaml
+++ b/operator.yaml
@@ -28312,10 +28312,10 @@ spec:
resources:
limits:
cpu: 500m
- memory: 128Mi
+ memory: 500Mi
requests:
- cpu: 10m
- memory: 64Mi
+ cpu: 100m
+ memory: 200Mi
securityContext:
allowPrivilegeEscalation: false
capabilities:
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]