17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# File 'lib/chef/knife/spork-environment-create.rb', line 17
def run
self.class.send(:include, KnifeSpork::Runner)
self.config = Chef::Config.merge!(config)
if @name_args.empty?
show_usage
ui.error("You must specify a environment name")
exit 1
end
@object_name = @name_args.first
run_plugins(:before_environmentcreate)
begin
check_environment = load_environment(@object_name)
if check_environment
ui.confirm("It looks like the environment #{@object_name} already exists. Are you sure you want to overwrite it")
end
rescue Net::HTTPServerException
end
pre_environment = {}
environment_create
post_environment = load_environment(@object_name)
if spork_config[:save_environment_locally_on_create]
ui.msg "Saving environment changes to #{@object_name}.json"
save_environment_changes(@object_name, pretty_print_json(post_environment))
end
@object_difference = json_diff(pre_environment,post_environment).to_s
run_plugins(:after_environmentcreate)
end
|