Skip to content

NeptuneGraph: fails to delete when private graph endpoints exist #973

Description

@jangidms

Description:

The NeptuneGraph resource type does not remove private graph endpoints before calling DeleteGraph. When a graph has private endpoints attached, the delete call fails.

Expected behavior:

The NeptuneGraph resource should either:

Delete all private graph endpoints (via DeletePrivateGraphEndpoint) before calling DeleteGraph, or
A separate NeptuneGraphPrivateEndpoint resource type should be registered with NeptuneGraph as a DependsOn, so endpoints are removed first.

Current behavior:
The Remove() function calls DeleteGraph directly. If private endpoints exist, the API rejects the deletion with: "This action could not be completed due to the following reasons: The graph contains private endpoints." Nuke retries indefinitely until timeout, reporting failed state with Status: AVAILABLE.

Steps to reproduce:

Create a Neptune Analytics graph with a private endpoint (default when creating via console with VPC access)
Run aws-nuke against the account
Observe NeptuneGraph resource stuck in failed state with Status: AVAILABLE

Suggested fix:
Option A: Add a NeptuneGraphPrivateEndpoint resource type that lists and deletes endpoints, registered as a dependency of NeptuneGraph. Option B: In the NeptuneGraph.Remove() function, list and delete all private endpoints before calling DeleteGraph.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions