Is it possible to modify / extend / create plugin for support SAP Cloud Platform Integration?
Is it possible to modify camunda to support different bpmn 2 model, add items on toolbar and customize deployment ?
Is it possible to modify / extend / create plugin for support SAP Cloud Platform Integration?
Do you mean in terms of deploying processes to SAP Cloud?
Is it possible to modify camunda to support different bpmn 2 model
What do you mean by that, can you be a bit more specific?
add items on toolbar
yes, this is available via client extensions. You can read about that this blog post (Extension Point for UI Plugins)
customize deployment
that’s currently not possible.You would need to implement your own deployment functionality, e.g. by a client extension
I mean Design a process directly with Camunda and deploy it on Sap CPI.
CPI has some bpmn 2 customization with specialized object for connectors, scripts, conversions, I want to add them on list of standard camunda objects to use them on design.
I will read extension documentation for UI
I can deploy by API requests, so if I create a client extension I can deploy on different server than camunda?
Thank for answer.
CPI has some bpmn 2 customization with specialized object for connectors, scripts, conversions, I want to add them on list of standard camunda objects to use them on design
This also possible by extending the moddle descriptors via a plugin. This and this might be helpful.
I can deploy by API requests, so if I create a client extension I can deploy on different server than camunda?
Correct! Feel free to ask specifically if you need help with this. You can have a look at how the deployment tool is built for inspiration.
We would be very interested if you came up with a solution for that
feel free to contact me by telegram @Bais73 or on a new channel https://t.me/sap_hci
I saw documentation but it’s not for complete with a tutorial to understand all passages, I’ve installed plugins but they stay on Grey.
I f you want we can chat and fix some points together, after that I will continue alone.
@Federico_Bellizia why do you not want to use the editors that come with cpi ?
About 60 open points, but I already wrote to CPI Developers a lot of time and they just put some on road, they passed from offline Eclipse plugin editor to WebUi editor, this change changed our production time of new workflow about 10 times slowly. We asked for 2 years to leave Eclipse Plugin on opensource community so we can update it but they replay : SAP doesn’t release any source of product, so the alternative is to use a product opensource like Camunda to edit a BPMP 2 and deploy it instead using it.
The FIRST point of 60 : 1) IDE without copy/paste/undo system is a nightmare of developing.
So immagine our frustration, we give all solutions and alternative on our thread, we are not just trolling, we studied other products like best one Boomi and other like Talent. We are using camunda on backend and it’s normally to think we can use on Integration too.
After this motivation, do you have some help to improve this thread?
Well basically you need to extend the modeler with your custom objects and custom XML definition. (Not a 5 min job). But lots of people on forum.bpmn.io discuss various use cases such as this.
Are all of the actions you want to perform in the Bpmn, available through a rest/ some sort of API? May be easier to build API wrappers then try and manage interop with their XML. (Depending on the weirdness of their XML compared to the API usage and available clients)
There is deploy api and I can use it to deploy package with flow directly on tenant.
API Documentation:
Get an integration flow by Id and version.
You can use the following request to get an integration flow of designtime by Id and version. Further details can be found in the blog Remote OData APIs for Integration Flows.
curl --request POST --url “https://sandbox.api.sap.com/cpi/api/v1/IntegrationDesigntimeArtifacts” --header “APIKey: <API_KEY>” --header “Accept: application/json” --header “Content-Type: application/json” --header “X-CSRF-Token: string”
Get an integration flow by Id and version.
You can use the following request to get an integration flow of designtime by Id and version. Further details can be found in the blog Remote OData APIs for Integration Flows.
curl --request GET --url “https://sandbox.api.sap.com/cpi/api/v1/IntegrationDesigntimeArtifacts(Id=’’’{Id}’’’,Version=’’’{Version}’’’)” --header “APIKey: <API_KEY>” --header “Accept: application/json” --header “Content-Type: application/json”
Delete an integration flow.
You can use the following request to delete an integration flow from designtime. Further details can be found in the blog Remote OData APIs for Integration Flows.
curl --request DELETE --url “https://sandbox.api.sap.com/cpi/api/v1/IntegrationDesigntimeArtifacts(Id=’’’{Id}’’’,Version=’’’{Version}’’’)” --header “APIKey: <API_KEY>” --header “Accept: application/json” --header “Content-Type: application/json” --header “X-CSRF-Token: string”
Download an integration flow as zip file.
You can use the following request to download an integration flow of designtime as zip file. Integration flows of configure-only packages cannot be downloaded. Further details can be found in the blog Remote OData APIs for Integration Flows.
curl --request GET --url “https://sandbox.api.sap.com/cpi/api/v1/IntegrationDesigntimeArtifacts(Id=’’’{Id}’’’,Version=’’’{Version}’’’)/$value” --header “APIKey: <API_KEY>” --header “Accept: application/json” --header “Content-Type: application/json”
Deploy an integration flow.
You can use the following request to deploy an integration flow of designtime. Further details can be found in the blog Remote OData APIs for Integration Flows.
curl --request POST --url “https://sandbox.api.sap.com/cpi/api/v1/IntegrationDesigntimeArtifact.DeployIntegrationDesigntimeArtifact?Id=string&Version=string” --header “APIKey: <API_KEY>” --header “Accept: application/json” --header “Content-Type: application/json” --header “X-CSRF-Token: string”
For all API REST there are code snipped in various languages, javascript could be useful (because camunda use nodejs on plugins)
I must to create a “Plugin configuration” with authentication informations and next an “Import” function to download from list of deployed object “Create iFlow” for create a ne sap cpi project and, “Deploy iFlow” for send it on server.
When I use Camunda to load iFlow from CPI it showed me with “standard” elements without all properties they are setting, but basically they are compatible.
I want to improve Item list of camunda to support adapter and items of this bpmn
And example:
the iFlow:
Test Camunda.iflw.xml (21.3 KB)
The Manifest:
MANIFEST.MF.txt (2.4 KB)
The package with workflow structure is:
Test Camunda> dir -s
Directory: C:\Users\testuser\Downloads\Test Camunda
Mode LastWriteTime Length Name
d----- 29/02/2020 19:07 META-INF
d----- 29/02/2020 19:04 src
-a---- 29/02/2020 19:04 484 .project
-a---- 29/02/2020 19:04 134 metainfo.prop
Directory: C:\Users\testuser\Downloads\Test Camunda\META-INF
Mode LastWriteTime Length Name
-a---- 29/02/2020 19:04 2494 MANIFEST.MF
Directory: C:\Users\testuser\Downloads\Test Camunda\src
Mode LastWriteTime Length Name
d----- 29/02/2020 19:04 main
Directory: C:\Users\testuser\Downloads\Test Camunda\src\main
Mode LastWriteTime Length Name
d----- 29/02/2020 19:04 resources
Directory: C:\Users\testuser\Downloads\Test Camunda\src\main\resources
Mode LastWriteTime Length Name
d----- 29/02/2020 19:04 scenarioflows
-a---- 29/02/2020 19:04 30 parameters.prop
-a---- 29/02/2020 19:04 82 parameters.propdef
Directory: C:\Users\testuser\Downloads\Test Camunda\src\main\resources\scenarioflows
Mode LastWriteTime Length Name
d----- 29/02/2020 19:05 integrationflow
Directory: C:\Users\testuser\Downloads\Test Camunda\src\main\resources\scenarioflows\integrationflow
Mode LastWriteTime Length Name
-a---- 29/02/2020 19:04 21825 Test Camunda.iflw
I know it’s not a 5 minutes operation, but I already used camunda to check xml integrity and it worked well.