Sha256: b745de41a6a6aa31f3dcf5e70e7bec07daf8df588f58a2510ae6e4ab45a2e8af

Contents?: true

Size: 1.63 KB

Versions: 18

Compression:

Stored size: 1.63 KB

Contents

require "pathname"

require "vagrant-openstack-plugin/plugin"

module VagrantPlugins
  module OpenStack
    lib_path = Pathname.new(File.expand_path("../vagrant-openstack-plugin", __FILE__))
    autoload :Errors, lib_path.join("errors")

    # This initializes the i18n load path so that the plugin-specific
    # translations work.
    def self.init_i18n
      I18n.load_path << File.expand_path("locales/en.yml", source_root)
      I18n.reload!
    end

    # This initializes the logging so that our logs are outputted at
    # the same level as Vagrant core logs.
    def self.init_logging
      # Initialize logging
      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_openstack")
        logger.outputters = Log4r::Outputter.stderr
        logger.level = level
        logger = nil
      end
    end

    # This returns the path to the source of this plugin.
    #
    # @return [Pathname]
    def self.source_root
      @source_root ||= Pathname.new(File.expand_path("../../", __FILE__))
    end
  end
end

Version data entries

18 entries across 18 versions & 2 rubygems

Version Path
vagrant-openstack-plugin-tom-0.12.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.12.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.11.1 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.11.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.10.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.9.1 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.9.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.8.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.7.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.6.1 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.6.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.5.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.4.1 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.3.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.2.2 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.2.1 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.2.0 lib/vagrant-openstack-plugin.rb
vagrant-openstack-plugin-0.1.3 lib/vagrant-openstack-plugin.rb