When trying out the intellij devfile - https://raw.githubusercontent.com/redhat-developer/codeready-workspaces/crw-2.5-rhel-8/dependencies/che-editor-intellij-community/devfiles/meta.yaml
it includes this:
spec:
endpoints:
- name: "intellij"
As such the first workspace created will create a Intellij service, but trying to create a second will cause a fatal error with the following message:
Error: Failed to run the workspace: "Failure executing: POST at: https://172.30.0.1/api/v1/namespaces/openshift-workspaces/services. Message: services "intellij" already exists. Received status: Status(apiVersion=v1, code=409, details=StatusDetails(causes=[], group=null, kind=services, name=intellij, retryAfterSeconds=null, uid=null, additionalProperties={}), kind=Status, message=services "intellij" already exists, metadata=ListMeta(_continue=null, remainingItemCount=null, resourceVersion=null, selfLink=null, additionalProperties={}), reason=AlreadyExists, status=Failure, additionalProperties={})."
Has been seen in CRW 2.5 on OCP 4.6 and che.openshift.io
The difference between IntelliJ and Che Theia endpoints is that Che Theia one has the following attributes:
secure: true
cookiesAuthEnabled: true
discoverable: false
So, may be related.
not sure what are the default values if the attributes are omitted
@metlos suggested in the chat to define discoverable: false explicitly
as the plugin endpoints are discoverable by default
https://github.com/eclipse/che/blob/3e72212e8b793df8b9b5d7b02469bc2fea432038/infrastructures/kubernetes/src/main/java/org/eclipse/che/workspace/infrastructure/kubernetes/wsplugins/SidecarServicesProvisioner.java#L75
I've sent a PR to fix the plugin descriptor file upstream https://github.com/eclipse/che-plugin-registry/pull/691