An AWS Lambda function to track International Space Station (ISS) position and sent it to a SQS queue
This project aims to create a serverless structure to detects whenever the ISS pass over an Earth coordinate (i.e. latitude/longitude) and send notifications about it.
More details about the project and its implementation soon.
This project uses govendor as default dependency manager. So, whenever you
add or remove any dependency, you should do a govendor add or govendor remove.
There is a task in the Makefile to simplify this: make vendoring.
This project provides a Makefile with all common operations need to test and build to .
- setup: installs govendor package
- vendoring: updates dependencies under vendor dir
- run-local: runs iss-tracker in local mode (i.e. outside AWS Lambda environment)
- test: runs all tests
- fmt: runs gofmt for all go files
This application expects the default credential provider chain, as documented at http://docs.aws.amazon.com/sdk-for-go/api/aws/defaults/#CredChain. The default provider chain looks for credentials in the following order:
- Environment variables.
- Shared credentials file.
- If your application is running on an Amazon EC2 instance, IAM role for Amazon EC2.
This project does not contain any sensitive information hardcoded.
This project expects a env variable containing SQL url. If you're using a *nix, you should export the following env vars:
# AWS keys
export AWS_REGION=[VALUE]
export AWS_ACCESS_KEY_ID=[VALUE]
export AWS_SECRET_ACCESS_KEY=[VALUE]
# SQS URL
export ISS_SQS_URL=[VALUE]This project uses http://open-notify.org/ endpoints to retrieve current ISS position.