-
Notifications
You must be signed in to change notification settings - Fork 197
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
feat: handle zeebe task retries #880
base: main
Are you sure you want to change the base?
Conversation
Hi @ajeans, I will look into this and try to guide you. |
OK so I had an initial look and indeed we duplicate a lot, but there are no tests to verify that the solution actually works. My suggestion would be to start with the tests which will then guide the solution:
This should give us a good base which will drive the implementation. If you need any support, feel free to ask questions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See comment above.
@ajeans do you plan to work on this? Otherwise let's just close this PR |
@smbea Unfortunately, I didn't even manage to run the existing tests (step 1 of @barmac directions). npm test
And trying to run the test from my IDE (Intellij) fails in the same way. Is there a DEVELOP documentation with some help for this project? Otherwise, I'm sorry but I'm just stuck... |
@barmac that's complicated :) node -v && npm -v returns
but
So I used yarn install and it seems to work fine. yarn install v1.22.19
info No lockfile found.
warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] Resolving packages...
warning @bpmn-io/[email protected]: WARNING: This project has been renamed to @bpmn-io/element-template-icon-renderer. Install using @bpmn-io/element-template-icon-renderer instead.
warning react-svg-loader > react-svg-core > [email protected]: This SVGO version is no longer supported. Upgrade to v2.x.x.
warning react-svg-loader > react-svg-core > svgo > [email protected]: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > [email protected]" has unmet peer dependency "preact@>=10".
warning "@bpmn-io/properties-panel > @bpmn-io/feel-editor > @codemirror/[email protected]" has unmet peer dependency "@lezer/common@^1.0.0".
warning " > @testing-library/[email protected]" has unmet peer dependency "preact@>=10 || ^10.0.0-alpha.0 || ^10.0.0-beta.0".
warning " > @testing-library/[email protected]" has unmet peer dependency "preact@^10.4.8".
[4/4] Building fresh packages...
success Saved lockfile.
$ run-s bundle
yarn run v1.22.19
$ rollup -c
src/index.js → dist/bpmn-js-properties-panel.umd.js...
created dist/bpmn-js-properties-panel.umd.js in 13.8s
src/index.js → dist/index.js, dist/index.esm.js...
created dist/index.js, dist/index.esm.js in 4.8s
Done in 19.50s.
Done in 151.85s. After that, both |
Hi @ajeans, Sorry see that the installation fails on your machine. In the team, we discussed a solution which could however make it unnecessary to separately implement support for templating each of the properties of task definition. Namely, we could have a single binding type {
"type": "zeebe:taskDefinition",
"name": "retries"
} Thus, if Zeebe ever supports property {
"type": "zeebe:taskDefinition",
"name": "foo"
} I believe this is a viable solution which would pay off long-term. |
WIP / RFC
This PR is related to camunda/camunda-modeler#2936 and hopes to allow to see and edit retries in zeebe/cloud/v8 element templates.
This should be doable now that schema support landed with camunda/element-templates-json-schema#90
This is very definitely not working and probably very misguided
taskDefinition:type
to servicetaskDefinition:retries
type
andretries
are two keys attached to thetaskDefinition
, yet I cannot figure out how to merge those two attributes when processing a change on one of them... so I just duplicated the independent taskCreation logicnpm run start:cloud-templates
but I couldn't figure out how to inject the latest / master element-templates-json-schema... So no way to test this.CC @nikku I'm afraid I won't be able to go much further without help.