A worker process that once a day combines and archives popular stream clips.
You must have the following installed/configured on your system for this to work correctly
The following variables need to be set on your local/ci system.
- Have a Twitch account
- Regisiter a new Twitch application
- Set the Oauth redirect url to http://localhost
- Pick anything from the application categories
- Copy and save the client id presented as the envoirment variable TWITCH_CLIENT_ID
Name of your channel
Use the base64 string returned from yt-server-oauth
The development enviroment uses lambci's docker-lambda image to run any code that would be deployed as a lambda function. To emulate aws's Dynamodb/Sns/Sqs a localstack image is combined with Terraform.
To build the lambdas and spin up the distributed development environment run the following command
docker-compose -f lambdaBuilder.yml up && docker-compose up
To run tests use the following command
docker-compose -f testRunner.yml up
Deployment currently uses Terraform to set up AWS services.
Terraform has a feature called remote state which ensures the state of your infrastructure to be in sync for mutiple team members.
This project requires this feature to be configured. To configure USE THE FOLLOWING COMMAND ONCE PER TEAM.
docker-compose -f terraform-compose.yml run tf init_remote_state
The following commands will deploy to dev/prod environment manually.
docker-compose -f terraform-compose.yml run tf deploy_dev
docker-compose -f terraform-compose.yml run tf deploy_prod
This project uses CircleCI workflows for CI/CD the configuration for this is in .circleci