Skip to content

Commit

Permalink
Update demo (#1983)
Browse files Browse the repository at this point in the history
* Bump @babel/plugin-proposal-function-bind in /ui/client

Bumps [@babel/plugin-proposal-function-bind](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-proposal-function-bind) from 7.12.13 to 7.14.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.14.5/packages/babel-plugin-proposal-function-bind)

---
updated-dependencies:
- dependency-name: "@babel/plugin-proposal-function-bind"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump @cypress/code-coverage from 3.9.5 to 3.9.7 in /ui/client

Bumps [@cypress/code-coverage](https://github.com/cypress-io/code-coverage) from 3.9.5 to 3.9.7.
- [Release notes](https://github.com/cypress-io/code-coverage/releases)
- [Commits](cypress-io/code-coverage@v3.9.5...v3.9.7)

---
updated-dependencies:
- dependency-name: "@cypress/code-coverage"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump @babel/preset-env from 7.14.2 to 7.14.7 in /ui/client

Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.14.2 to 7.14.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.14.7/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Change default consumerGroupNamingStrategy to processId-nodeId

* Add missing volume declaration

* [Metrics] Grouping by nodeIds in dashboard correct links in dev (#1833)

* Change explicitUidInStatefulOperators to true by default

* Review

* Authentication SPI refactoring.

* Migration Guide complemented

* test: fixed e2e in ci (#1846)

* test: fixed e2e in ci

* fix: path

* Add comment when updating process with the same version (#1847)

* Bump @typescript-eslint/eslint-plugin in /ui/client

Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.25.0 to 4.28.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Graph optimize (#1844)

fix: better selectors
fix: minor bugs
feat: highlight link to insert
feat: layout only selected
feat: delete group with nodes
fix: layout and render optimize
fix: panzoom graph plugin
feat: layout pasted
fix: fit and zoom after layout
refactor: some more typescript
refactor: selectors and action creators

* Bump @testing-library/react from 11.2.7 to 12.0.0 in /ui/client (#1851)

Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 11.2.7 to 12.0.0.
- [Release notes](https://github.com/testing-library/react-testing-library/releases)
- [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md)
- [Commits](testing-library/react-testing-library@v11.2.7...v12.0.0)

---
updated-dependencies:
- dependency-name: "@testing-library/react"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* workaround of unstable e2e test

* Update dependabot.yml (#1860)

* combined deps bump in /ui/client (#1866)

* Bump @babel/preset-typescript from 7.13.0 to 7.14.5 in /ui/client

Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.13.0 to 7.14.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.14.5/packages/babel-preset-typescript)

---
updated-dependencies:
- dependency-name: "@babel/preset-typescript"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* build: combine (probably) safe updates

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Julian Wielga <j@touk.pl>

* Node test counts (#1867)

* chore: prepare

* feat: changed node test counts style

* feat: user settings debug panel

* Problem with generic/specific record serialization to Array[byte] (#1840)

* Problem with generic/specific record serialization to Arra[byte] while test data parsing.

* Fix (use AbstractConfluentKafkaAvroSerializer in ConfluentAvroMessageReader)

* CR fixes.

* [Feature] configurable process toolbars (#1702)

* Openapi import (#1849)

* Initial import from internal repo (code mainly by https://github.com/krzpiesiewicz)

* Dispatch => HttpClient

* SharedService, remove obsolete code

* Parser package private

* Refactor HttpConfig + separare Flink and Standalone

* Tests, example

* Cleanup, docs, tests

* Review

* Bump husky from 6.0.0 to 7.0.0 in /ui/client (#1871)

Bumps [husky](https://github.com/typicode/husky) from 6.0.0 to 7.0.0.
- [Release notes](https://github.com/typicode/husky/releases)
- [Commits](typicode/husky@v6.0.0...v7.0.0)

---
updated-dependencies:
- dependency-name: husky
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @wojtekmaj/enzyme-adapter-react-17 in /ui/client (#1865)

Bumps [@wojtekmaj/enzyme-adapter-react-17](https://github.com/wojtekmaj/enzyme-adapter-react-17) from 0.6.1 to 0.6.2.
- [Release notes](https://github.com/wojtekmaj/enzyme-adapter-react-17/releases)
- [Commits](wojtekmaj/enzyme-adapter-react-17@v0.6.1...v0.6.2)

---
updated-dependencies:
- dependency-name: "@wojtekmaj/enzyme-adapter-react-17"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Improvements] Configurable process toolbars buttons (#1872)

* Problem with generic/specific record serialization to Array[byte] - approach that doesn't do anything with schema evolution

* Webpack build optimize (#1877)

* Toolbars config fixes (#1879)

* build: less logs in ci

* fix: overwrite other (not currently used) toolbar settings
feat: sync toolbars/user setting across tabs/windows
fix: toolbars flicker

* fix: minor styles

* chore: append dev only toolbars

* chore: title

* chore: append dev only toolbars

* fix: non tty env

* fix: no layout on node delete

* fix: non tty env

* test: update snapshots after css changes

* Bump @types/react-beautiful-dnd from 13.0.0 to 13.1.0 in /ui/client (#1874)

Bumps [@types/react-beautiful-dnd](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-beautiful-dnd) from 13.0.0 to 13.1.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-beautiful-dnd)

---
updated-dependencies:
- dependency-name: "@types/react-beautiful-dnd"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @types/webpack-env from 1.16.0 to 1.16.2 in /ui/client (#1875)

Bumps [@types/webpack-env](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/webpack-env) from 1.16.0 to 1.16.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/webpack-env)

---
updated-dependencies:
- dependency-name: "@types/webpack-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Fix] proper security handling in SwaggerParser

* Improvements: Process Toolbars (#1885)

* fix: LinkButton support for externals (#1888)

* Split openapi component from generic model

* Review

* Bump cronstrue from 1.92.0 to 1.114.0 in /ui/client (#1876)

Bumps [cronstrue](https://github.com/bradymholt/cronstrue) from 1.92.0 to 1.114.0.
- [Release notes](https://github.com/bradymholt/cronstrue/releases)
- [Commits](bradymholt/cRonstrue@v1.92.0...v1.114.0)

---
updated-dependencies:
- dependency-name: cronstrue
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @types/jsonwebtoken from 8.5.2 to 8.5.4 in /ui/client (#1891)

Bumps [@types/jsonwebtoken](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jsonwebtoken) from 8.5.2 to 8.5.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jsonwebtoken)

---
updated-dependencies:
- dependency-name: "@types/jsonwebtoken"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @types/lodash from 4.14.170 to 4.14.171 in /ui/client (#1896)

Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.170 to 4.14.171.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump start-server-and-test from 1.12.5 to 1.12.6 in /ui/client (#1897)

Bumps [start-server-and-test](https://github.com/bahmutov/start-server-and-test) from 1.12.5 to 1.12.6.
- [Release notes](https://github.com/bahmutov/start-server-and-test/releases)
- [Commits](bahmutov/start-server-and-test@v1.12.5...v1.12.6)

---
updated-dependencies:
- dependency-name: start-server-and-test
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix: disabling save button (#1903)

* Add delayed sources (with preview branch) (#1894)

* Add delayed sources (generic and avro)

* Fix scala 2.11 compilation error

* CR fixes and tests for delayed avro source.

* Docs and CR fixes: consolidate extractTimestamp and timestampAsigner.

* CR fixes

* Fix legacy timestampAssigner

* Add timestampField validation

* Revert exception throwing inside the source.

* - Cypress (and FE in general) documentation improvement
- Internationalization fix - removing translation files in dev mode
- Printing watched files causing FE recompilation
- Added some ignore paths to ignored files

* - Cypress (and FE in general) documentation improvement
- Internationalization fix - removing translation files in dev mode
- Printing watched files causing FE recompilation
- Added some ignore paths to ignored files

* fix for: cypress caused realod web dev server

* Webpack - reverted refreshing after node_modules change

* Webpack - reverted not refreshing after node_modules change

* Separate settings for different authentication methods. Remote authentication strategy on unknown backend.

* Fix for: docker image wasn't pulled during npm start-backend:docker + logback configuration file was ignored

* Process -> Scenario labels rename

* Process -> Scenario labels rename - cypress tests fixes

* Subscenario -> scenario fragment

* initial import

* Fix table tag closing

* Review

* Add recent changes

* Review by pjg, tables with markdown...

* links, tables inlined

* More flexible authentication customization by using named SPI services.

* Pass run mode to nodes (#1357)

* [FIX] Leaner OpenAPI assembly

* fix: remove expose of jointjs

* fix: get customTabs from store with selector

* fix: favicon

* fix: publicPath simplify

* fix: cleanup config.ts

* fix: module federation expose fixed

* fix: hot reload fixed after module expose

* fix: devserver serve statics

* config

* Category-permission mapping extracted from AuthenticationProvider

* Authorization rules reading moved to an upper level so that they are read just once.

* Rename splitStateToDisk to spillStateToDisk (#1904)

* Rename splitStateToDisk to spillStateToDisk

* Add migration

* Rename label

* Review

Co-authored-by: Damian Święcki <dsw@touk.pl>

* Scenario fragment -> fragment

* [Refactor] Configuration cleanup (#1906)

* [Refactor] Configuration cleanup

* review comments

* fix: cors on dev server proxy

* feat: separate AuthInitializer form redux

* feat: expose modules for federation

* fix: types export

* fix: wrong URL usage

* chore: remove nkPath

* fix: types export fixed again

* chore: remove unnecessary template

* Performance optimization for aggregates: do not save context of varia… (#1886)

Performance optimization for aggregates:
- do not save context of variables in state
- passing key instead of full context before aggregate
- using AGG global variable in aggregates instead of name of class

* fix: remove unnecessary template & fix styles

* Rename processTypes to scenarioTypes (#1910)

* Introduce scenarioTypes configuration

* Use new property

* Add migration guide

* Rename processing types

* Review

* Fix property being optional

Co-authored-by: Damian Święcki <dsw@touk.pl>

* fix: fix styles

* build: fixed dev watch build loops & speed

* Process should be scheduled if previous, failed job is still accessible via Flink API (#1913)

* fix: styles & test snapshots

* Fix ProcessingTypeDataReaderSpec (#1915)

Co-authored-by: Damian Święcki <dsw@touk.pl>

* chore: some comments & cleanup

* test: snapshots update

* Renaming process to scenario - backend (#1911)

* Return process to scenario - backend part

* Subprocess -> fragment

* Bump sbt and sbt plugins patch versions (#1916)

Co-authored-by: Damian Święcki <dsw@touk.pl>

* fix: incorrect assets cleaning

* Bump @types/react-beautiful-dnd from 13.1.0 to 13.1.1 in /ui/client (#1899)

Bumps [@types/react-beautiful-dnd](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-beautiful-dnd) from 13.1.0 to 13.1.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-beautiful-dnd)

---
updated-dependencies:
- dependency-name: "@types/react-beautiful-dnd"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump @types/react-dom from 17.0.8 to 17.0.9 in /ui/client (#1898)

Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 17.0.8 to 17.0.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: move fetchAuthenticationSettings to httpService

* UI client improvement:
- CI uses .nvmrc file
- Notice about `nvm use` command

* Possibility to add allowed classes in the model (#1908)

* before changes

* Possibility to add allowed classes in the model

* Additional integration test for allowed classes

* Fix after review #1 - allowedClasses

* Change in variables names

* Replaced type of additionalClasses

* Post review code refactoring - additional classes

* Review fix - allowedClasses - type change

Co-authored-by: Arkadiusz Panczyk <apn@touk.pl>

* Sql import (#1857)

* Initial import from internal repo (code mainly by https://github.com/nadberezny)

* Code cleanup

* Restore SAM explicit type for scala 2.11

* Review

* Add sql to generic

* Review

* Add troubleshooting

Co-authored-by: Damian Święcki <dsw@touk.pl>

* Fix for: cypress used root user in unified mode which caused bad file permissions

* Added some hints how to invoke cypress tests in README.md

* Rename engineConfig to deploymentConfig (#1926)

* Renaming engineConfig -> deploymentConfig + minor fixes

* review

* test fix

* Rename outer-join to single-side-join (#1927)

* Scenario Authoring documentation (#1900)

* initial changes to existing docs

* Update Spel.md

* Update Spel.md

* Update Spel.md

Removed term key in the area of JSON like name:value (key:value) pairs, other parts of documentation avoid using term key to avoid confusion with Kafka key, Flink (partitioning) key, etc.

* Applied mproch review comments.

* applied mproch review comments - removed SQLVariable description

Co-authored-by: ZbyszekMM <zml@touk.pl>
Co-authored-by: ZbyszekMM <50945192+ZbyszekMM@users.noreply.github.com>

* Mbz static method validation (#1914)

* Added validation for classes passed as TypeReference based on ModelDatat.typeDefinitions

* Rename ProcessManager to DeploymentManager (#1921)

* ProcessManager -> DeploymentManager

* review

* review

* fixed test failure after class-validation changes (#1931)

* Rename process to fragment on archive tab (#1934)

Co-authored-by: Damian Święcki <dsw@touk.pl>

* Rename keyBy to groupBy (#1920)

* Rename keyBy to groupBy

* Add migration

* Review

Co-authored-by: Damian Święcki <dsw@touk.pl>

* fix: delay removing junk script tag after load (#1929)

* Grafana 8.0.6 (#1936)

* Update demo scenario (#1935)

* Update demo scenario

* Update source name

* Update aggregation

* Change sink

* Change sink v2

Co-authored-by: Damian Święcki <dsw@touk.pl>

* Demo test scripts fix: added change dir to make relative paths works correctly

* CI for PR for release/* (#1954)

* Ui config loading fix: config entries inside defaultUiConfig.conf wasn't able to use in base application conf passed via nussknacker.config.locations

* Configuration guide (#1932)

* Initial configuration/installation guide

* Initial configuration/installation guide

* Update docs/installation_configuration_guide/DesignerConfiguration.md

Co-authored-by: Damian Święcki <dswiecki9@gmail.com>

* Update docs/installation_configuration_guide/DesignerConfiguration.md

Co-authored-by: Damian Święcki <dswiecki9@gmail.com>

* Update docs/installation_configuration_guide/ModelConfiguration.md

Co-authored-by: Damian Święcki <dswiecki9@gmail.com>

* review

* Main configuration guide

Co-authored-by: Damian Święcki <dswiecki9@gmail.com>

* Renaming process to scenario on FE - fixes (#1945)

* Rename process->scenario - fixes

* Error messages

* Custom scenarios

* HttpService

* Fixes

* Review

* Minor fixes in documentation and app run script for Intellij Idea

* Minor fixes in documentation and app run script for Intellij Idea - fixes after review

* fix(visual regresion): notification font size (#1941)

(cherry picked from commit 99d151f)

* fix(visual regresion): notification font size - cypress tests fix

* Don't apply migration action on empty migration list, force increase version on migration

* Tests for migration changes

* Update variable name, remove unused print statement

* name boolean parameters

* extract method findMigrationsToApply from migrateWithMigrations

* Fix for: state verification mechanism didn't work with rocksdb (#1971)

Fix for: state verification mechanism didn't work with rocksdb

* [FIX] Process -> Scenario in default toolbar... (#1973)

* [FIX] Handle initial parameters status in KafkaSinkWithEditor properly (#1967)

* Cypress: Added tests for drag component and drop on edge

* [FIX] nothingToSave ignores validationResult (#1975)

* Fix for: Node dropped on edge wasn't vertically aligned

* Cross build also on release branches

* Removed fixes branches support in CI - are replaced by release branches

* Use openjdk:11-jdk instead of openjdk:11-jdk-slim (#1982)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Maciej Próchniak <mpr@touk.pl>
Co-authored-by: Tomasz Wielga <tw@touk.pl>
Co-authored-by: JulianWielga <j@touk.pl>
Co-authored-by: Łukasz Jędrzejewski <ljd@touk.pl>
Co-authored-by: gskrobisz <gsk@touk.pl>
Co-authored-by: Marcin Abramowicz <44381959+Abrams27@users.noreply.github.com>
Co-authored-by: Łukasz Ciołecki <lukasz.ciolecki@gmail.com>
Co-authored-by: Arek Burdach <arek.burdach@gmail.com>
Co-authored-by: Damian Święcki <dsw@touk.pl>
Co-authored-by: apanczyk <56263549+apanczyk@users.noreply.github.com>
Co-authored-by: Arkadiusz Panczyk <apn@touk.pl>
Co-authored-by: ZbyszekMM <zml@touk.pl>
Co-authored-by: ZbyszekMM <50945192+ZbyszekMM@users.noreply.github.com>
Co-authored-by: maciej-brzezinski <84868587+maciej-brzezinski@users.noreply.github.com>
Co-authored-by: Filip Michalski <fmc@touk.pl>
  • Loading branch information
17 people authored Jul 29, 2021
1 parent 3e89e3e commit 342dcd0
Show file tree
Hide file tree
Showing 660 changed files with 15,782 additions and 36,888 deletions.
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ updates:
labels:
- "ui"
- "dependencies"
open-pull-requests-limit: 20
open-pull-requests-limit: 5
37 changes: 23 additions & 14 deletions .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,21 @@ on:
branches:
- master
- staging
- fixes/*
- release/*
push:
branches:
- master
- staging
- demo
- preview/*
- release/*
- fixes/*
#TODO: currently release is done manually, we don't want to run this pipeline on released version, to avoid accidental pushes
tags-ignore:
- '**'
env:
#we use this variable in ciRunSbt.sh
#NOTE: for publishing we use different settings, we don't use ciRunSbt.sh there
CROSS_BUILD: ${{ github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/heads/fixes') }}
CROSS_BUILD: ${{ github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/heads/release') }}

jobs:
build:
Expand Down Expand Up @@ -148,7 +147,7 @@ jobs:
run: tar xfz target.tgz
- name: Integration tests
shell: bash
run: ./ciRunSbt.sh flinkProcessManager/it:test engineStandalone/it:test processReports/it:test security/it:test
run: ./ciRunSbt.sh flinkDeploymentManager/it:test engineStandalone/it:test processReports/it:test security/it:test
slowTests:
name: Slow tests
runs-on: ubuntu-latest
Expand Down Expand Up @@ -195,10 +194,13 @@ jobs:
path: |
**/node_modules
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
- name: Get Node.js version
id: nvm
run: echo ::set-output name=NODE_VERSION::$(cat .nvmrc)
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v2
with:
node-version: 14
node-version: ${{ steps.nvm.outputs.NODE_VERSION }}
- name: Test FE
run: |
cd ui/client
Expand All @@ -221,10 +223,13 @@ jobs:
path: |
**/node_modules
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
- name: Get Node.js version
id: nvm
run: echo ::set-output name=NODE_VERSION::$(cat .nvmrc)
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v2
with:
node-version: 14
node-version: ${{ steps.nvm.outputs.NODE_VERSION }}
- name: Setup npm
run: (cd ui/client; npm ci)
- name: Cache ivy packages
Expand Down Expand Up @@ -261,14 +266,15 @@ jobs:
CYPRESS_BASE_URL: http://localhost:8083
shell: bash
run: |
docker run -d -p 8083:8080 -e CONFIG_FORCE_processTypes_streaming_engineConfig_type=stub -e NUSSKNACKER_CONFIG_FILE=/opt/nussknacker/conf/dev-application.conf --name nussknacker_e2e_fe touk/nussknacker:$NUSSKNACKER_VERSION
`npm bin`/wait-on $CYPRESS_BASE_URL && npm run test:e2e
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
- name: Test quickstart
shell: bash
env:
NUSSKNACKER_VERSION: ${{ env.NUSSKNACKER_VERSION }}
run: cd ./demo/docker && ./testQuickstart.sh
run: ./demo/docker/testQuickstart.sh
- name: Store test results
if: always()
uses: actions/upload-artifact@v2
Expand All @@ -285,7 +291,7 @@ jobs:
runs-on: ubuntu-latest
needs: [build, tests, crossCompile, integrationTests, slowTests, frontendTests, dockerTest]
#TODO: should we publish everything on all those branches?
if: ${{ github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/master' || github.ref == 'refs/heads/demo' || startsWith(github.ref, 'refs/heads/fixes') || startsWith(github.ref, 'refs/heads/preview') || startsWith(github.ref, 'refs/heads/release') }}
if: ${{ github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/master' || github.ref == 'refs/heads/demo' || startsWith(github.ref, 'refs/heads/preview') || startsWith(github.ref, 'refs/heads/release') }}
steps:
- name: Cancel previous runs
uses: styfle/cancel-workflow-action@0.8.0
Expand All @@ -298,10 +304,13 @@ jobs:
path: |
**/node_modules
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
- name: Get Node.js version
id: nvm
run: echo ::set-output name=NODE_VERSION::$(cat .nvmrc)
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v2
with:
node-version: 14
node-version: ${{ steps.nvm.outputs.NODE_VERSION }}
- name: Setup npm
run: (cd ui/client; npm ci)
- name: Cache ivy packages
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,4 @@ _book/
out/
*.bsp
ui/client/cypress/fixtures/env.json
*.swp
6 changes: 4 additions & 2 deletions .run/NussknackerApp.run.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,10 @@
<env name="DEVELOPMENT_MODE" value="true" />
<env name="GRAFANA_URL" value="http://localhost:8081/grafana" />
<env name="FLINK_REST_URL" value="http://localhost:3031" />
<env name="FLINK_QUERYABLE_STATE_PROXY" value="localhost:3063" />
<env name="FLINK_QUERYABLE_STATE_PROXY_URL" value="localhost:3063" />
<env name="FLINK_ROCKSDB_CHECKPOINT_DATA_URI" value="file:///opt/flink/data/rocksdb-checkpoints" />
<env name="FLINK_SHOULD_VERIFY_BEFORE_DEPLOY" value="false" />
<env name="SCHEMA_REGISTRY_URL" value="http://localhost:3082" />
</envs>
<option name="INCLUDE_PROVIDED_SCOPE" value="true" />
<option name="MAIN_CLASS_NAME" value="pl.touk.nussknacker.ui.NussknackerApp" />
Expand All @@ -27,4 +29,4 @@
<option name="Make" enabled="true" />
</method>
</configuration>
</component>
</component>
11 changes: 11 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,14 @@ Below you can find out some hints how to achieve that:
- Be careful with `ClassTag`/`TypeTag` - should be always option to pass simple `Class[_]` or sth similar
- Prefer methods intead of function members (def foo: (T) => R)
- Avoid using AnyVal if the class is in API that will be used from Java

## Changelog
All significant changes should be added to [Changelog](docs/Changelog.md). All changes which break API compatibility
should be added to [Migration guide](docs/MigrationGuide.md)

## Keeping documentation up to date

New features, components should have appropriate [Documentation](docs). In particular, all settings
should be documented (with type, default values etc.) in appropriate sections of
[configuration guide](docs/installation_configuration_guide/Configuration.md).
89 changes: 75 additions & 14 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,10 @@ lazy val commonSettings =
//Our main kafka dependencies are Confluent (for avro) and Flink (Kafka connector)
"org.apache.kafka" % "kafka-clients" % kafkaV,
"org.apache.kafka" %% "kafka" % kafkaV,

"io.netty" % "netty-handler" % nettyV,
"io.netty" % "netty-codec" % nettyV,
"io.netty" % "netty-transport-native-epoll" % nettyV,
)
)

Expand Down Expand Up @@ -246,6 +250,7 @@ val commonsIOV = "2.4"
val dropWizardV = "5.0.0-rc3"
val scalaCollectionsCompatV = "2.3.2"
val testcontainersScalaV = "0.39.3"
val nettyV = "4.1.48.Final"

val akkaHttpV = "10.1.8"
val akkaHttpCirceV = "1.27.0"
Expand All @@ -262,7 +267,8 @@ val sttpV = "2.2.9"

lazy val commonDockerSettings = {
Seq(
dockerBaseImage := "openjdk:11-jdk-slim",
//we use openjdk:11-jdk because openjdk:11-jdk-slim lacks /usr/local/openjdk-11/lib/libfontmanager.so file necessary during pdf export
dockerBaseImage := "openjdk:11-jdk",
dockerUsername := dockerUserName,
dockerUpdateLatest := dockerUpLatestFromProp.getOrElse(!isSnapshot.value),
dockerAliases := {
Expand Down Expand Up @@ -334,13 +340,17 @@ lazy val dist = {
packageName in Universal := ("nussknacker" + "-" + version.value),
Keys.compile in Compile := (Keys.compile in Compile).dependsOn(
(assembly in Compile) in generic,
(assembly in Compile) in flinkProcessManager,
(assembly in Compile) in engineStandalone
(assembly in Compile) in flinkDeploymentManager,
(assembly in Compile) in engineStandalone,
(assembly in Compile) in openapi,
(assembly in Compile) in sql,
).value,
mappings in Universal ++= Seq(
(crossTarget in generic).value / "genericModel.jar" -> "model/genericModel.jar",
(crossTarget in flinkProcessManager).value / s"nussknacker-flink-manager.jar" -> "managers/nussknacker-flink-manager.jar",
(crossTarget in engineStandalone).value / s"nussknacker-standalone-manager.jar" -> "managers/nussknacker-standalone-manager.jar"
(crossTarget in flinkDeploymentManager).value / "nussknacker-flink-manager.jar" -> "managers/nussknacker-flink-manager.jar",
(crossTarget in engineStandalone).value / "nussknacker-standalone-manager.jar" -> "managers/nussknacker-standalone-manager.jar",
(crossTarget in openapi).value / "openapi.jar" -> "components/openapi.jar",
(crossTarget in sql).value / "sql.jar" -> "components/sql.jar"
),
/* //FIXME: figure out how to filter out only for .tgz, not for docker
mappings in Universal := {
Expand Down Expand Up @@ -378,6 +388,8 @@ lazy val dist = {

def engine(name: String) = file(s"engine/$name")

def component(name: String) = file(s"engine/components/$name")

lazy val engineStandalone = (project in engine("standalone/engine")).
configs(IntegrationTest).
settings(commonSettings).
Expand Down Expand Up @@ -439,7 +451,7 @@ lazy val standaloneApp = (project in engine("standalone/app")).
dependsOn(engineStandalone, interpreter, httpUtils, testUtil % "test", standaloneUtil % "test")


lazy val flinkProcessManager = (project in engine("flink/management")).
lazy val flinkDeploymentManager = (project in engine("flink/management")).
configs(IntegrationTest).
settings(commonSettings).
settings(Defaults.itSettings).
Expand All @@ -461,6 +473,7 @@ lazy val flinkProcessManager = (project in engine("flink/management")).
ExclusionRule("log4j", "log4j"),
ExclusionRule("org.slf4j", "slf4j-log4j12")
),
"org.apache.flink" %% "flink-statebackend-rocksdb" % flinkV % flinkScope,
//TODO: move to testcontainers, e.g. https://ci.apache.org/projects/flink/flink-docs-master/api/java/org/apache/flink/tests/util/flink/FlinkContainer.html
"com.whisk" %% "docker-testkit-scalatest" % "0.9.0" % "it,test",
"com.whisk" %% "docker-testkit-impl-spotify" % "0.9.0" % "it,test"
Expand All @@ -472,7 +485,7 @@ lazy val flinkProcessManager = (project in engine("flink/management")).
httpUtils % "provided",
kafkaTestUtil % "it,test")

lazy val flinkPeriodicProcessManager = (project in engine("flink/management/periodic")).
lazy val flinkPeriodicDeploymentManager = (project in engine("flink/management/periodic")).
settings(commonSettings).
settings(assemblySettings("nussknacker-flink-periodic-manager.jar", includeScala = false): _*).
settings(
Expand All @@ -486,7 +499,7 @@ lazy val flinkPeriodicProcessManager = (project in engine("flink/management/peri
"com.cronutils" % "cron-utils" % cronParserV
)
}
).dependsOn(flinkProcessManager,
).dependsOn(flinkDeploymentManager,
interpreter % "provided",
api % "provided",
httpUtils % "provided",
Expand Down Expand Up @@ -900,6 +913,54 @@ lazy val queryableState = (project in engine("queryableState")).
).dependsOn(api)


val swaggerParserV = "2.0.20"
val swaggerIntegrationV = "2.1.3"

lazy val openapi = (project in component("openapi")).
configs(IntegrationTest).
settings(commonSettings).
settings(Defaults.itSettings).
settings(commonSettings).
settings(assemblySampleSettings("openapi.jar"): _*).
settings(publishAssemblySettings: _*).
settings(
name := "nussknacker-openapi",
libraryDependencies ++= Seq(
"io.swagger.parser.v3" % "swagger-parser" % swaggerParserV excludeAll(
ExclusionRule(organization = "javax.mail"),
ExclusionRule(organization = "javax.validation"),
ExclusionRule(organization = "jakarta.activation"),
ExclusionRule(organization = "jakarta.validation")
),
"io.swagger.core.v3" % "swagger-integration" % swaggerIntegrationV excludeAll(
ExclusionRule(organization = "jakarta.activation"),
ExclusionRule(organization = "jakarta.validation")
),
"com.softwaremill.sttp.client" %% "circe" % sttpV excludeAll ExclusionRule(organization = "io.circe"),
"com.softwaremill.sttp.client" %% "async-http-client-backend-future" % sttpV excludeAll(
ExclusionRule(organization = "com.sun.activation", name = "javax.activation"),
),
"io.netty" % "netty-transport-native-epoll" % nettyV,
"org.apache.flink" %% "flink-streaming-scala" % flinkV % Provided,
"org.scalatest" %% "scalatest" % scalaTestV % "it,test"
),
).dependsOn(api % Provided, process % Provided, engineStandalone % Provided, standaloneUtil % Provided, httpUtils % Provided, flinkTestUtil % "it,test", kafkaTestUtil % "it,test")

lazy val sql = (project in component("sql")).
configs(IntegrationTest).
settings(commonSettings).
settings(Defaults.itSettings).
settings(commonSettings).
settings(assemblySampleSettings("sql.jar"): _*).
settings(publishAssemblySettings: _*).
settings(
name := "nussknacker-sql",
libraryDependencies ++= Seq(
"com.zaxxer" % "HikariCP" % "4.0.3",
"org.apache.flink" %% "flink-streaming-scala" % flinkV % Provided,
"org.scalatest" %% "scalatest" % scalaTestV % "it,test"
),
).dependsOn(api % Provided, process % Provided, engineStandalone % Provided, standaloneUtil % Provided, httpUtils % Provided, flinkTestUtil % "it,test", kafkaTestUtil % "it,test")

lazy val buildUi = taskKey[Unit]("builds ui")

Expand Down Expand Up @@ -975,7 +1036,7 @@ lazy val ui = (project in file("ui/server"))
"org.slf4j" % "log4j-over-slf4j" % slf4jV,
"com.carrotsearch" % "java-sizeof" % "0.0.5",

//It's needed by flinkProcessManager which has disabled includingScala
//It's needed by flinkDeploymentManager which has disabled includingScala
"org.scala-lang" % "scala-compiler" % scalaVersion.value,
"org.scala-lang" % "scala-reflect" % scalaVersion.value,

Expand All @@ -998,7 +1059,7 @@ lazy val ui = (project in file("ui/server"))
//TODO: this is unfortunatelly needed to run without too much hassle in Intellij...
//provided dependency of kafka is workaround for Idea, which is not able to handle test scope on module dependency
//otherwise it is (wrongly) added to classpath when running UI from Idea
flinkProcessManager % "provided" ,
flinkDeploymentManager % "provided" ,
kafka % "provided",
engineStandalone % "provided"
)
Expand Down Expand Up @@ -1041,10 +1102,10 @@ lazy val bom = (project in file("bom"))
).dependsOn(modules.map(k => k:ClasspathDep[ProjectReference]):_*)

lazy val modules = List[ProjectReference](
engineStandalone, standaloneApp, flinkProcessManager, flinkPeriodicProcessManager, standaloneSample, flinkManagementSample, managementJavaSample, generic,
process, interpreter, benchmarks, kafka, avroFlinkUtil, kafkaFlinkUtil, kafkaTestUtil, util, testUtil, flinkUtil, flinkModelUtil,
engineStandalone, standaloneApp, flinkDeploymentManager, flinkPeriodicDeploymentManager, standaloneSample, flinkManagementSample, managementJavaSample, generic,
openapi, process, interpreter, benchmarks, kafka, avroFlinkUtil, kafkaFlinkUtil, kafkaTestUtil, util, testUtil, flinkUtil, flinkModelUtil,
flinkTestUtil, standaloneUtil, standaloneApi, api, security, flinkApi, processReports, httpUtils, queryableState,
restmodel, listenerApi, ui
restmodel, listenerApi, ui, sql
)
lazy val modulesWithBom: List[ProjectReference] = bom :: modules

Expand Down Expand Up @@ -1080,4 +1141,4 @@ lazy val root = (project in file("."))
)

addCommandAlias("assemblySamples", ";flinkManagementSample/assembly;standaloneSample/assembly;generic/assembly")
addCommandAlias("assemblyEngines", ";flinkProcessManager/assembly;engineStandalone/assembly")
addCommandAlias("assemblyDeploymentManagers", ";flinkDeploymentManager/assembly;engineStandalone/assembly")
7 changes: 7 additions & 0 deletions demo/docker/customerservice/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
FROM python:3
RUN pip install flask-smorest
EXPOSE 5000
ADD app.py /
RUN mkdir /static && flask openapi print > /static/swagger.json
CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0"]

4 changes: 4 additions & 0 deletions demo/docker/customerservice/Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
This is sample service with OpenAPI description. It's implemented in python, as Nussknacker
can integrate with various technologies via enrichers.

Of course, it's just a stub, not intended for any kind of production usage.
Loading

0 comments on commit 342dcd0

Please sign in to comment.