You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.3 KiB

  1. from datetime import date
  2. import json
  3. import boto3
  4. ################################################################################################
  5. #
  6. # Configuration Parameters
  7. #
  8. ################################################################################################
  9. endpoint_url = "http://localhost.localstack.cloud:4566"
  10. # region = 'eu-central-1'
  11. region = 'us-east-1'
  12. functionName = 'cloudcomp-counter-lambda-demo'
  13. ################################################################################################
  14. #
  15. # boto3 code
  16. #
  17. ################################################################################################
  18. client = boto3.setup_default_session(region_name=region)
  19. lClient = boto3.client('lambda', endpoint_url=endpoint_url)
  20. print("Invoking function...")
  21. print("------------------------------------")
  22. try:
  23. response = lClient.invoke(
  24. FunctionName=functionName,
  25. Payload='{ "input": "1" }'
  26. )
  27. except lClient.exceptions.ResourceNotFoundException:
  28. print('Function not available.')
  29. streamingBody = response['Payload']
  30. result = streamingBody.read()
  31. jsonResult = json.loads(result)
  32. print(json.dumps(response, indent=4, sort_keys=True, default=str))
  33. print('Payload:\n' + str(result) + "\n")
  34. print("Counter is now at: " + jsonResult['headers']['x-hsfd-counter'])