Skip to content

Commit 9e5c182

Browse files
committed
Make get_peadm_config handle nil values better
In the event a group doesn't exist, or a key doesn't return a value. Don't error, just return nil for those values.
1 parent 15e793b commit 9e5c182

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

tasks/get_peadm_config.rb

+9-4
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ def config
3636
'replica_postgresql_host' => postgresql[replica_letter],
3737
'compilers' => compilers,
3838
'compiler_pool_address' => groups.dig('PE Master', 'config_data', 'pe_repo', 'compile_master_pool_address'),
39-
'internal_compiler_a_pool_address' => groups.dig('PE Compiler Group A', 'classes', 'puppet_enterprise::profile::master', 'puppetdb_host')[1],
40-
'internal_compiler_b_pool_address' => groups.dig('PE Compiler Group B', 'classes', 'puppet_enterprise::profile::master', 'puppetdb_host')[1],
39+
'internal_compiler_a_pool_address' => groups.dig('PE Compiler Group A', 'classes', 'puppet_enterprise::profile::master', 'puppetdb_host', 1),
40+
'internal_compiler_b_pool_address' => groups.dig('PE Compiler Group B', 'classes', 'puppet_enterprise::profile::master', 'puppetdb_host', 1),
4141
},
4242
'role-letter' => {
4343
'server' => {
@@ -106,8 +106,13 @@ def initialize(data)
106106
# Aids in digging into node groups by name, rather than UUID
107107
def dig(name, *args)
108108
group = @data.find { |obj| obj['name'] == name }
109-
return group if args.empty?
110-
group.dig(*args)
109+
if group.nil?
110+
nil
111+
elsif args.empty?
112+
group
113+
else
114+
group.dig(*args)
115+
end
111116
end
112117

113118
# Return the node pinned to the named group

0 commit comments

Comments
 (0)