summaryrefslogtreecommitdiff
path: root/lib/chef/knife/role_run_list_add.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chef/knife/role_run_list_add.rb')
-rw-r--r--lib/chef/knife/role_run_list_add.rb87
1 files changed, 0 insertions, 87 deletions
diff --git a/lib/chef/knife/role_run_list_add.rb b/lib/chef/knife/role_run_list_add.rb
deleted file mode 100644
index 76633ff5f6..0000000000
--- a/lib/chef/knife/role_run_list_add.rb
+++ /dev/null
@@ -1,87 +0,0 @@
-#
-# Author:: Adam Jacob (<adam@chef.io>)
-# Author:: William Albenzi (<walbenzi@gmail.com>)
-# Copyright:: Copyright (c) Chef Software Inc.
-# License:: Apache License, Version 2.0
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-require_relative "../knife"
-
-class Chef
- class Knife
- class RoleRunListAdd < Knife
-
- deps do
- require_relative "../role"
- require_relative "../json_compat"
- end
-
- banner "knife role run_list add [ROLE] [ENTRY [ENTRY]] (options)"
-
- option :after,
- short: "-a ITEM",
- long: "--after ITEM",
- description: "Place the ENTRY in the run list after ITEM."
-
- def add_to_env_run_list(role, environment, entries, after = nil)
- if after
- nlist = []
- unless role.env_run_lists.key?(environment)
- role.env_run_lists_add(environment => nlist)
- end
- role.run_list_for(environment).each do |entry|
- nlist << entry
- if entry == after
- entries.each { |e| nlist << e }
- end
- end
- role.env_run_lists_add(environment => nlist)
- else
- nlist = []
- unless role.env_run_lists.key?(environment)
- role.env_run_lists_add(environment => nlist)
- end
- role.run_list_for(environment).each do |entry|
- nlist << entry
- end
- entries.each { |e| nlist << e }
- role.env_run_lists_add(environment => nlist)
- end
- end
-
- def run
- role = Chef::Role.load(@name_args[0])
- role.name(@name_args[0])
- environment = "_default"
-
- if @name_args.size > 1
- # Check for nested lists and create a single plain one
- entries = @name_args[1..].map do |entry|
- entry.split(",").map(&:strip)
- end.flatten
- else
- # Convert to array and remove the extra spaces
- entries = @name_args[1].split(",").map(&:strip)
- end
-
- add_to_env_run_list(role, environment, entries, config[:after])
- role.save
- config[:env_run_list] = true
- output(format_for_display(role))
- end
-
- end
- end
-end