The project represents the configuration and setup server for Space Trouble project
The project consists of 2 parts:
- API that handles all HTTP communication
- Monitor that actualizes information about SpaceX launches from their API
- Git
- Docker
- Docker Compose
Clone from github and navigate to the project's folder
# HTTPS
git clone https://github.com/vbetsun/space-trouble.git
# SSH
git clone git@github.com:vbetsun/space-trouble.git
cd space-trouble
cp ./deployments/.env.example ./deployments/.env
change env variables for your needs
PORT=8000 # port for serving API
DOCS_PORT=8080 # port for serving OpenAPI documentation
POSTGRES_PORT=5432 # port of postgre db
POSTGRES_HOST=localhost # host of postgre db
POSTGRES_PASSWORD=someStr0ngPass # password to psql
and start the application via docker compose
. It should start the API server, monitor for actualizing data, PostgreSQL database, pgAdmin and OpenAPI documentation, which you can see on http://localhost:${DOCS_PORT}
docker compose -f ./deployments/docker-compose.yml up -d
after that you have to run migrations
make migrate-up
for testing our API we're going to use unit tests and Postman collection via Newman
make test # runs unit and integration tests
make test-e2e # this command runs e2e tests for running application