Hey there đź‘‹ we're excited that you're considering joining our mission to help the helpers!
The goal of this exercise is to evaluate your ability to:
- Understand version control management, from commit to production
- Navigate unfamiliar applications
- Know your toolkit, research features the pipeline offers
- Design for failure
- Proper use commits and messages
- Write documentation / README / changelog
Code should be submitted in a Git repository with clear documentation on what developers are expected to do to add new features. Feel free to specify any assumptions that you’ve made, along with any missing details that would complete the solution.
We are not expecting this to be deploy in actual infrastructure, only building the docker image and calling the deploy script
If you require further clarification, then please do not hesitate to ask.
command | description |
---|---|
npm test |
run all tests |
npm start |
start express server |
name | default | description |
---|---|---|
PORT | 3000 | number indicating which port to run the server |
PGUSER | postgres | postgres user |
PGHOST | localhost | postgres hostname |
PGPASSWORD | postgrespw | postgres password |
PGDATABASE | postgres | service name |
PGPORT | 55000 | postgres server port |
Developers make sure to run npm test
before pushing their PR
- Create a workflow that ensures
main
branch is always in a deployable state
The infrastructure team is experimenting with containers, however, the team is not familiar with Docker
- Create docker image and ensure application runs on port 80
- Create workflow to deploy
main
branch
command | description |
---|---|
./script/deploy <docker image id> |
Infrastrutured provided script to deploy a docker image |