Sha256: c9cdcece77814bd9d6e6b2caedf4c113d67d8d46234e22edd2ca2088372d79e9

Contents?: true

Size: 965 Bytes

Versions: 5

Compression:

Stored size: 965 Bytes

Contents

module Specinfra
  module Command
    class FreeBSD < Base
      def check_enabled(service, level=3)
        "service -e | grep -- #{escape(service)}"
      end

      def check_installed(package, version=nil)
        if version
          "pkg_info -I #{escape(package)}-#{escape(version)}"
        else
          "pkg_info -Ix #{escape(package)}"
        end
      end

      def check_listening(port)
        regexp = ":#{port} "
        "sockstat -46l -p #{port} | grep -- #{escape(regexp)}"
      end

      def check_mode(file, mode)
        regexp = "^#{mode}$"
        "stat -f%Lp #{escape(file)} | grep -- #{escape(regexp)}"
      end

      def get_mode(file)
        "stat -f%Lp #{escape(file)}"
      end

      def install(package)
        "pkg_add -r install #{package}"
      end

      def get_package_version(package, opts=nil)
        "pkg_info -Ix #{escape(package)} | cut -f 1 -w | sed -n 's/^#{escape(package)}-//p'"
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
specinfra-2.0.0.beta6 lib/specinfra/command/freebsd.rb
specinfra-2.0.0.beta5 lib/specinfra/command/freebsd.rb
specinfra-2.0.0.beta4 lib/specinfra/command/freebsd.rb
specinfra-2.0.0.beta3 lib/specinfra/command/freebsd.rb
specinfra-2.0.0.beta2 lib/specinfra/command/freebsd.rb