Skip to content
This repository was archived by the owner on Jul 30, 2018. It is now read-only.

/etc/default/go-agent template is not replaced on run #66

Open
ayoyoness opened this issue Jan 11, 2017 · 5 comments
Open

/etc/default/go-agent template is not replaced on run #66

ayoyoness opened this issue Jan 11, 2017 · 5 comments

Comments

@ayoyoness
Copy link

For some reason we still have something like

GO_SERVER_URL=https://go-server:8154/go/

in /etc/default/go-agent when the agent is started.
And so the supplied GO_SERVER_URL is not used but instead stays as go-server.

The log shows confirms:

*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 8
Starting Go Agent to connect to server go-server ...
[Wed Jan 11 10:59:31 UTC 2017] using default settings from /etc/default/go-agent
logFile Environment Variable= null
Logging to go-agent-bootstrapper.log
0 [TouchLoopThread-2] INFO com.thoughtworks.go.agent.launcher.Lockfile  - Using lock file: /var/lib/go-agent/.agent-bootstrapper.running
Jan 11 10:59:31 gocd-agent-11-s7ma4 syslog-ng[15]: syslog-ng starting up; version='3.5.3'
493 [main] ERROR com.thoughtworks.go.agent.launcher.ServerBinaryDownloader  - Couldn't update admin/agent-launcher.jar. Sleeping for 1m. Error: 
java.net.UnknownHostException: go-server: Name or service not known
	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
	at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:922)
	at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1316)
	at java.net.InetAddress.getAllByName0(InetAddress.java:1269)
	at java.net.InetAddress.getAllByName(InetAddress.java:1185)
	at java.net.InetAddress.getAllByName(InetAddress.java:1119)
	at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:45)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:111)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
	at com.thoughtworks.go.agent.launcher.ServerBinaryDownloader.fetchUpdateCheckHeaders(ServerBinaryDownloader.java:100)
	at com.thoughtworks.go.agent.launcher.ServerBinaryDownloader.downloadIfNecessary(ServerBinaryDownloader.java:75)
	at com.thoughtworks.go.agent.launcher.AgentLauncherImpl.launch(AgentLauncherImpl.java:78)
	at com.thoughtworks.go.agent.bootstrapper.AgentBootstrapper.go(AgentBootstrapper.java:77)
	at com.thoughtworks.go.agent.bootstrapper.AgentBootstrapper.main(AgentBootstrapper.java:58)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.simontuffs.onejar.Boot.run(Boot.java:306)
	at com.simontuffs.onejar.Boot.main(Boot.java:159)

Somehow this line https://github.com/gocd/gocd-docker/blob/master/phusion/agent/go-agent-start.sh#L10 fails or is not run...

@arvindsv
Copy link
Member

@ayoyoness: I had recently changed the part of the description which talks about how to start the agent and didn't check whether it was working. :(

Either of this should work:

docker run -ti --link container-id-of-go-server:go-server gocd/gocd-agent

OR:

docker run -ti -e GO_SERVER=hostname-of-go-server gocd/gocd-agent

Note that in the second form, it is expected that the server is at port 8154. I will be submitting a PR soon, to make the environment variable GO_SERVER_URL work.

Thanks!

@arvindsv
Copy link
Member

Submitted a PR for this (#67). Changed description on DockerHub to show something which works for now.

@AtomiclyCursed
Copy link

/etc/default/go-agent is getting imported on run replacing the provided environment var GO_SERVER_URL with the one in it, so it results in GO_SERVER_URL = https://127.0.0.1:8154/go

@arvindsv
Copy link
Member

@agalpin: Are you saying it's working fine now? Or not?

@AtomiclyCursed
Copy link

AtomiclyCursed commented Feb 14, 2017

@arvindsv I had to manually remove the first line of /etc/default/go-agent which is GO_SERVER_URL=https://127.0.0.1:8154/go to make it work

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants