camunda / camunda-modeler

An integrated modeling solution for BPMN, DMN and Forms based on bpmn.io.
https://camunda.com/products/modeler
MIT License
1.51k stars 484 forks source link

Add /operate base path in Operate urls #4329

Open houssain-barouni opened 5 months ago

houssain-barouni commented 5 months ago

Problem you would like to solve

In scope of C8 single application creation (part of C8 streamlining project). we need to add /operate base path in Operate webapp urls: only webapp UI urls , API urls will remain the same. This is only applicable to 8.6 of higher versions Target release: 8.6.0-alpha3

Proposed solution

We need to append /operate to the clusterUrl, when the selected C8 version is 8.6 or higher

Alternatives considered

N/A

Additional context

Tasklist issue where /tasklist and /operate are added to the webapps urls: https://github.com/camunda/camunda/issues/18535 Console issue: https://github.com/camunda-cloud/camunda-cloud-management-apps/issues/2917

nikku commented 5 months ago

@houssain-barouni Would auto-discovery of the operate URL be applicable in the single application context? Cf. https://github.com/camunda/camunda-modeler/issues/4261#issuecomment-2107116465.

If so, let's build discovery of the operate application URLs off a solid infrastructure; we do not want to guess in our modeler(s) where to find the webapp URL.

nikku commented 5 months ago

We need to append /operate to the clusterUrl, when the selected C8 version is 8.6 or higher

@houssain-barouni Do we have to do this for all links to Operate, and why? This breaks any application that links to operate in C8 (SaaS).

houssain-barouni commented 5 months ago

@houssain-barouni Would auto-discovery of the operate URL be applicable in the single application context? Cf. #4261 (comment).

If so, let's build discovery of the operate application URLs off a solid infrastructure; we do not want to guess in our modeler(s) where to find the webapp URL.

Hi @nikku , if you hit Operate root url, you will be redirected to {{operateRootUrl}}/operate , would it make sense to use this redirection? Please note that if your use other urls like {{operateRootUrl}}/processes, there will be no redirection

houssain-barouni commented 5 months ago

We need to append /operate to the clusterUrl, when the selected C8 version is 8.6 or higher

@houssain-barouni Do we have to do this for all links to Operate, and why? This breaks any application that links to operate in C8 (SaaS).

@nikku yes Operate and tasklist Webapp URLs will be changed, but not the API urls this is needed because we are aiming to have a single application that can serve both Tasklist and Operate. So we need a selector between both UIs. We did not want to have different behaviours between single application and standalone Tasklist/Operate

The link updates in SaaS should be covered by https://github.com/camunda-cloud/camunda-cloud-management-apps/issues/2917

nikku commented 5 months ago

Please note that if your use other urls like {{operateRootUrl}}/processes, there will be no redirection

This is why I'm wondering if this change is needed (for SaaS), breaking all deep links from existing (customer) applications.


Could you answer this?

@houssain-barouni Would auto-discovery of the operate URL be applicable in the single application context? Cf. https://github.com/camunda/camunda-modeler/issues/4261#issuecomment-2107116465.

houssain-barouni commented 5 months ago

Could you answer this?

@houssain-barouni Would auto-discovery of the operate URL be applicable in the single application context? Cf. #4261 (comment).

Would the .well-known be served by the cluster endpoint (zeebe endpoint) ? @nikku

nikku commented 5 months ago

.well-known will be served from the root of the REST API (or whatever API) which is being used:

In Desktop Modeler we use this pattern to resolve the same issue in C7 context (different place for web apps, auto-discovered from REST endpoint URL).

nikku commented 5 months ago

@houssain-barouni I assume given the recent slight change in direction this is not an immediate priority anymore? We're happy to build support for using .well-known based discovery of the webapps into the modeler so it is available for our users as soon as the C8 platform provides it.

houssain-barouni commented 5 months ago

@nikku our main focus in alpha3 was to have Tasklist in the C8 single application. So, we have implemented the redirection of routes as temporary workaround. I will talk to @romansmirnov to check how can we proceed with this auto-discovery service implementation

barmac commented 4 months ago

I am moving this to backlog until any further updates are shared.