Skip to content

Commit

Permalink
Revert "AWS/SNS create endpoint without custom user data (SQCORE-1267) (
Browse files Browse the repository at this point in the history
#2910)" (#2915)

This reverts commit 6f7e60f.
  • Loading branch information
supersven committed Dec 8, 2022
1 parent 696f828 commit 719e259
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 23 deletions.
1 change: 0 additions & 1 deletion changelog.d/3-bug-fixes/aws-sns-without-CustomUserData

This file was deleted.

24 changes: 3 additions & 21 deletions services/gundeck/src/Gundeck/Aws.hs
Original file line number Diff line number Diff line change
Expand Up @@ -283,18 +283,17 @@ lookupEndpoint arn = do
pure (SNSEndpoint (Push.Token t) (fromMaybe False e) d)
mkUsers = Set.fromList . mapMaybe (hush . fromText) . Text.split (== ':')

createEndpoint :: Push.Transport -> ArnEnv -> AppName -> Push.Token -> Amazon (Either CreateEndpointError EndpointArn)
createEndpoint tr arnEnv app token = do
createEndpoint :: UserId -> Push.Transport -> ArnEnv -> AppName -> Push.Token -> Amazon (Either CreateEndpointError EndpointArn)
createEndpoint u tr arnEnv app token = do
env <- ask
let top = mkAppTopic arnEnv tr app
let arn = mkSnsArn (env ^. region) (env ^. account) top
let tkn = Push.tokenText token
let req =
SNS.newCreatePlatformEndpoint (toText arn) tkn
& set SNS.createPlatformEndpoint_customUserData (Just (toText u))
& set SNS.createPlatformEndpoint_attributes (Just $ Map.insert "Enabled" "true" Map.empty)
logRequest req tkn arn
res <- retrying (limitRetries 2) (const isTimeout) (const (sendCatch (env ^. awsEnv) req))
logResponse res tkn arn
case res of
Right r ->
case view SNS.createPlatformEndpointResponse_endpointArn r of
Expand All @@ -314,7 +313,6 @@ createEndpoint tr arnEnv app token = do
debug $
msg @Text "InvalidParameter: InvalidToken"
. field "response" (show x)
. logFields tkn arn
pure (Left (InvalidToken token))
| is "SNS" 404 x ->
pure (Left (AppNotFound app))
Expand Down Expand Up @@ -345,22 +343,6 @@ createEndpoint tr arnEnv app token = do
string "must be at most 8192 bytes long in UTF-8 encoding"
<|> string "iOS device tokens must be no more than 400 hexadecimal characters"
pure ()
logRequest req tkn arn =
trace $
msg @Text "AWS/SNS endpoint creation request"
. field "request" (show req)
. logFields tkn arn
logResponse res tkn arn =
trace $
msg @Text "AWS/SNS endpoint creation response"
. field "response" (show res)
. logFields tkn arn
logFields tkn arn =
field "transport" (show tr)
. field "appName" (show app)
. field "arnEnv" (show arnEnv)
. field "token" tkn
. field "arn" (toText arn)

--------------------------------------------------------------------------------
-- Publish
Expand Down
2 changes: 1 addition & 1 deletion services/gundeck/src/Gundeck/Push.hs
Original file line number Diff line number Diff line change
Expand Up @@ -450,7 +450,7 @@ addToken uid cid newtok = mpaRunWithBudget 1 (Left Public.AddTokenErrorNoBudget)
let tok = t ^. token
env <- view (options . optAws . awsArnEnv)
aws <- view awsEnv
ept <- Aws.execute aws (Aws.createEndpoint trp env app tok)
ept <- Aws.execute aws (Aws.createEndpoint uid trp env app tok)
case ept of
Left (Aws.EndpointInUse arn) -> do
Log.info $ "arn" .= toText arn ~~ msg (val "ARN in use")
Expand Down

0 comments on commit 719e259

Please sign in to comment.