|
31 | 31 | $replica_postgresql_target,
|
32 | 32 | ]))
|
33 | 33 |
|
| 34 | + # Get current peadm config to ensure we forget active replicas |
| 35 | + $peadm_config = run_task('peadm::get_peadm_config', $primary_target).first.value |
| 36 | + |
| 37 | + # Make list of all possible replicas, configured and provided |
| 38 | + $replicas = peadm::flatten_compact([ |
| 39 | + $replica_host, |
| 40 | + $peadm_config['params']['replica_host'] |
| 41 | + ]).unique |
| 42 | + |
34 | 43 | $certdata = run_task('peadm::cert_data', $primary_target).first.value
|
35 | 44 | $primary_avail_group_letter = $certdata['extensions'][peadm::oid('peadm_availability_group')]
|
36 | 45 | $replica_avail_group_letter = $primary_avail_group_letter ? { 'A' => 'B', 'B' => 'A' }
|
|
40 | 49 | $dns_alt_names = [$replica_target.peadm::certname()] + (pick($certdata['dns-alt-names'], []) - $certdata['certname'])
|
41 | 50 |
|
42 | 51 | # This has the effect of revoking the node's certificate, if it exists
|
43 |
| - run_command("/opt/puppetlabs/bin/puppet infrastructure forget ${replica_target.peadm::certname()}", $primary_target, _catch_errors => true) |
| 52 | + $replicas.each |$replica| { |
| 53 | + run_command("/opt/puppetlabs/bin/puppet infrastructure forget ${replica}", $primary_target, _catch_errors => true) |
| 54 | + } |
44 | 55 |
|
45 | 56 | run_plan('peadm::subplans::component_install', $replica_target,
|
46 | 57 | primary_host => $primary_target,
|
|
76 | 87 | server_a_host => $replica_avail_group_letter ? { 'A' => $replica_host, default => undef },
|
77 | 88 | server_b_host => $replica_avail_group_letter ? { 'B' => $replica_host, default => undef },
|
78 | 89 | internal_compiler_a_pool_address => $replica_avail_group_letter ? { 'A' => $replica_host, default => undef },
|
79 |
| - internal_compiler_b_pool_address => $replica_avail_group_letter ? { 'B' => $replica_host, default => undef } |
| 90 | + internal_compiler_b_pool_address => $replica_avail_group_letter ? { 'B' => $replica_host, default => undef }, |
| 91 | + peadm_config => $peadm_config |
80 | 92 | )
|
81 | 93 |
|
82 | 94 | # Source the global hiera.yaml from Primary and synchronize to new Replica
|
|
0 commit comments