ldaley / grails-remote-control

Facilitates executing commands (closures) against remote or local Grails applications
Apache License 2.0
23 stars 16 forks source link

Unable to work with remotes #18

Closed johnlim closed 10 years ago

johnlim commented 10 years ago

Hi,

I have my application war deployed on a remote staging server. The war file was build with the following command grails -Dgrails.env=staging war

In my Config.groovy, I've specified

environments {
  staging {
    remoteControl.enabled = true
  }
}

In my GebConfig, I've specified the baseUrl to my remote. An example as follows:

baseUrl = 'http://example.example.net/' //example only

However, when I run grails test-app functional:, remote control does not setup my database correctly. Testing it with curl as described here, shows that the endpoint is not exposed. Can you please advise how I can resolve this? Thanks.

Regards, John

johnlim commented 10 years ago

Hi,

i did a little more troubleshooting and it seems either grails or the remote control plugin is not respecting . -baseUrl. I'm starting my test now via: grails test-app functional: -baseUrl=http://MyApp. However, the console output always show Server running. Browse to http://localhost:8080/MyApp. This results in remote control setting up the database at localhost instead of the intended remote specified by -baseUrl. I found a similar issue raised here in stackoverflow. Can someone please advise how I can get remote control to set up the database specified by baseUrl? Thanks.

johnlim commented 10 years ago

After even more troubleshooting, getFunctionalTestBaseUrl in RemoteControl.groovy is always returning http://localhost:8080/MyApp irregardless of the -baseUrl setting on the command line. The environment variable grails.testing.functional.baseUrl is always pointing to localhost. I found a similar issue at http://jira.grails.org/browse/GRAILS-10661 and dropped a comment but I'm not sure if it'll get any visibility since the issue has been closed. My current workaround is to hardcode/set grails.testing.functional.baseUrl via System.setProperty in my functional tests.

ldaley commented 10 years ago

This is a problem in Grails. The remote control plugin is just using the address that Grails is telling it is the application address.