graph TD
%%Definitions
Start["Network/Deployment Validation Failure"]
DecisionReserved@{ shape: hex, label: "Validation: RANGES_NOT_RESERVED?"}
DecisionExhausted@{ shape: hex, label: "Validation: RANGES_EXHAUSTED?"}
DecisionSharedVPC@{ shape: hex, label: "Using Shared VPC?"}
SolutionReserve["Reserve IP ranges"]
SolutionExpand["Expand range allocation"]
SolutionP4SA["Enable Looker service account & grant compute.globalAddresses.get"]
SolutionResumed["Provisioning resumed"]
SolutionSupport["Contact Support"]
%% Edges
Start --- DecisionReserved
DecisionReserved -- Yes --- SolutionReserve
SolutionReserve --- SolutionResumed
DecisionReserved -- No --- DecisionExhausted
DecisionExhausted -- Yes --- SolutionExpand
SolutionExpand --- SolutionResumed
DecisionExhausted -- No --- DecisionSharedVPC
DecisionSharedVPC -- Yes --- SolutionP4SA
SolutionP4SA --- SolutionResumed
DecisionSharedVPC -- No --- SolutionSupport
%%Style definitions
classDef start fill:#ECECFF,stroke:#000,stroke-width:3px,font-weight:bold;
class Start start
classDef decision fill:#FCE0E0,stroke:#000,stroke-width:2px,font-weight:normal;
class DecisionReserved,DecisionExhausted,DecisionSharedVPC decision
classDef solution fill:#FEF6E0,stroke:#000,stroke-width:2px,font-weight:normal;
class SolutionReserve,SolutionExpand,SolutionP4SA,SolutionResumed,SolutionSupport solution
click SolutionP4SA href "/looker/docs/looker-core-create-private-ip#shared-vpc"
click SolutionSupport href "/looker/docs/looker-core-support"