Environments
At the moments we have 3 environments:
- Local: This is meant for active development and it is the most volatile environment, as the APIs run locally on your computer, meaning that any person can run their version/code. Since the MongoDB database is shared, it can lead to documents varying wildly for the same model. Because of this, it is often wiped. We mostly avoid using this one for development since it requires to run other depending APIs locally as well.
- Development: This should be looked at as a production-ready environment, since this is where our Product Managers will validate changes they requested before deploying to Production. To speed up development, we will mostly use this one when developing, since we can replace the deployed API with the one we are working on. Data on this environment is not permanent, but it should not be wiped before validation from Software Architects, since it can highlight potential problems for Production data.
- Production: The most stable, as this is where our end users live. As developers, if we need to access this one, something as gone wrong. Data on this environment is permanent, meaning that any changes to it, should be done through migrations.