class BetweenMeals::Changes::Role
Changeset
aware role
Public Class Methods
Source
# File lib/between_meals/changes/role.rb, line 39 def self.find(list, role_dir, logger) # rubocop:disable ClassVars @@logger = logger # rubocop:enable ClassVars return [] if list.nil? || list.empty? list. select { |x| self.name_from_path(x[:path], role_dir) }. map do |x| BetweenMeals::Changes::Role.new(x, role_dir) end end
Given a list of changed files create a list of Role
objects
Source
# File lib/between_meals/changes/role.rb, line 21 def self.name_from_path(path, role_dir) re = %r{^#{role_dir}/(.+)\.(?:rb|json)} debug("[role] Matching #{path} against #{re}") m = path.match(re) if m info("Name is #{m[1]}") return m[1] end nil end
Source
# File lib/between_meals/changes/role.rb, line 32 def initialize(file, role_dir) @status = file[:status] == :deleted ? :deleted : :modified @name = self.class.name_from_path(file[:path], role_dir) end