module PuppetHerald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
A module for Herald
Constants
- DESCRIPTION
A description info
- HOMEPAGE
A homepage for Herald
- LICENSE
Lincense for Herald
- NAME
Project name
- PACKAGE
Package (gem) for Herald
- SUMMARY
A summary info
- VERSION
Version for Herald
Attributes
Public Class Methods
Reports a bug in desired format
@param ex [Exception] an exception that was thrown @return [Hash] a hash with info about bug to be displayed to user
# File lib/puppet-herald.rb, line 98 def bug(ex) file = Tempfile.new(['puppet-herald-bug', '.log']) filepath = file.path file.close file.unlink message = "v#{PuppetHerald::VERSION}-#{ex.class}: #{ex.message}" contents = message + "\n\n" + ex.backtrace.join("\n") + "\n" File.write(filepath, contents) bugo = { message: message, homepage: PuppetHerald::HOMEPAGE, bugfile: filepath, help: "Please report this bug to #{PuppetHerald::HOMEPAGE} by passing contents of bug file: #{filepath}" } bugo end
A database object @return [PuppetHerald::Database] a database object
# File lib/puppet-herald.rb, line 28 def database # rubocop:disable Style/TrivialAccessors @database end
Gets the environment set for Herald
@return [Symbol] an environment
# File lib/puppet-herald.rb, line 59 def environment ENV['PUPPET_HERALD_ENV'] = :production.to_s if ENV['PUPPET_HERALD_ENV'].nil? ENV['PUPPET_HERALD_ENV'].to_sym end
# File lib/puppet-herald.rb, line 40 def environment=(newenv) envsymbol = newenv.to_s.to_sym ENV['PUPPET_HERALD_ENV'] = envsymbol.to_s rackenv setup_logger end
Checks is running in DEVELOPMENT kind of environment (dev, ci, test)
@return [Boolean] true if runs in development
# File lib/puppet-herald.rb, line 83 def in_dev? [:development, :dev, :test, :ci].include? environment end
Checks is running in production environment
@return [Boolean] true if runs in production
# File lib/puppet-herald.rb, line 90 def in_prod? !in_dev? end
Rack environment
@return [Symbol] Rack environment
# File lib/puppet-herald.rb, line 67 def rackenv case environment when :dev, :development rackenv = :development when :test, :ci rackenv = :test else rackenv = :production end ENV['RACK_ENV'] = rackenv.to_s rackenv end
Calculates a replative directory inside the project
@param dir [String] a sub directory @return [String] a full path to replative dir
# File lib/puppet-herald.rb, line 36 def relative_dir(dir) File.realpath(File.join @root, dir) end
Setups logger’s level
@return [nil]
# File lib/puppet-herald.rb, line 50 def setup_logger logger.level = self.in_dev? ? Logger::DEBUG : Logger::INFO errlogger.level = logger.level nil end
Prepare version
@param desired [String] a desired version @return [String] a prepared version
# File lib/puppet-herald/version.rb, line 7 def self.version_prep(desired) version = desired if desired.match(/[^0-9\.]+/) git = `git describe --tags --dirty --always` version += '.' + git.gsub('-', '.') end version.strip end