Added Dockerfile, docker-compose.yml, create-tables.js, and rewrote etl.js. Updated Contributing.md with examples of how to run the project.
Description
The Dockerfile creates the govote image.
docker-compose.yml defines how the govote service and the database interact.
create-tables.js. uses a query (which I generated from the aws database) to create the guilfordvoters table.
The etl script now uses async/await and promises and is no longer throwing errors.
Related Issue
46 Move project to docker
Motivation and Context
This standardizes our dev environments and moves contributors away from sharing aws keys to access the database.
It will also make it easier for other brigades/organizations to run and use the project.
How Has This Been Tested?
I've tested it locally on my Mac. Further testing should be done before merging. We also need to test the etl script in prod to ensure everything works properly, since I completely rewrote it.
Checklist:
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
Added Dockerfile, docker-compose.yml, create-tables.js, and rewrote etl.js. Updated Contributing.md with examples of how to run the project.
Description
The Dockerfile creates the govote image.
docker-compose.yml defines how the govote service and the database interact.
create-tables.js. uses a query (which I generated from the aws database) to create the guilfordvoters table. The etl script now uses async/await and promises and is no longer throwing errors.
Related Issue
46 Move project to docker
Motivation and Context
This standardizes our dev environments and moves contributors away from sharing aws keys to access the database.
It will also make it easier for other brigades/organizations to run and use the project.
How Has This Been Tested?
I've tested it locally on my Mac. Further testing should be done before merging. We also need to test the etl script in prod to ensure everything works properly, since I completely rewrote it.
Checklist: