Sha256: 0ee86e41a931d7b37f23bda84152329993dd88c3f4c4535c7d70ed2befca27a3
Contents?: true
Size: 687 Bytes
Versions: 22
Compression:
Stored size: 687 Bytes
Contents
module Ruboty class Env module Validatable extend ActiveSupport::Concern module ClassMethods def envs @envs ||= [] end def env(key, description, options = {}) envs << Env.new(key, description, options) end def usage envs.map(&:to_usage).join("\n") end end def validate self.class.envs.each(&:validate) rescue MissingRequiredKeyError => exception raise ValidationError, "#{exception}\n#{self.class.usage}" end def validate! validate rescue ValidationError => exception Ruboty.die(exception) end end end end
Version data entries
22 entries across 22 versions & 1 rubygems