From a3600b976a1108aa1e95f91606ab2f610e0afba4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciek=20Pr=C3=B3chniak?= Date: Mon, 19 Jul 2021 09:25:41 +0200 Subject: [PATCH 1/3] Renaming engineConfig -> deploymentConfig + minor fixes --- .github/workflows/pr.yml | 2 +- docs/Changelog.md | 5 ++++- docs/Configuration.md | 2 +- docs/MigrationGuide.md | 6 ++++-- .../sample/src/main/resources/defaultModelConfig.conf | 2 +- engine/flink/management/src/it/resources/application.conf | 2 +- .../touk/nussknacker/engine/management/DockerTest.scala | 2 +- .../management/FlinkStreamingProcessManagerProvider.scala | 2 +- .../touk/nussknacker/engine/ProcessManagerProvider.scala | 8 ++++---- nussknacker-dist/src/universal/conf/application.conf | 2 +- nussknacker-dist/src/universal/conf/dev-application.conf | 6 +++--- .../components/graph/node-modal/NodeDetailsContent.js | 5 +++-- ui/client/cypress/integration/process.ts | 1 + ui/client/package.json | 2 +- ui/server/src/test/resources/ui.conf | 2 +- .../pl/touk/nussknacker/ui/integration/BaseFlowTest.scala | 4 ++-- .../ProcessingTypeDataConfigurationReaderSpec.scala | 6 +++--- 17 files changed, 33 insertions(+), 26 deletions(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 219901e4cb7..275b380fada 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -267,7 +267,7 @@ jobs: CYPRESS_BASE_URL: http://localhost:8083 shell: bash run: | - docker run -d -p 8083:8080 -e CONFIG_FORCE_scenarioTypes_streaming_engineConfig_type=stub -e NUSSKNACKER_CONFIG_FILE=/opt/nussknacker/conf/dev-application.conf --name nussknacker_e2e_fe touk/nussknacker:$NUSSKNACKER_VERSION + docker run -d -p 8083:8080 -e CONFIG_FORCE_scenarioTypes_streaming_deploymentConfig_type=stub -e NUSSKNACKER_CONFIG_FILE=/opt/nussknacker/conf/dev-application.conf --name nussknacker_e2e_fe touk/nussknacker:$NUSSKNACKER_VERSION cd ui/client npx wait-on $CYPRESS_BASE_URL && npm run test:e2e docker kill nussknacker_e2e_fe diff --git a/docs/Changelog.md b/docs/Changelog.md index 6683e8f5742..0eb383ce5cb 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -58,7 +58,10 @@ Nussknacker versions * [#1357](https://github.com/TouK/nussknacker/pull/1357) Add run mode to nodes to be able to determine if we are inside e.g. test process run. Run mode is can be declared as a dependency in generic node transformations. Nodes created via `@MethodToInvoke` can declare `RunMode` as an implicit parameter. `RunMode` is also available in `FlinkCustomNodeContext`. -* [#1911](https://github.com/TouK/nussknacker/pull/1911) Rename `process` to `scenario`, `subprocess` to `fragment` in messages at backend and some test cases names +* Various naming changes: + * [#1917](https://github.com/TouK/nussknacker/pull/1917) configuration of `engineConfig` to `deploymentConfig` + * [#1911](https://github.com/TouK/nussknacker/pull/1911) Rename `process` to `scenario`, `subprocess` to `fragment` in messages at backend and some test cases names + 0.3.1 (not released yet) ------------------------ diff --git a/docs/Configuration.md b/docs/Configuration.md index 95c0cb64e93..6cb25cab8f6 100644 --- a/docs/Configuration.md +++ b/docs/Configuration.md @@ -31,7 +31,7 @@ attachmentsPath: "/tmp/touk/esp-frontend/attachments" scenarioTypes { streaming { - engineConfig { + deploymentConfig { type: "flinkStreaming" restUrl: "http://localhost:8081" parallelism: 4 diff --git a/docs/MigrationGuide.md b/docs/MigrationGuide.md index 9c36dad6dda..52a2958b693 100644 --- a/docs/MigrationGuide.md +++ b/docs/MigrationGuide.md @@ -182,6 +182,8 @@ that will be hidden before parameter's evaluation - Removed: `getClusterClient` from `FlinkMiniClusterHolder` interface, because of flink compatibility at Flink 1.9 - Renamed: `FlinkStreamingProcessRegistrar` to `FlinkProcessManager` * [#1303](https://github.com/TouK/nussknacker/pull/1303) TypedObjectTypingResult has a new field: additionalInfo +* Various naming changes: + * [#1917](https://github.com/TouK/nussknacker/pull/1917) configuration of `engineConfig` to `deploymentConfig` ## In version 0.2.0 @@ -336,7 +338,7 @@ Be aware that we are using avro 1.9.2 instead of default Flink's 1.8.2 (for java ``` processTypes { "type e.g. streaming" { - engineConfig { + deploymentConfig { type: "flinkStreaming" PUT HERE PROPERTIES OF flinkConfig FROM OLD CONFIG } @@ -378,7 +380,7 @@ Be aware that we are using avro 1.9.2 instead of default Flink's 1.8.2 (for java * [#588](https://github.com/TouK/nussknacker/pull/588) [#882](https://github.com/TouK/nussknacker/pull/882) `FlinkSource` API changed, current implementation is now `BasicFlinkSource` * [#839](https://github.com/TouK/nussknacker/pull/839) [#882](https://github.com/TouK/nussknacker/pull/882) `FlinkSink` API changed, current implementation is now `BasicFlinkSink` * [#841](https://github.com/TouK/nussknacker/pull/841) `ProcessConfigCreator` API changed; note that currently all process objects are invoked with `ProcessObjectDependencies` as a parameter. The APIs of `KafkaSinkFactory`, `KafkaSourceFactory`, and all their implementations were changed. `Config` is available as property of `ProcessObjectDependencies` instance. -* [#863](https://github.com/TouK/nussknacker/pull/863) `restUrl` in `engineConfig` need to be preceded with protocol. Host with port only is not allowed anymore. +* [#863](https://github.com/TouK/nussknacker/pull/863) `restUrl` in `deploymentConfig` need to be preceded with protocol. Host with port only is not allowed anymore. * Rename `grafanaSettings` to `metricsSettings` in configuration. ## In version 0.0.12 diff --git a/engine/flink/management/sample/src/main/resources/defaultModelConfig.conf b/engine/flink/management/sample/src/main/resources/defaultModelConfig.conf index c2ac20257e9..8e3f35c8fde 100644 --- a/engine/flink/management/sample/src/main/resources/defaultModelConfig.conf +++ b/engine/flink/management/sample/src/main/resources/defaultModelConfig.conf @@ -83,7 +83,7 @@ additionalPropertiesConfig { ] } numberOfThreads: { - label: "Number of theards" + label: "Number of threads" editor: { type: "FixedValuesParameterEditor", possibleValues: [ diff --git a/engine/flink/management/src/it/resources/application.conf b/engine/flink/management/src/it/resources/application.conf index 0cda4b7b556..ebe5e73b954 100644 --- a/engine/flink/management/src/it/resources/application.conf +++ b/engine/flink/management/src/it/resources/application.conf @@ -1,5 +1,5 @@ -engineConfig { +deploymentConfig { type: "test" restUrl: "http://localhost:8081" queryableStateProxyUrl: "localhost:9069" diff --git a/engine/flink/management/src/it/scala/pl/touk/nussknacker/engine/management/DockerTest.scala b/engine/flink/management/src/it/scala/pl/touk/nussknacker/engine/management/DockerTest.scala index e40d14a35df..6b47a399cf5 100644 --- a/engine/flink/management/src/it/scala/pl/touk/nussknacker/engine/management/DockerTest.scala +++ b/engine/flink/management/src/it/scala/pl/touk/nussknacker/engine/management/DockerTest.scala @@ -99,7 +99,7 @@ trait DockerTest extends DockerTestKit with ExtremelyPatientScalaFutures with La } def config: Config = ConfigFactory.load() - .withValue("engineConfig.restUrl", fromAnyRef(s"http://${jobManagerContainer.getIpAddresses().futureValue.head}:$FlinkJobManagerRestPort")) + .withValue("deploymentConfig.restUrl", fromAnyRef(s"http://${jobManagerContainer.getIpAddresses().futureValue.head}:$FlinkJobManagerRestPort")) .withValue("modelConfig.classPath", ConfigValueFactory.fromIterable(Collections.singletonList(classPath))) .withFallback(additionalConfig) diff --git a/engine/flink/management/src/main/scala/pl/touk/nussknacker/engine/management/FlinkStreamingProcessManagerProvider.scala b/engine/flink/management/src/main/scala/pl/touk/nussknacker/engine/management/FlinkStreamingProcessManagerProvider.scala index bac3b611adc..f71c23b2541 100644 --- a/engine/flink/management/src/main/scala/pl/touk/nussknacker/engine/management/FlinkStreamingProcessManagerProvider.scala +++ b/engine/flink/management/src/main/scala/pl/touk/nussknacker/engine/management/FlinkStreamingProcessManagerProvider.scala @@ -43,6 +43,6 @@ object FlinkStreamingProcessManagerProvider { def defaultProcessManager(config: Config): ProcessManager = { val typeConfig = ProcessingTypeConfig.read(config) - new FlinkStreamingProcessManagerProvider().createProcessManager(typeConfig.toModelData, typeConfig.engineConfig) + new FlinkStreamingProcessManagerProvider().createProcessManager(typeConfig.toModelData, typeConfig.deploymentConfig) } } \ No newline at end of file diff --git a/engine/interpreter/src/main/scala/pl/touk/nussknacker/engine/ProcessManagerProvider.scala b/engine/interpreter/src/main/scala/pl/touk/nussknacker/engine/ProcessManagerProvider.scala index aefb97dc1a0..d5d50aea7b9 100644 --- a/engine/interpreter/src/main/scala/pl/touk/nussknacker/engine/ProcessManagerProvider.scala +++ b/engine/interpreter/src/main/scala/pl/touk/nussknacker/engine/ProcessManagerProvider.scala @@ -42,16 +42,16 @@ object ProcessingTypeConfig { def read(config: Config): ProcessingTypeConfig = ProcessingTypeConfig( - config.getString("engineConfig.type"), + config.getString("deploymentConfig.type"), config.as[List[URL]]("modelConfig.classPath"), - config.getConfig("engineConfig"), + config.getConfig("deploymentConfig"), config.getConfig("modelConfig") ) } case class ProcessingTypeConfig(engineType: String, classPath: List[URL], - engineConfig: Config, + deploymentConfig: Config, modelConfig: Config) { def toModelData: ModelData = ModelData(modelConfig, ModelClassLoader(classPath)) @@ -75,7 +75,7 @@ object ProcessingTypeData { def createProcessingTypeData(processManagerProvider: ProcessManagerProvider, processTypeConfig: ProcessingTypeConfig): ProcessingTypeData = { val modelData = processTypeConfig.toModelData - val managerConfig = processTypeConfig.engineConfig + val managerConfig = processTypeConfig.deploymentConfig createProcessingTypeData(processManagerProvider, modelData, managerConfig) } } diff --git a/nussknacker-dist/src/universal/conf/application.conf b/nussknacker-dist/src/universal/conf/application.conf index a3cb5e587af..4a2c7d44d6c 100644 --- a/nussknacker-dist/src/universal/conf/application.conf +++ b/nussknacker-dist/src/universal/conf/application.conf @@ -10,7 +10,7 @@ categoriesConfig: { scenarioTypes { "streaming": { - engineConfig: ${flinkEngineConfig} + deploymentConfig: ${flinkEngineConfig} modelConfig: { classPath: ["model/genericModel.jar"] classPath: ${?MODEL_CLASS_PATH} diff --git a/nussknacker-dist/src/universal/conf/dev-application.conf b/nussknacker-dist/src/universal/conf/dev-application.conf index bd93c791987..2fe18d7b233 100644 --- a/nussknacker-dist/src/universal/conf/dev-application.conf +++ b/nussknacker-dist/src/universal/conf/dev-application.conf @@ -32,7 +32,7 @@ flinkEngineConfig { scenarioTypes { "streaming": { - engineConfig: ${flinkEngineConfig} + deploymentConfig: ${flinkEngineConfig} modelConfig: { classPath: [ ${managementModelDir}"/managementSample.jar" ] rocksDB: { @@ -41,7 +41,7 @@ scenarioTypes { } } "streaming-generic": { - engineConfig: ${flinkEngineConfig} + deploymentConfig: ${flinkEngineConfig} modelConfig: { classPath: [ ${genericModelDir}"/genericModel.jar" ] rocksDB: { @@ -50,7 +50,7 @@ scenarioTypes { } } "request-response": { - engineConfig { + deploymentConfig { type: "requestResponseStandalone" managementUrl: ${standaloneManagmentUrl} } diff --git a/ui/client/components/graph/node-modal/NodeDetailsContent.js b/ui/client/components/graph/node-modal/NodeDetailsContent.js index 1eb4c525519..1923be774bd 100644 --- a/ui/client/components/graph/node-modal/NodeDetailsContent.js +++ b/ui/client/components/graph/node-modal/NodeDetailsContent.js @@ -1,5 +1,5 @@ import classNames from "classnames" -import _ from "lodash" +import _, {sortBy} from "lodash" import React from "react" import {connect} from "react-redux" import {v4 as uuid4} from "uuid" @@ -435,7 +435,8 @@ export class NodeDetailsContent extends React.Component { null, "query-path", )] - const additionalFields = Object.entries(this.props.additionalPropertiesConfig).map( + //we sort by name, to have predictable order of properties (should be replaced by defining order in configuration) + const additionalFields = sortBy(Object.entries(this.props.additionalPropertiesConfig), e => e[0]).map( ([propName, propConfig]) => ( { cy.contains(/^properties/i).should("be.enabled").click() cy.get("[data-testid=node-modal]").should("be.visible").find("input").within(inputs => { cy.wrap(inputs).first().click().type("-renamed") + //this is idx of "Max events", which should be int cy.wrap(inputs).eq(6).click().type("wrong data") }) cy.contains(/^apply/i).should("be.enabled").click() diff --git a/ui/client/package.json b/ui/client/package.json index 094af7fb671..ca4cc9ff5e7 100644 --- a/ui/client/package.json +++ b/ui/client/package.json @@ -18,7 +18,7 @@ "start:backend-docker": "npm run clean-translations && start-server-and-test start-backend:docker http-get://localhost:8080/static/main.html start", "start:backend-staging": "npm run clean-translations && BACKEND_DOMAIN=https://staging.nussknacker.io webpack serve", "start:backend-demo": "npm run clean-translations && BACKEND_DOMAIN=https://demo.nussknacker.io webpack serve", - "start-backend:docker": "docker run -i -p 8080:8080 -e CONFIG_FORCE_scenarioTypes_streaming_engineConfig_type=stub -e NUSSKNACKER_CONFIG_FILE=/opt/nussknacker/conf/dev-application.conf --pull always -P touk/nussknacker:staging-latest", + "start-backend:docker": "docker run -i -p 8080:8080 -e CONFIG_FORCE_scenarioTypes_streaming_deploymentConfig_type=stub -e NUSSKNACKER_CONFIG_FILE=/opt/nussknacker/conf/dev-application.conf --pull always -P touk/nussknacker:staging-latest", "pretest": "npm run check", "test:unit": "jest", "test:e2e": "cypress run", diff --git a/ui/server/src/test/resources/ui.conf b/ui/server/src/test/resources/ui.conf index 6dcd2d337f8..93f2a695516 100644 --- a/ui/server/src/test/resources/ui.conf +++ b/ui/server/src/test/resources/ui.conf @@ -39,7 +39,7 @@ customProcesses { scenarioTypes { "streaming" { - engineConfig { + deploymentConfig { restUrl: "http://localhost:8081" queryableStateProxyUrl: "localhost:9123" jobManagerTimeout: 1m diff --git a/ui/server/src/test/scala/pl/touk/nussknacker/ui/integration/BaseFlowTest.scala b/ui/server/src/test/scala/pl/touk/nussknacker/ui/integration/BaseFlowTest.scala index f45b450a975..b5aaa13147e 100644 --- a/ui/server/src/test/scala/pl/touk/nussknacker/ui/integration/BaseFlowTest.scala +++ b/ui/server/src/test/scala/pl/touk/nussknacker/ui/integration/BaseFlowTest.scala @@ -167,7 +167,7 @@ class BaseFlowTest extends FunSuite with ScalatestRouteTest with FailFastCirceSu Some("1"), FixedValuesParameterEditor(fixedPossibleValues), List(FixedValuesValidator(fixedPossibleValues)), - Some("Number of theards") + Some("Number of threads") ) ) @@ -186,7 +186,7 @@ class BaseFlowTest extends FunSuite with ScalatestRouteTest with FailFastCirceSu entity should include("Configured property environment (Environment) is missing") entity should include("This field value has to be an integer number") entity should include("Unknown property unknown") - entity should include("Property numberOfThreads (Number of theards) has invalid value") + entity should include("Property numberOfThreads (Number of threads) has invalid value") } } diff --git a/ui/server/src/test/scala/pl/touk/nussknacker/ui/process/processingtypedata/ProcessingTypeDataConfigurationReaderSpec.scala b/ui/server/src/test/scala/pl/touk/nussknacker/ui/process/processingtypedata/ProcessingTypeDataConfigurationReaderSpec.scala index 70f32421019..7b9c1009889 100644 --- a/ui/server/src/test/scala/pl/touk/nussknacker/ui/process/processingtypedata/ProcessingTypeDataConfigurationReaderSpec.scala +++ b/ui/server/src/test/scala/pl/touk/nussknacker/ui/process/processingtypedata/ProcessingTypeDataConfigurationReaderSpec.scala @@ -11,7 +11,7 @@ class ProcessingTypeDataConfigurationReaderSpec extends FunSuite { """ |processTypes { | "streaming" { - | engineConfig { + | deploymentConfig { | jobManagerTimeout: 1m | restUrl: "http://localhost:8081" | queryableStateProxyUrlMissing: "localhost:9123" @@ -53,7 +53,7 @@ class ProcessingTypeDataConfigurationReaderSpec extends FunSuite { """ |scenarioTypes { | "streaming" { - | engineConfig { + | deploymentConfig { | restUrl: "http://localhost:8081" | typeMissing: "flinkStreaming" | } @@ -70,7 +70,7 @@ class ProcessingTypeDataConfigurationReaderSpec extends FunSuite { intercept[typesafe.config.ConfigException] { ProcessingTypeDataConfigurationReader.readProcessingTypeConfig(config) - }.getMessage should include("No configuration setting found for key 'engineConfig.type'") + }.getMessage should include("No configuration setting found for key 'deploymentConfig.type'") } test("should throw when no configuration is provided") { From 69884340479bc61d14d6d06581e649db891c22a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciek=20Pr=C3=B3chniak?= Date: Mon, 19 Jul 2021 16:54:15 +0200 Subject: [PATCH 2/3] review --- nussknacker-dist/src/universal/conf/application.conf | 4 ++-- nussknacker-dist/src/universal/conf/dev-application.conf | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/nussknacker-dist/src/universal/conf/application.conf b/nussknacker-dist/src/universal/conf/application.conf index 4a2c7d44d6c..a3deac48e63 100644 --- a/nussknacker-dist/src/universal/conf/application.conf +++ b/nussknacker-dist/src/universal/conf/application.conf @@ -10,7 +10,7 @@ categoriesConfig: { scenarioTypes { "streaming": { - deploymentConfig: ${flinkEngineConfig} + deploymentConfig: ${flinkDeploymentConfig} modelConfig: { classPath: ["model/genericModel.jar"] classPath: ${?MODEL_CLASS_PATH} @@ -22,7 +22,7 @@ scenarioTypes { } } -flinkEngineConfig { +flinkDeploymentConfig { jobManagerTimeout: 1m type: "flinkStreaming" restUrl: "http://jobmanager:8081" diff --git a/nussknacker-dist/src/universal/conf/dev-application.conf b/nussknacker-dist/src/universal/conf/dev-application.conf index 2fe18d7b233..597f424636e 100644 --- a/nussknacker-dist/src/universal/conf/dev-application.conf +++ b/nussknacker-dist/src/universal/conf/dev-application.conf @@ -22,7 +22,7 @@ standaloneModelDir: ${?STANDALONE_MODEL_DIR} standaloneManagmentUrl: "http://localhost:8070" standaloneManagmentUrl: ${?STANDALONE_MANAGMENT_URL} -flinkEngineConfig { +flinkDeploymentConfig { type: "flinkStreaming" restUrl: "http://jobmanager:8081" restUrl: ${?FLINK_REST_URL} @@ -32,7 +32,7 @@ flinkEngineConfig { scenarioTypes { "streaming": { - deploymentConfig: ${flinkEngineConfig} + deploymentConfig: ${flinkDeploymentConfig} modelConfig: { classPath: [ ${managementModelDir}"/managementSample.jar" ] rocksDB: { @@ -41,7 +41,7 @@ scenarioTypes { } } "streaming-generic": { - deploymentConfig: ${flinkEngineConfig} + deploymentConfig: ${flinkDeploymentConfig} modelConfig: { classPath: [ ${genericModelDir}"/genericModel.jar" ] rocksDB: { From f8ff4fe73b427550448e02badb6a28ed4884d50e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciek=20Pr=C3=B3chniak?= Date: Mon, 19 Jul 2021 18:01:44 +0200 Subject: [PATCH 3/3] test fix --- ... properites from tips panel [Linux] #0.png | Bin 40056 -> 40158 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/ui/client/cypress/integration/__image_snapshots__/Process initially clean should open properites from tips panel [Linux] #0.png b/ui/client/cypress/integration/__image_snapshots__/Process initially clean should open properites from tips panel [Linux] #0.png index 99ff36f228fcff507ba1841b8af64e71a8d83da5..2ab3f663e569d6a1bff20d565d8703efe84a1b78 100644 GIT binary patch literal 40158 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