roxy icon indicating copy to clipboard operation
roxy copied to clipboard

supporting XCC clients with an ML8 REST instance

Open joemfb opened this issue 10 years ago • 3 comments

I started to write this as a comment on #540, but it's really a separate issue:

Starting with MarkLogic 8, REST API instances fully support XCC as well as all the REST endpoints. It seems wasteful, then to bootstrap an XCC server as well.

Currently, this outcome can be achieved by disabling XCC bootstrap, and matching the xcc-server port to the app-server port, so that commands like ./ml {ENV} mlcp target the correct port.

install-xcc=false
xcc-port=${app-port}

However, this configuration is unintuitive, and quickly falls apart if pointed at an older version of MarkLogic 7.

What could be done to make this easier?

joemfb avatar Oct 23 '15 18:10 joemfb

With install-xcc=false, I'd be inclined to comment out xcc-port to avoid confusion. Roxy can set xcc-port to the same as app-port internally to keep the code simple.

dmcassel avatar Oct 23 '15 19:10 dmcassel

In addition, Roxy could at least compare the three, depending on server-version..

grtjn avatar Oct 23 '15 20:10 grtjn

I think simplest would be to check if properties["app-port"] = properties["xcc-port"] and warning if install-xcc = true. xcc-port is defined with a default in default.properties, maybe even in build.properties. We use the combi of app-port=xx, xcc-port=${app-port}, install-xcc=false with great success in slush, but it gets generated that way (and only for ML8+ of course). If Roxy checks the settings, and gives appropriate suggestions if something is wrong, that should work well I think..

grtjn avatar Jun 13 '17 20:06 grtjn