feat(egress-proxy): retarget remediation flow (PRD 0017 chunk 3) #30
@@ -102,11 +102,14 @@ def _mirror_hosts_to_pipelock(slug: str, hosts: list[str]) -> None:
|
|||||||
return # nothing to add
|
return # nothing to add
|
||||||
apply_allowlist_change(slug, render_allowlist_content(merged))
|
apply_allowlist_change(slug, render_allowlist_content(merged))
|
||||||
except PipelockApplyError as e:
|
except PipelockApplyError as e:
|
||||||
|
# Mirror runs BEFORE the egress-proxy write, so egress-proxy
|
||||||
|
# is unchanged on this failure path. Report it as a
|
||||||
|
# pipelock-side problem so the operator looks in the right
|
||||||
|
# place; their `pipelock edit` flow can repair manually.
|
||||||
raise EgressProxyApplyError(
|
raise EgressProxyApplyError(
|
||||||
f"egress-proxy routes updated but pipelock allowlist "
|
f"pipelock allowlist mirror failed (egress-proxy NOT "
|
||||||
f"mirror failed: {e}. The request will 403 at pipelock "
|
f"updated): {e}. Fix pipelock's allowlist manually with "
|
||||||
f"until pipelock's allowlist is refreshed; retry the "
|
f"`pipelock edit <bottle>` then retry the proposal."
|
||||||
f"proposal or edit pipelock's allowlist by hand."
|
|
||||||
) from e
|
) from e
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user