Provides a Julia interface to goaws, which provides a local clone of AWS SQS and SNS. See the goaws readme for what is supported and what is not.
using AWS, GoAWS
@service SQS use_response_type = true
with_go_aws() do aws_config
result = parse(SQS.create_queue("my_queue"; aws_config))
queue_url = result["CreateQueueResult"]["QueueUrl"]
ret = parse(SQS.send_message("hello", queue_url; aws_config))
id = ret["SendMessageResult"]["MessageId"]
messages = parse(SQS.receive_message(queue_url, Dict("WaitTimeSeconds" => 1); aws_config))
@test messages["ReceiveMessageResult"]["Message"]["Body"] == "hello"
receipt = messages["ReceiveMessageResult"]["Message"]["ReceiptHandle"]
@test startswith(receipt, id)
SQS.delete_message(queue_url, receipt; aws_config)
SQS.delete_queue(queue_url; aws_config)
end