rundeck icon indicating copy to clipboard operation
rundeck copied to clipboard

Deprecate chef-rundeck

Open ev0ldave opened this issue 7 years ago • 8 comments

@atheiman Deprecate chef-rundeck as the project has gone stale and a better constructed project has evolved since then that is more flexible. Possibly include support for better-chef-rundeck? Would like to discuss moving this into it's own cookbook.

ev0ldave avatar Aug 01 '17 18:08 ev0ldave

i dont think that needs to be its own cookbook. at my office we run better-chef-rundeck using simple-passenger-cookbook. all that is needed is to set a few attrs and include_recipe 'simple_passenger::default'

# attributes.rb
default['passenger']['apps']['better-chef-rundeck'].tap do |bcr|
  bcr['git_repo'] = 'https://github.com/atheiman/better-chef-rundeck.git'
  bcr['git_revision'] = 'v0.5.0'
  bcr['passengerfile']['port'] = 8080
  bcr['passengerfile']['user'] = 'rundeck'
  bcr['passengerfile']['group'] = 'rundeck'
  bcr['ruby_bin'] = '/opt/chef/embedded/bin/ruby'
end

# recipe.rb
include_recipe 'simple_passenger'

atheiman avatar Aug 01 '17 19:08 atheiman

(Related: #140, #102)

gsreynolds avatar Aug 01 '17 20:08 gsreynolds

Quick brain dump/Note to self & others from our wrapper cookbook, for Chef 13 and for compatibility with how chef-rundeck translated chef node data to rundeck source config:

Until https://github.com/atheiman/better-chef-rundeck/pull/31 is merged, use ev0ldave branch chef13.

# attributes.rb
default['passenger']['apps']['better-chef-rundeck'].tap do |bcr|
  bcr['git_repo'] = 'https://github.com/ev0ldave/better-chef-rundeck.git'
  bcr['git_revision'] = 'chef13'
  bcr['passengerfile']['port'] = 8080
  bcr['passengerfile']['user'] = 'rundeck'
  bcr['passengerfile']['group'] = 'rundeck'
  bcr['passengerfile']['envvars'] = { "BCR_CHEF_CONFIG": "/etc/chef/rundeck.rb" }
  bcr['ruby_bin'] = '/opt/chef/embedded/bin/ruby'
end
# recipe.rb
include_recipe 'simple_passenger'

By default better-chef-rundeck behaves differently to chef-rundeck in the attributes it returns, doesn't set hostname and nor a default username. Rundeck is unable to connect to remote nodes without these attributes.

chef-rundeck also translated the chef roles to rundeck tags for filtering and display in the UI, whereas better-chef-rundeck translates chef tags to rundeck tags (which is admittedly more correct but I'd argue less useful as at least from a personal point of view roles are more widely applied than tags in terms of grouping types of nodes).

"project_settings": {
  "resources.source.1.config.url": "http://localhost:8080/*:*?environment=chef_environment&hostname=fqdn&ip=ipaddress&run_list=run_list&roles=roles&platform=platform&tags=roles&default_username=rundeck"
}

(for reference: https://github.com/atheiman/better-chef-rundeck/blob/83f7d9bfbaaaff9e310e21788b846c6c294f0e07/lib/better_chef_rundeck.rb)

gsreynolds avatar Nov 24 '17 12:11 gsreynolds

Quick brain dump/Note to self & others from our wrapper cookbook, for Chef 13 and for compatibility with how chef-rundeck translated chef node data to rundeck source config:

Until atheiman/better-chef-rundeck#31 is merged, use ev0ldave branch chef13.

# attributes.rb
default['passenger']['apps']['better-chef-rundeck'].tap do |bcr|
  bcr['git_repo'] = 'https://github.com/ev0ldave/better-chef-rundeck.git'
  bcr['git_revision'] = 'chef13'
  bcr['passengerfile']['port'] = 8080
  bcr['passengerfile']['user'] = 'rundeck'
  bcr['passengerfile']['group'] = 'rundeck'
  bcr['passengerfile']['envvars'] = { "BCR_CHEF_CONFIG": "/etc/chef/rundeck.rb" }
  bcr['ruby_bin'] = '/opt/chef/embedded/bin/ruby'
end
# recipe.rb
include_recipe 'simple_passenger'

By default better-chef-rundeck behaves differently to chef-rundeck in the attributes it returns, doesn't set hostname and nor a default username. Rundeck is unable to connect to remote nodes without these attributes.

chef-rundeck also translated the chef roles to rundeck tags for filtering and display in the UI, whereas better-chef-rundeck translates chef tags to rundeck tags (which is admittedly more correct but I'd argue less useful as at least from a personal point of view roles are more widely applied than tags in terms of grouping types of nodes).

"project_settings": {
  "resources.source.1.config.url": "http://localhost:8080/*:*?environment=chef_environment&hostname=fqdn&ip=ipaddress&run_list=run_list&roles=roles&platform=platform&tags=roles&default_username=rundeck"
}

(for reference: https://github.com/atheiman/better-chef-rundeck/blob/83f7d9bfbaaaff9e310e21788b846c6c294f0e07/lib/better_chef_rundeck.rb)

Are you still using this solution? When using simple_passenger I encounter https://github.com/atheiman/simple-passenger-cookbook/issues/31

PowerSchill avatar Nov 11 '18 14:11 PowerSchill

Until atheiman/better-chef-rundeck#31 is merged, use ev0ldave branch chef13.

Seems they made a replacement pull atheiman/better-chef-rundeck#35 -- does that make the world go round?

mengesb avatar Feb 05 '19 07:02 mengesb

chef-rundeck also translated the chef roles to rundeck tags for filtering and display in the UI, whereas better-chef-rundeck translates chef tags to rundeck tags (which is admittedly more correct but I'd argue less useful as at least from a personal point of view roles are more widely applied than tags in terms of grouping types of nodes).

While I agree is there a way which we can provide a merge option ? merge roles and tags ; or just allow tags ? Or is that totally up to better-chef-rundeck?

I think working with a functional product is going to out-weigh working with a dead one; if we can give the user an option as to which to install great, however I'd rather adopt better-chef-rundeck as it is presently developed and not abandoned even if it is a shift -- should be noted

mengesb avatar Feb 05 '19 07:02 mengesb

I think this seems like a sensible step and a pretty darn simple one. Once someone can work on the issue please go ahead!

damacus avatar Aug 07 '19 18:08 damacus

FYI: @bscott is back at https://github.com/oswaldlabs/chef-rundeck/issues/71

josephholsten avatar Sep 30 '20 23:09 josephholsten