Sha256: c692d4be570e20f976cce78e77cb99cd96e8b6b64cfdc33e99dda6ed84df56d3

Contents?: true

Size: 1.51 KB

Versions: 4

Compression:

Stored size: 1.51 KB

Contents

module Veewee
  module Provider
    module Vmfusion
      module BoxCommand

        def vnc_port
           lines=File.readlines(raw.vmx_path)
           matches=lines.grep(/^RemoteDisplay.vnc.port/)
           if matches.length==0
              raise Veewee::Error,"No VNC port found, maybe it is not enabled?"
           else
              value=matches.first.split("\"")[1].to_i
              return value
           end
        end

        # This tries to guess a port for the VNC Display
        def guess_vnc_port
          min_port=5920
          max_port=6000
          guessed_port=nil

          for port in (min_port..max_port)
            unless is_tcp_port_open?("127.0.0.1", port)
              guessed_port=port
              break
            end
          end

          if guessed_port.nil?
            env.ui.info "No free VNC port available: tried #{min_port}..#{max_port}"
            exit -1
          else
            env.ui.info "Found VNC port #{guessed_port} available"
          end

          return guessed_port
        end

        def vnc_display_port
          self.vnc_port - 5900
        end

        def vnc_enabled?
           lines=File.readlines(raw.vmx_path)
           matches=lines.grep(/^RemoteDisplay.vnc.enabled/)
           if matches.length==0
              return false
           else
              if matches.first.split("\"")[1].downcase == 'true'
                return true
              else
                return false
              end
           end
        end

      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
veewee-0.3.0.alpha8 lib/veewee/provider/vmfusion/box/helper/vnc.rb
veewee-0.3.0.alpha7 lib/veewee/provider/vmfusion/box/helper/vnc.rb
veewee-0.3.0.alpha6 lib/veewee/provider/vmfusion/box/helper/vnc.rb
veewee-0.3.0.alpha5 lib/veewee/provider/vmfusion/box/helper/vnc.rb