Sha256: b6ac31cdc22b40dc011d783b036decc8697d19dbc8a6543ac7c9c7cbeaf6ba2f

Contents?: true

Size: 683 Bytes

Versions: 1

Compression:

Stored size: 683 Bytes

Contents

require 'knife-solo/knife_solo_error'

module KnifeSolo
  module KitchenCommand
    class OutOfKitchenError < KnifeSoloError
      def message
        "This command must be run inside a Chef solo kitchen."
      end
    end

    def self.required_files
      %w(solo.rb)
    end

    def run
      raise OutOfKitchenError.new unless required_files_present?
    end

    def required_files_present?
      KitchenCommand.required_files.inject(true) do |m, f|
        check = File.exists?(f)
        warn_for_required_file(f) unless check
        m && check
      end
    end

    def warn_for_required_file(file)
      ui.error "#{file} is a required file/directory"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
knife-solo-0.0.15 lib/knife-solo/kitchen_command.rb