Depending on how we setup the vector database and it's data ingestion, we may also need some way to update the datastore with each new deploy (or deploys to a specific, data related branch?)
Merges to develop should deploy to a dev environment/stack in AWS
Merges to main should deploy to a staging environment/stack in AWS
Creating a release tag on main should deploy to a production environment (ideally the release tag is included in the stack metadata or resource names)
Pushes to feature branches (feature/*) should trigger a deployment to a similarly named environment/stack in AWS, run unit and integration tests against that stack. Merging the feature pranch into develop should destroy the previously deployed feature stack in AWS.
develop
should deploy to adev
environment/stack in AWSmain
should deploy to astaging
environment/stack in AWSmain
should deploy to a production environment (ideally the release tag is included in the stack metadata or resource names)feature/*
) should trigger a deployment to a similarly named environment/stack in AWS, run unit and integration tests against that stack. Merging the feature pranch into develop should destroy the previously deployed feature stack in AWS.