gocd / go-cookbook

Cookbook that installs and configures the open-source ThoughtWorks Studios GoCD product
http://www.gocd.org/
Apache License 2.0
44 stars 66 forks source link

(Local) Agent autoregistering with specified environment #80

Open raids opened 8 years ago

raids commented 8 years ago

Hi,

When I use the LWRP the creation of local Go agents, the environments parameter doesn't seem to do anything.

By local, I mean on the same machine as the Go CD Server.

Here's an example of my LWRP implementation:

for i in 0..(node['wrapper_gocd']['agents'] -1)
  name = "go-agent-#{i}"
  gocd_agent name do
    go_server_host 'localhost'
    go_server_port 8153
    daemon true
    vnc    true
    autoregister_key
    autoregister_hostname name
    environments "Alpha"
  end
end

I've tried a few different inputs besides a string, such as an array, or referencing an attribute like #{node['wrapper_gocd']['go_env']}.

I haven't tried with remote agents, but I don't see any issues raised for that, so could this be an issue exclusive to remote agent creation or am I missing something (most likely)?

Thanks, Raid

tomzo commented 8 years ago

Hi, it may be a bug. You can pass a string or array of strings, that should not be an issue.

the environments parameter doesn't seem to do anything.

Could you check the contents of autoregister.properties file in your agent's directory? It should have something like

agent.auto.register.environments = Alpha

Also do you have environment created in Go server?

raids commented 8 years ago

Hey @tomzo

There's no autoregister.properties actually created in my agent's directory. The agent registers to the server just fine, however.

I ran into this when testing the Go backup/restore functionality, so the environments are created as part of the restore. The agents are created after the restore.