From dc08ea73b80db69bcd48932a8b6555396098a6f2 Mon Sep 17 00:00:00 2001 From: Tim Sharpe Date: Fri, 3 Aug 2012 12:05:56 +1000 Subject: [PATCH] Make install non-destructive by default --- lib/librarian/puppet/cli.rb | 4 ++++ lib/librarian/puppet/version.rb | 2 +- vendor/librarian/lib/librarian/action/install.rb | 6 +++++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/librarian/puppet/cli.rb b/lib/librarian/puppet/cli.rb index f9b7490d..078d72af 100644 --- a/lib/librarian/puppet/cli.rb +++ b/lib/librarian/puppet/cli.rb @@ -42,9 +42,13 @@ def init option "clean", :type => :boolean, :default => false option "strip-dot-git", :type => :boolean option "path", :type => :string + option "destructive", :type => :boolean, :default => false def install ensure! clean! if options["clean"] + unless options["destructive"].nil? + environment.config_db.local['destructive'] = options['destructive'].to_s + end if options.include?("strip-dot-git") strip_dot_git_val = options["strip-dot-git"] ? "1" : nil environment.config_db.local["install.strip-dot-git"] = strip_dot_git_val diff --git a/lib/librarian/puppet/version.rb b/lib/librarian/puppet/version.rb index 3069113d..6487ad1a 100644 --- a/lib/librarian/puppet/version.rb +++ b/lib/librarian/puppet/version.rb @@ -1,5 +1,5 @@ module Librarian module Puppet - VERSION = "0.9.1" + VERSION = "0.9.2" end end diff --git a/vendor/librarian/lib/librarian/action/install.rb b/vendor/librarian/lib/librarian/action/install.rb index bea908bb..aa25eab0 100644 --- a/vendor/librarian/lib/librarian/action/install.rb +++ b/vendor/librarian/lib/librarian/action/install.rb @@ -40,7 +40,7 @@ def perform_installation end def create_install_path - install_path.rmtree if install_path.exist? + install_path.rmtree if install_path.exist? && destructive? install_path.mkpath end @@ -54,6 +54,10 @@ def sorted_manifests ManifestSet.sort(lock.manifests) end + def destructive? + environment.config_db.local['destructive'] == 'true' + end + def specfile_name environment.specfile_name end