jbox-web/redmine_git_hosting

View on GitHub
app/services/permissions_builder/protected_branches.rb

Summary

Maintainability
A
0 mins
Test Coverage
# frozen_string_literal: true

module PermissionsBuilder
  class ProtectedBranches < Base
    attr_reader :permissions

    def initialize(*args)
      super
      @permissions = []
    end

    def build
      build_protected_branch_permissions
      permissions
    end

    def build_protected_branch_permissions
      repository.protected_branches.each do |branch|
        perms = {}
        perms[branch.permissions] = {}
        perms[branch.permissions][branch.path] = branch.allowed_users unless branch.allowed_users.empty?
        permissions.push perms
      end
    end
  end
end