Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is the VNC option necessary on Go Agents? #4005

Closed
varshavaradarajan opened this issue Nov 13, 2017 · 2 comments

Comments

Projects
None yet
4 participants
@varshavaradarajan
Copy link
Contributor

commented Nov 13, 2017

Summary

Currently, while starting the go agent via https://github.com/gocd/gocd/blob/master/installers/go-agent/release/agent.sh , if VNC is set to Y, an attempt is made to start the vnc server with display number 3.

Issues:

  1. Suppose vnc is not installed, this script proceeds with starting the agent anyway.
  2. Suppose the go user doesn't have the vnc password set yet, then, it gets prompted and unless someone enters the password, the go agent does not get started
  3. Suppose the display is not available, the script proceeds with starting the agent.

While 1 and 3 require some configuration to be done outside of go and 2 hinders automation, is it necessary to take care of starting the vnc server while starting the go agent?
I think that this option was provided in case the agent was running some tests which needed a display. But the argument is that anything that is needed on the agent is to be maintained completely by the user. We don't install any other package or configure anything else while starting the go agent, so why should vnc be an exception? Why start the vnc server when the user has to anyway take care of making sure its starts properly?

If we do get rid of this, the users who have been using this won't get affected until they upgrade the bootstrapper. Thoughts?

@arvindsv

This comment has been minimized.

Copy link
Member

commented Nov 15, 2017

I don't mind getting rid of it. It does seem out of place.

varshavaradarajan added a commit to varshavaradarajan/gocd that referenced this issue Nov 21, 2017

Remove the code related to starting vncserver. (gocd#4005)
* Users having the old bootstrapper will not be affected by this change.

varshavaradarajan added a commit to varshavaradarajan/gocd that referenced this issue Nov 22, 2017

Remove the code related to starting vncserver. (gocd#4005)
* Users having the old bootstrapper will not be affected by this change.
@ketan

This comment has been minimized.

Copy link
Member

commented Nov 30, 2017

Alternatives to the VNC flag

This flag was introduced in the configuration file to

(a) allow the GoCD agent process to be able to access an X11 window system for running UI tests and
(b) to allow users to connect to the running vnc server remotely to diagnose problems

This added an additional overhead on having to interactively setup a VNC password the first time VNC was executed by the GoCD agent.

It is now recommended that users wrap their tasks with the xvfb-run command as follows:

Before:

rake ci:jasmine

After:

xvfb-run rake ci:jasmine

ketan added a commit to varshavaradarajan/gocd that referenced this issue Nov 30, 2017

Remove the code related to starting vncserver. (gocd#4005)
* Users having the old bootstrapper will not be affected by this change.

@ketan ketan added this to the Release 17.12 milestone Nov 30, 2017

@rajiesh rajiesh modified the milestones: Release 17.12, Release 18.1 Dec 8, 2017

@rajiesh rajiesh closed this Dec 8, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.