Skip to content

A Camunda BPM plugin that allows a BPMN Call Activity to dynamically call a child process or perform an asynchronous service call.

License

Notifications You must be signed in to change notification settings

camunda-consulting/on-demand-call-activity

Repository files navigation

On-demand Call Activity

A Camunda BPM plugin that allows a BPMN Call Activity to dynamically call a child process or perform an asynchronous service call.

Java CI with Maven

You can find the plugin code on the master branch.

Unsupported Community Extension

This is a community extension and therefore not supported by Camunda as part of its commercial services to enterprise subscription customers.

How to test an engine plugin against the process engine test suite

To check if the plugin has some unexpected side effects to the process engine, you can run the complete engine test suite against a process engine that contains your plugin.

To do this, add the camunda-bpm-platform repository as a remote branch to your repository. Then add your plugin in all variants of camunda.cfg.xml to the engine(s) under test. You can find all configurations in subfolders on src/test/resources with the pattern *camunda*.cfg*.xml.

The steps to do the git branching are listed in details below.

There are several test branches using the Camunda engine test suite:

A GitHub action under maven.yml builds the plugin and runs all tests on GitHub after pushing any change.

How to update to and test with a new Camunda version?

  1. Clone this repository using git clone git@github.com:camunda-consulting/on-demand-call-activity.git
  2. Add Camunda BPM Platform as remote git remote add camunda-bpm-platform git@github.com:camunda/camunda-bpm-platform.git
  3. Repeat the following steps for all engine test suite branch variations, which are currently engine-test-suite-with-child-processes and engine-test-suite-without-child-processes (replace the branch name and version numbers in the comands below):
    1. Checkout branch git checkout engine-test-suite-with-child-processes-7.13.0 with the latest Camunda version
    2. Ensure it is up to date git pull
    3. Create branch for new version git checkout -b engine-test-suite-with-child-processes-7.14.0 (replace 7.14.0 with the version you're updating to)
    4. Pull new version git pull camunda-bpm-platform 7.14.0
    5. If needed edit conflicts git mergetool and commit git merge --continue
    6. Push new branch to GitHub git push --set-upstream origin engine-test-suite-with-child-processes-7.14.0 (old versions branches should be kept; replace 7.13.0 with the version you're updating to)
  4. Switch to master branch git checkout master
  5. Ensure it is up to date git pull
  6. Edit .github/workflows/maven.yml and add new branches to the matrix of the test job, e.g.
  test:
    needs: build
    strategy:
      matrix:
        branch:
        - engine-test-suite-with-child-processes
        - engine-test-suite-without-child-processes
        - engine-test-suite-with-child-processes-7.13.0
        - engine-test-suite-without-child-processes-7.13.0
        - engine-test-suite-with-child-processes-7.14.0
        - engine-test-suite-without-child-processes-7.14.0
  1. Push some change to master to trigger the build
  2. Check test results
  3. Fix or @Ignore failing tests, push the changes, and re-run tests

How to modify the engine-test-suite-* branches?

  1. Checkout git checkout engine-test-suite-with-child-processes
  2. Do the change and git commit && git push
  3. Checkout git checkout engine-test-suite-without-child-processes
  4. Merge git merge engine-test-suite-with-child-processes
  5. If needed edit conflicts git mergetool and commit git merge --continue
  6. git push
  7. Merge the changes into the other versions, e.g.:
    1. engine-test-suite-with-child-processes -> engine-test-suite-with-child-processes-7.13.0
    2. engine-test-suite-with-child-processes-7.13.0 -> engine-test-suite-with-child-processes-7.14.0
    3. engine-test-suite-without-child-processes -> engine-test-suite-without-child-processes-7.13.0
    4. engine-test-suite-without-child-processes-7.13.0 -> engine-test-suite-without-child-processes-7.14.0
  8. Push some change to master to trigger the build
  9. Check test results

About

A Camunda BPM plugin that allows a BPMN Call Activity to dynamically call a child process or perform an asynchronous service call.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages 4

 
 
 
 

Languages