summaryrefslogtreecommitdiff
path: root/lib/chef/knife/cookbook_site_share.rb
diff options
context:
space:
mode:
authorsawanoboly <sawanoboriyu@higanworks.com>2014-07-31 19:33:26 +0900
committersawanoboly <sawanoboriyu@higanworks.com>2014-07-31 19:33:26 +0900
commit2902d708445e4335b548a5021bd8a69ca512077a (patch)
treecd0411d5c736ebd8505f338daac39ebbfad8486e /lib/chef/knife/cookbook_site_share.rb
parentbfe0ac206c5723637772d8b9b3a48a4d94f5c21f (diff)
downloadchef-2902d708445e4335b548a5021bd8a69ca512077a.tar.gz
Add option --prevew-archive to `knife cookbook site share`
Diffstat (limited to 'lib/chef/knife/cookbook_site_share.rb')
-rw-r--r--lib/chef/knife/cookbook_site_share.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/chef/knife/cookbook_site_share.rb b/lib/chef/knife/cookbook_site_share.rb
index 330f3cb229..317da680b0 100644
--- a/lib/chef/knife/cookbook_site_share.rb
+++ b/lib/chef/knife/cookbook_site_share.rb
@@ -40,6 +40,11 @@ class Chef
:description => "A colon-separated path to look for cookbooks in",
:proc => lambda { |o| Chef::Config.cookbook_path = o.split(":") }
+ option :prevew_archive,
+ :long => "--prevew-archive",
+ :description => "Only preview archived files. (Don't upload.)",
+ :boolean => true
+
def run
if @name_args.length < 2
show_usage
@@ -66,6 +71,14 @@ class Chef
exit(1)
end
+ if config[:prevew_archive]
+ ui.warn("These files will upload to supermarket. Be careful.")
+ result = shell_out!("tar -tzf #{cookbook_name}.tgz", :cwd => tmp_cookbook_dir)
+ ui.info(result.stdout)
+ FileUtils.rm_rf tmp_cookbook_dir
+ return
+ end
+
begin
do_upload("#{tmp_cookbook_dir}/#{cookbook_name}.tgz", category, Chef::Config[:node_name], Chef::Config[:client_key])
ui.info("Upload complete!")