build_dynamic_env

in cookbooks/aws-parallelcluster-scheduler-plugin/resources/execute_event_handler.rb [131:154]


  def build_dynamic_env(target_previous_cluster_config, target_computefleet_status)
    Chef::Log.info("Building dynamic handler environment")
    env = {}

    if new_resource.event_name == 'HeadClusterUpdate'
      env.merge!({ 'PCLUSTER_CLUSTER_CONFIG_OLD' => target_previous_cluster_config })
    end
    if new_resource.event_name == 'HeadComputeFleetUpdate'
      env.merge!({ 'PCLUSTER_COMPUTEFLEET_STATUS' => target_computefleet_status })
    end
    env.merge!(build_hash_from_node('PCLUSTER_EC2_INSTANCE_TYPE', true, :ec2, :instance_type))

    case node['cluster']['node_type']
    when 'ComputeFleet'
      env.merge!(build_hash_from_node('PCLUSTER_QUEUE_NAME', false, :cluster, :scheduler_queue_name))
      env.merge!(build_hash_from_node('PCLUSTER_COMPUTE_RESOURCE_NAME', false, :cluster, :scheduler_compute_resource_name))
      env.merge!({ 'PCLUSTER_NODE_TYPE' => 'compute' })
    when 'HeadNode'
      env.merge!({ 'PCLUSTER_NODE_TYPE' => 'head' })
    end

    env
  end