How to use the atomic app?

You can find detailed instructions on how to use the atomic app in the atomic app usage guide.

drop the db in our RDS

On dev, use the automation. The usual reason to want this is Atlas migrations merged from main that no longer line up with the branch’s history - a clean database is the fix. Run the Reset Dev DB workflow (.github/workflows/reset-dev-db.yml):

gh workflow run reset-dev-db.yml \
  -f databases=vega \
  -f confirm=reset-dev-db

It drops the selected databases on the dev RDS, syncs the dbmigrator ArgoCD app to recreate them and replay migrations, and verifies the result. Services that held connections reconnect on their own within a few minutes of crash backoff. databases accepts a comma-separated subset of vega, query_results, gateway, gateway_offline, quickwit, iocs, monitoring, datalayer.

Note vega_python is not covered - it lives on its own cluster and is owned by dbmigratorpy.

On staging or prod, do it by hand - there is deliberately no automation:

# open a connection to the db with teleport
tsh login --proxy=vega.teleport.sh:443 --auth=okta-integration
tsh db connect staging-db --db-user=vega_admin --db-name=postgres
ALTER DATABASE vega OWNER TO vega_admin;
DROP DATABASE VEGA WITH (FORCE);

Then sync the dbmigrator app (not vega - the migration Job lives in the dbmigrator chart) to recreate the database and run the migrations.