Sha256: cee408f4f16d6b4ba0027980f4f44ae578f0d0f002a3ce83f72ffb97288d484a

Contents?: true

Size: 782 Bytes

Versions: 5

Compression:

Stored size: 782 Bytes

Contents

module VagrantPlugins
  module Chef
    module Cap
      module FreeBSD
        module ChefInstalled
          # Check if Chef is installed at the given version.
          # @return [true, false]
          def self.chef_installed(machine, product, version)
            product_name = product == 'chef-workstation' ? 'chef-workstation' : 'chef'
            verify_bin = product_name == 'chef-workstation' ? 'chef' : 'chef-client'
            verify_path = "/opt/#{product_name}/bin/#{verify_bin}"
            command = "test -x #{verify_path}"

            if version != :latest
              command << "&& #{verify_path} --version | grep '#{version}'"
            end

            machine.communicate.test(command, sudo: true)
          end
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
vagrant-unbundled-2.3.6.0 plugins/provisioners/chef/cap/freebsd/chef_installed.rb
tamtam-vagrant-reload-1.2.1 vendor/cache/vagrant-2092df529ae7/plugins/provisioners/chef/cap/freebsd/chef_installed.rb
vagrant-unbundled-2.3.3.0 plugins/provisioners/chef/cap/freebsd/chef_installed.rb
vagrant-unbundled-2.3.2.0 plugins/provisioners/chef/cap/freebsd/chef_installed.rb
vagrant-unbundled-2.2.19.0 plugins/provisioners/chef/cap/freebsd/chef_installed.rb