Closed ddavison closed 6 years ago
Thanks so much, @ddavison
Is there any way you can update the PR to include only the necessary changes? The space/tab changes are making it a bit hard to sort through. Really appreciate it π
sure thing! unfortunately i forgot to separate the commits.. so give me a bit :face_with_head_bandage:
should be a bit more readable now. a couple spacing fixes were unintentionally left in there, as well as blank lines.
Thanks, @ddavison
Looks good! π
Hi @ddavison
I received an issue and some offline complaints about configs getting replaced due to the /etc/rundeck check being removed, so I've added it back in for now. Do you see any problems with having it back in that would affect your work? Thanks π
yea no, that's fine! honestly, in retrospect - it was kind of a destructive change that i probably should not have put in. no worries though. all is well.
Great! Thanks for confirming, @ddavison I had missed it during the PR merge π
Summation of changes:
grails.serverURL
to be omitted/etc/rundeck
for existence. If it found this directory, then it would skip. The reason for this change is for idempotence.Problem description:
When launching the
jordan/rundeck
container from an orchestration tool like Kubernetes, OpenShift or AppOrbit; The image is given a dynamic IP of hosts to host from. Rundeck'sgrails.serverURL
controls how grails will redirect the application. When this property is commented out, rundeck refuses to forcibly redirect and leaves it to relative pathing.Examples:
Before change
After logging in, a header is sent from rundeck to redirect to "http://localhost:4440. fine. If this container was launched from AppOrbit, or another orchestration tool that dynamically assigns the IP, the IP can be impossible to obtain. Therefore, rundeck would attempt to redirect to an invalid ip/host.
After change
I've tested this thoroughly and validates that this indeed works.
Source material:
There could be unknown side-effects of this change, however the ability for the explicit setting of
EXTERNAL_SERVER_URL
should bypass any of those cases.