Skip to content

Commit d620d6e

Browse files
author
Ben Iofel
committed
fly pg unregister hook: update for new node names
See fly-apps/postgres-flex#251 for context
1 parent 3c430bb commit d620d6e

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

flypg/cmd.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ func (pc *Command) UpdateSettings(ctx context.Context, leaderIp string, config m
7979
return nil
8080
}
8181

82-
func (pc *Command) UnregisterMember(ctx context.Context, leaderIP string, standbyIP string) error {
83-
payload := encodeCommand(standbyIP)
82+
func (pc *Command) UnregisterMember(ctx context.Context, leaderIP string, standbyNodeName string) error {
83+
payload := encodeCommand(standbyNodeName)
8484
cmd := fmt.Sprintf("pg_unregister %s", payload)
8585

8686
resp, err := ssh.RunSSHCommand(ctx, pc.app, pc.dialer, leaderIP, cmd, ssh.DefaultSshUsername)

internal/command/machine/lifecycle_hooks.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ func runOnDeletionHook(ctx context.Context, app *fly.AppCompact, machine *fly.Ma
2121
if err := postgres.UnregisterMember(ctx, app, machine); err != nil {
2222
fmt.Fprintln(io.Out, "(failed)")
2323
fmt.Fprintf(io.Out, "failed to unregister postgres member: %v\n", err)
24+
return
2425
}
2526
fmt.Fprintln(io.Out, "(success)")
2627
}

internal/command/postgres/postgres.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,8 +208,12 @@ func UnregisterMember(ctx context.Context, app *fly.AppCompact, machine *fly.Mac
208208
return err
209209
}
210210

211-
if err := cmd.UnregisterMember(ctx, leader.PrivateIP, machine.PrivateIP); err != nil {
212-
return err
211+
hostname := fmt.Sprintf("%s.vm.%s.internal", machine.ID, app.Name)
212+
213+
if err := cmd.UnregisterMember(ctx, leader.PrivateIP, hostname); err != nil {
214+
if err2 := cmd.UnregisterMember(ctx, leader.PrivateIP, machine.PrivateIP); err2 != nil {
215+
return err
216+
}
213217
}
214218

215219
return nil

0 commit comments

Comments
 (0)