Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PLANNER-1627: TaskAssigningPlanning & TaskAssignigRuntime kie-sever extensions (target architecture) #2034

Merged
merged 3 commits into from Mar 16, 2020

Conversation

wmedvede
Copy link
Member

@wmedvede wmedvede commented Mar 2, 2020

No description provided.

@wmedvede
Copy link
Member Author

wmedvede commented Mar 2, 2020

Hi @rsynek @triceo this PR is basically the refactoring of the task assigning stuff merged on Friday to the final location in kie-server-parent.
Would you mind review?

Thanks

depends on: kiegroup/droolsjbpm-build-bootstrap#1205

@rsynek
Copy link
Collaborator

rsynek commented Mar 3, 2020

@sutaakar any idea if there is any owner of KIE server now who could review PRs as this one?

@sutaakar
Copy link
Contributor

sutaakar commented Mar 3, 2020

I guess the Kie server doesn't have any specific owner now.

Copy link
Collaborator

@rsynek rsynek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested that the new artifacts are contained in kie-server assembly. The assembly for ee8 deploys to Wildfly and the new extensions are properly activated.

Copy link
Contributor

@triceo triceo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved, assuming the owner of KIE Server has also approved this.

@wmedvede wmedvede requested a review from krisv March 3, 2020 13:52
@wmedvede
Copy link
Member Author

wmedvede commented Mar 3, 2020

Hi @krisv your name came up in today's sprint planning meeting as the person candidate for approving/reviewing this Kie Server related PR.
Would you mind have look?

Thanks!

FYI @ge0ffrey

@wmedvede
Copy link
Member Author

wmedvede commented Mar 4, 2020

looks like jenknis job failed due error below but the PR status wasn't refreshed

08:47:15 GitHub pull request #2034 of commit ac3cfc6, no merge conflicts.
08:47:15 Unable to query GitHub for status of PullRequestorg.kohsuke.github.HttpException: Server returned HTTP response code: -1, message: 'null' for URL: https://api.github.com/repos/kiegroup/droolsjbpm-integration/pulls/2034
08:47:15 at org.kohsuke.github.Requester.parse(Requester.java:646)
08:47:15 at org.kohsuke.github.Requester.parse(Requester.java:607)

@wmedvede
Copy link
Member Author

wmedvede commented Mar 4, 2020

jenkins retest this

@wmedvede
Copy link
Member Author

wmedvede commented Mar 4, 2020

Un-related tests failed. Looks like random failures.

++++++++++++++++++
org.kie.server.integrationtests.controller.WebSocketKieControllerRuleCapabilitiesIntegrationTest.testScanNow[0: JSON KieServicesConfiguration{transport=REST, serverUrl='http://localhost:42146/kie-server-services/services/rest/server'}]

Failing for the past 1 build (Since Unstable#715 )
Took 4 min 5 sec.
add description
Error Message
Synchronization failed for defined timeout: 240000 milliseconds.
Stacktrace
java.util.concurrent.TimeoutException: Synchronization failed for defined timeout: 240000 milliseconds.

++++++++++++++

org.kie.server.integrationtests.controller.WebSocketKieControllerRuleCapabilitiesIntegrationTest.testStartAndStopScanner[0: JSON KieServicesConfiguration{transport=REST, serverUrl='http://localhost:42146/kie-server-services/services/rest/server'}]

Failing for the past 1 build (Since Unstable#715 )
Took 1 min 15 sec.
add description
Error Message
The following assertion failed:

  1. expected:<[STARTED]> but was:<[CREATING]>
    Stacktrace
    org.assertj.core.api.SoftAssertionError:

The following assertion failed:

  1. expected:<[STARTED]> but was:<[CREATING]>

@wmedvede
Copy link
Member Author

wmedvede commented Mar 4, 2020

jenkins retest this

@wmedvede
Copy link
Member Author

wmedvede commented Mar 4, 2020

jenkins execute full downstream build

@sutaakar
Copy link
Contributor

sutaakar commented Mar 5, 2020

@wmedvede About https://github.com/kiegroup/droolsjbpm-integration/blob/ac3cfc6ea00b0e89473177ee1b40dd26bb9e7db3/kie-server-parent/kie-server-remote/kie-server-rest/kie-server-rest-task-assigning-runtime/src/main/java/org/kie/server/remote/rest/taskassigning/runtime/TaskAssigningRuntimeResource.java , if I understand it correctly then these endpoints can be also used by third party user, right? Have you considered adding there Swagger annotations?

@sutaakar
Copy link
Contributor

sutaakar commented Mar 5, 2020

@wmedvede Do you plan to provide implementation of UserSystemService for other application servers or possibly other authentication options like LDAP or Keycloak?

@sutaakar
Copy link
Contributor

sutaakar commented Mar 5, 2020

Have you considered implementing full e2e scenario showing how this functionality can be used by end users of Kie server?

…xtensions (target architecture)

    - Refactors the modules in jbpm-task-assigning to the definitive location in kie-server-parent
…xtensions (target architecture)

    - Removes the no longer needed jbpm-task-assigning first level module
…xtensions (target architecture)

    - Swagger configuration
    - Standard queries
@wmedvede
Copy link
Member Author

@wmedvede About https://github.com/kiegroup/droolsjbpm-integration/blob/ac3cfc6ea00b0e89473177ee1b40dd26bb9e7db3/kie-server-parent/kie-server-remote/kie-server-rest/kie-server-rest-task-assigning-runtime/src/main/java/org/kie/server/remote/rest/taskassigning/runtime/TaskAssigningRuntimeResource.java , if I understand it correctly then these endpoints can be also used by third party user, right? Have you considered adding there Swagger annotations?

third party users should avoid using this method since the shouldn't try to executePlannings or more flexible queries are provided. But no problem, the swagger information was added.

@wmedvede
Copy link
Member Author

@wmedvede Do you plan to provide implementation of UserSystemService for other application servers or possibly other authentication options like LDAP or Keycloak?

It's not the priority right now, i.e. out of this PR. Even so we have to see, since getting the users from the UserSystemService is not only getting the user + group information it implies also grabbing business related information like skills and affinities which may vary in impredectible ways depending on the particular integration, client. etc. I believe we should avoid ending up in kind of "generic" business data extractor for LDAP, keycloack, etc. Anyway, we can see this in the future.

@wmedvede
Copy link
Member Author

Have you considered implementing full e2e scenario showing how this functionality can be used by end users of Kie server?

Let's see if I go the time for setting up all this, right now there are still other development pieces pending. But I'll try to add some tasks consumption examples in the getting started guide.

@sonarcloud
Copy link

sonarcloud bot commented Mar 10, 2020

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities (and Security Hotspot 0 Security Hotspots to review)
Code Smell A 18 Code Smells

84.1% 84.1% Coverage
0.6% 0.6% Duplication

@wmedvede
Copy link
Member Author

jenkins execute full downstream build

@ge0ffrey
Copy link
Collaborator

Hi guys,

This PR has been open a while, let's get this wrapped up and merged. We have 3 approvals for this PR and no rejections. If no one objects further, I 'll merge it tomorrow.

@krisv @sutaakar Let me know if you want a few more days to review first, otherwise I 'll merge tomorrow, so it's easier to further polish the task assignment work in additional, smaller PR's.

Copy link
Contributor

@sutaakar sutaakar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok for me.

@ge0ffrey
Copy link
Collaborator

ge0ffrey commented Mar 11, 2020

Have you considered implementing full e2e scenario showing how this functionality can be used by end users of Kie server?

Let's see if I go the time for setting up all this, right now there are still other development pieces pending. But I'll try to add some tasks consumption examples in the getting started guide.

Good question - such an end to end scenario would make an interesting video or blog post too. It's an important piece of the puzzle.

@wmedvede
Copy link
Member Author

Well full build failed in non related tests but all kie-server, business central and jbpm-server artifacts were generated well.

It looks like there are non related DMNDesinger errors breaking the build:

Test Result (45 failures / +45)

org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.testConnectorKnowledgeRequirement
org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.testInputData
org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.testConnectorAuthorityRequirement
org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.testBasicModel
org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.testBusinessKnowledgeModelExpressionLiteral
org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.testNodeStyling

@rsynek
Copy link
Collaborator

rsynek commented Mar 13, 2020

jenkins execute full downstream build

1 similar comment
@rsynek
Copy link
Collaborator

rsynek commented Mar 16, 2020

jenkins execute full downstream build

@wmedvede
Copy link
Member Author

This is failing again due to non related tests but, looks like all related tests and artifacts were generated.

Expected condition failed: waiting for visibility of element located by By.className: qe-docks-item-W-org.kie.dmn.decision.navigator (tried for 10 second(s) with 500 milliseconds interval)
Stacktrace
org.openqa.selenium.TimeoutException: Expected condition failed: waiting for visibility of element located by By.className: qe-docks-item-W-org.kie.dmn.decision.navigator (tried for 10 second(s) with 500 milliseconds interval)
at org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.openDMNDesigner(DMNDesignerKogitoSeleniumIT.java:122)
Caused by: org.openqa.selenium.NoSuchElementException:
Cannot locate an element using By.className: qe-docks-item-W-org.kie.dmn.decision.navigator
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '3.13.0', revision: '2f0d292', time: '2018-06-25T15:24:21.231Z'
System info: host: 'rhba-jenkins.rhev-ci-vms.eng.rdu2.redhat.com', ip: '127.0.0.1', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-1062.4.1.el7.x86_64', java.version: '1.8.0_202'
Driver info: driver.version: unknown
at org.kie.workbench.common.dmn.showcase.client.selenium.DMNDesignerKogitoSeleniumIT.openDMNDesigner(DMNDesignerKogitoSeleniumIT.java:122)

@rsynek
Copy link
Collaborator

rsynek commented Mar 16, 2020

@wmedvede I have pointed @jomarko at this PR, let's see.

@jomarko
Copy link

jomarko commented Mar 16, 2020

The failed tests are 100% unrelated. feel free to merge. I reported jira for myself and started to investigate here https://issues.redhat.com/browse/KOGITO-1458

@rsynek
Copy link
Collaborator

rsynek commented Mar 16, 2020

Merging based on the investigation of failed tests in FDB.

@rsynek rsynek merged commit ae12431 into kiegroup:master Mar 16, 2020
@jomarko
Copy link

jomarko commented Mar 17, 2020

Failing tests are due to https://issues.redhat.com/browse/DROOLS-5170

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
6 participants