Get upcoming concerts for a location of your choice with a bunch of additional data.
API documentation can be found here: https://documenter.getpostman.com/view/4279998/RWaC1rD5
Prerequisites:
- make sure you are logged in with your aws cli
- create a
src/config/config-prod.json
file (or-dev
, depending on the stage) and make sure following variables are set (can also be set as environment variable):
{
"SONGKICK_API_KEY": "YOUR_SONGKICK_API_KEY",
"BITLY_ACCESS_TOKEN": "YOUR_BITLY_ACCESS_TOKEN",
"SLS_APP": "SERVERLESS PLATFORM APP",
"SLS_TENANT": "SERVERLESS PLATFORM TENANT"
}
Also make sure that AWS_ACCESS_KEY_ID
and AWS_SECRET_ACCESS_KEY
are set as environment variable.
Architectural decisions are tracked in ARCHITECTURAL_DECISIONS.md.
To test the app run
npm test
To deploy the app run
npm run deploy
// do to an suboptimal webpack configuration we have to deploy the artists function separately
npm run deploy:artists
Make sure to have a proper config file for every stage, like mentioned in the "Prerequisites" section.
Enable the TTL feature in the DynamoDB tables manually in the AWS console for the events cache table.
The TTL attribute is ttl
.
You cannot deploy from a windows machine, as the execution permissions for linux cannot be copied!
next lines are outdated!
You have to react to bounce and complaint messages. We do this via SNS which is connected to SES. SNS sends the notification to lambda.
- Setup a domain on SES
- Go to you domain's SES settings and setup Notifications. Use the sns notifications that are build by serverless
- Handle bounce and complaint notifications within aws-ses-notifications