Class: VagrantPlugins::WinAzure::Plugin

Inherits:
Object
  • Object
show all
Defined in:
lib/vagrant-azure/plugin.rb

Class Method Summary collapse

Class Method Details

.apply_patchesObject



58
59
60
61
62
# File 'lib/vagrant-azure/plugin.rb', line 58

def self.apply_patches
  lib_path = Pathname.new(File.expand_path('../../vagrant-azure', __FILE__))
  Vagrant.plugin('2').manager.communicators[:winrm]
  require lib_path.join('monkey_patch/winrm')
end

.setup_i18nObject



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'lib/vagrant-azure/plugin.rb', line 64

def self.setup_i18n
  I18n.load_path << File.expand_path(
    'locales/en.yml',
    WinAzure.source_root
  )
  I18n.load_path << File.expand_path(
    'templates/locales/en.yml',
    Vagrant.source_root
  )
  I18n.load_path << File.expand_path(
    'templates/locales/providers_hyperv.yml',
    Vagrant.source_root
  )
  I18n.reload!
end

.setup_loggingObject



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
# File 'lib/vagrant-azure/plugin.rb', line 80

def self.setup_logging
  require 'log4r'

  level = nil
  begin
    level = Log4r.const_get(ENV['VAGRANT_LOG'].upcase)
  rescue NameError
    # This means that the logging constant wasn't found,
    # which is fine. We just keep `level` as `nil`. But
    # we tell the user.
    level = nil
  end

  # Some constants, such as "true" resolve to booleans, so the
  # above error checking doesn't catch it. This will check to make
  # sure that the log level is an integer, as Log4r requires.
  level = nil if !level.is_a?(Integer)

  # Set the logging level on all "vagrant" namespaced logs as long as
  # we have a valid level
  if level
    logger = Log4r::Logger.new("vagrant_azure")
    logger.outputters = Log4r::Outputter.stderr
    logger.level = level
    logger = nil
  end
end