in cookbooks/aws-parallelcluster-slurm/libraries/helpers.rb [29:49]
def dynamodb_info(aws_connection_timeout_seconds: 30, aws_read_timeout_seconds: 60, shell_timout_seconds: 300)
output = Mixlib::ShellOut.new("#{cookbook_virtualenv_path}/bin/aws dynamodb " \
"--region #{node['cluster']['region']} query --table-name #{node['cluster']['slurm_ddb_table']} " \
"--index-name InstanceId --key-condition-expression 'InstanceId = :instanceid' " \
"--expression-attribute-values '{\":instanceid\": {\"S\":\"#{node['ec2']['instance_id']}\"}}' " \
"--projection-expression 'Id' " \
"--cli-connect-timeout #{aws_connection_timeout_seconds} " \
"--cli-read-timeout #{aws_read_timeout_seconds} " \
"--output text --query 'Items[0].[Id.S]'",
user: 'root',
timeout: shell_timout_seconds).run_command.stdout.strip
raise "Failed when retrieving Compute info from DynamoDB" if output.nil? || output.empty? || output == "None"
slurm_nodename = output
Chef::Log.info("Retrieved Slurm nodename is: #{slurm_nodename}")
slurm_nodename
end