Module: PuppetX::IntechWIFI::Declare_Environment_Resources::IAMHelper

Defined in:
lib/puppet_x/intechwifi/declare_environment_resources.rb

Class Method Summary collapse

Class Method Details

.CalculateAllRoleResources(name, status, server_roles, services) ⇒ Object



583
584
585
586
587
# File 'lib/puppet_x/intechwifi/declare_environment_resources.rb', line 583

def self.CalculateAllRoleResources(name, status, server_roles, services)
  server_roles.map{|role_label, role_data|
    CalculateSingleRoleResource(name, status, role_label, role_data, services)
  }.reduce({}){|hash, kv| hash.merge(kv)}
end

.CalculateInstanceProfileResources(name, status, server_roles) ⇒ Object



601
602
603
604
605
606
607
608
609
610
# File 'lib/puppet_x/intechwifi/declare_environment_resources.rb', line 601

def self.CalculateInstanceProfileResources(name, status, server_roles)
  server_roles.map{|role_label, role_data|
    {
        GenerateInstanceProfileName(name, role_label) => {
            :ensure => status,
            :iam_role => GenerateRoleName(name, role_label)
        }
    }
  }.reduce({}){|hash, kv| hash.merge(kv)}
end

.CalculatePolicyResources(name, status, policies) ⇒ Object



572
573
574
575
576
577
578
579
580
581
# File 'lib/puppet_x/intechwifi/declare_environment_resources.rb', line 572

def self.CalculatePolicyResources(name, status, policies)
  policies.map{|key,value|
    {
        GeneratePolicyName(name, key) => {
            :ensure => status,
            :policy => value.kind_of?(Array) ? value : [value]
        }
    }
  }.reduce({}){|hash, kv| hash.merge(kv)}
end

.CalculateSingleRoleResource(name, status, role_label, role_data, services) ⇒ Object



589
590
591
592
593
594
595
596
597
598
599
# File 'lib/puppet_x/intechwifi/declare_environment_resources.rb', line 589

def self.CalculateSingleRoleResource(name, status, role_label, role_data, services)
  {
      GenerateRoleName(name, role_label) => {
          :ensure => status,
          :policies => role_data['services'].map{|service_label|
            service  = services[service_label]
            service.has_key?('policies') ? service['policies'].map{|policy_label| GeneratePolicyName(name, policy_label)} : []
          }.flatten.uniq
      }
  }
end

.GenerateInstanceProfileName(name, instance_profile_label) ⇒ Object



620
621
622
# File 'lib/puppet_x/intechwifi/declare_environment_resources.rb', line 620

def self.GenerateInstanceProfileName(name, instance_profile_label)
  "#{name}_#{instance_profile_label}"
end

.GeneratePolicyName(name, policy_label) ⇒ Object



616
617
618
# File 'lib/puppet_x/intechwifi/declare_environment_resources.rb', line 616

def self.GeneratePolicyName(name, policy_label)
  "#{name}_#{policy_label}"
end

.GenerateRoleName(name, server_role_label) ⇒ Object



612
613
614
# File 'lib/puppet_x/intechwifi/declare_environment_resources.rb', line 612

def self.GenerateRoleName(name, server_role_label)
  "#{name}_#{server_role_label}"
end