microcks / microcks-ansible-operator

Kubernetes Operator for easy setup and management of Microcks installs
Apache License 2.0
24 stars 5 forks source link

Changing the urls for microcks and keycloak causes Install to fail due to grpc route clash #78

Closed deanpeterson closed 1 year ago

deanpeterson commented 2 years ago

If I change the urls of microcks and keycloak, the install of MicrocksInstall fails because the route for the microcks service clashes with the grpc service on Openshift. There is no way to add a different url in the yaml file upon install.

lbroudoux commented 2 years ago

Hi Dean! Thanks for creating this issue.

Could you explain a bit more the process you're following? Like what is you CR the first time, the routes you get and then the changes you're trying to apply to microcks URLs?

Thanks a lot,

deanpeterson commented 2 years ago

I actually just released a video on me using the operator on Openshift. You can see the exact issue I run into with the process I follow here: https://youtu.be/NY_GC-wxCqA?t=474

The link should take you right to the spot in the video that's relevant.

lbroudoux commented 2 years ago

Hi Dean,

Thanks a lot for the video link (and its creation too!). I succeed in reproducing the bug. This bug is due to the regexp used to compute a hostname for the GRPC route. We're currently using something like

{{ microcks.url|regex_replace('^('~(name|regex_escape())~')(.*)','\\1-grpc\\2') }}

which assumes that the first part of your URL is actually the name attribute you put in your CR spec. In your case you let the default of my-microcksisntall but the URL you specify is microcks.kflowtech.com.

So, a quick workaround would be to change the name to microcks but we have to make this more robust by just extracting the first part of the URL independently of the name.

Thanks again! And do not forget to star the main https://github.com/microcks/microcks repo if you like what we're doing out there! We also welcome contributor blog post if you'd like to promote your video series 😉

lbroudoux commented 2 years ago

A fix has been produced and pushed. The quay.io/microcks/microcks-ansible-operator:nightly container image will embed it in a few minutes. Could you please test it out on your use-case to check GRPS hostname is now fine? Of course, you wouldn't be able to install it directly through OLM but it's just a matter of changing the container image of the already installed operator. Thanks,