Sha256: f75ed5af859855f9e3d1c300f8d3078d472d195f0db3982194e5884bf383d0f1

Contents?: true

Size: 832 Bytes

Versions: 23

Compression:

Stored size: 832 Bytes

Contents

# frozen_string_literal: true

require 'log4r'

module VagrantPlugins
  module ProviderLibvirt
    module Action
      class CleanMachineFolder

        def initialize(app, env, options=nil)
          @logger = Log4r::Logger.new('vagrant_libvirt::action::create_domain')
          @app = app
          @ui = env[:ui]
          @quiet = (options || {}).fetch(:quiet, false)
        end

        def call(env)
          machine_folder = env[:machine].data_dir

          @ui.info("Deleting the machine folder") unless @quiet

          @logger.debug("Recursively removing: #{machine_folder}")
          FileUtils.rm_rf(machine_folder, :secure => true)
          # need to recreate to prevent exception during a cancelled up
          FileUtils.mkdir_p(machine_folder)

          @app.call(env)
        end
      end
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
vagrant-libvirt-0.12.2 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.12.1 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.12.0 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.11.2 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.11.1 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.8 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.7 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.6 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.5 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.4 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.3 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.2 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.1 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.10.0 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.9.0 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.8.2 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.8.1 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.8.0 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.7.0 lib/vagrant-libvirt/action/clean_machine_folder.rb
vagrant-libvirt-0.6.3 lib/vagrant-libvirt/action/clean_machine_folder.rb