Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions lib/mobility-core/src/Kernel/External/MasterCloudForward.hs
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,9 @@ getRunApiInMasterCloud = do
envVal <- lookupEnv "RUN_API_IN_MASTER_CLOUD"
pure (fromMaybe False (readMaybe =<< envVal))

-- Drop-in replacement for @callAPI@. Triple-gated: env on + masterUrl set +
-- masterSecret set → forwarded. Anything else → direct call.
-- Drop-in replacement for @callAPI@. Quad-gated: caller flag on +
-- masterUrl set + masterSecret set → forwarded. Anything else → direct call.
-- flag is for city specific forwarder.
runThroughMasterCloud ::
( HasMasterCloudForwarder r,
MonadReader r m,
Expand All @@ -147,9 +148,9 @@ runThroughMasterCloud ::
BaseUrl ->
ET.EulerClient a ->
Text ->
Bool ->
m (Either ClientError a)
runThroughMasterCloud origBaseUrl eClient desc = do
shouldForward <- liftIO getRunApiInMasterCloud
runThroughMasterCloud origBaseUrl eClient desc shouldForward = do
cfg <- asks masterCloudProxyConfig
case (shouldForward, cfg.masterUrl, cfg.masterSecret) of
(True, Just fwdUrl, Just secret) -> do
Expand Down
2 changes: 1 addition & 1 deletion lib/mobility-core/test-integration/Main.hs
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ main = do
setEnv "RUN_API_IN_MASTER_CLOUD" "True"
rForwarded <-
KFlow.runFlowR flowRt env $
runThroughMasterCloud todoBaseUrl (getTodoClient 1) "getTodo-forwarded"
runThroughMasterCloud todoBaseUrl (getTodoClient 1) "getTodo-forwarded" True

-- Compare.
case (rDirect, rForwarded) of
Expand Down
Loading