Aller au contenu

Databases

databases:
pgs:
- name: mon_app
- name: mon_app_analytics

Le deployer cree automatiquement :

  • La base de donnees sur l’instance Cloud SQL partagee
  • Un Cloud SQL Auth Proxy (sidecar deployment)
  • Les credentials Vault (PG_HOST_{NAME}, PG_USER_{NAME}, PG_PASS_{NAME}, PG_DBNAME_{NAME})
ProprieteTypeRequisDefautDescription
namestringouiNom de la base
instancestringnonpsql-1Instance Cloud SQL
branchstringnonbranche couranteOverride de branche
projectstringnonprojet courantOverride de projet GCP
extensionsstring[]non[]Extensions PostgreSQL a activer
restoreFileNamestringnonFichier de restauration (backup)

Pour acceder a une base sur un autre projet :

databases:
pgsExt:
- name: shared_db
project: buhsv-prod-platform
instance: psql-2
databases:
mgs:
- name: mon_app

Creee sur le cluster MongoDB Atlas partage. Variables injectees : MG_HOST_{NAME}, MG_USER_{NAME}, MG_PASS_{NAME}, MG_DBNAME_{NAME}.

ProprieteTypeRequisDefautDescription
namestringouiNom de la base
clusterHoststringnondepuis VaultHost du cluster Atlas
branchstringnonbranche couranteOverride de branche
restoreFileNamestringnonFichier de restauration
databases:
mgsExt:
- name: shared_mongo

Pour executer des migrations au deploiement :

migration:
enable: true
useAppImg: true # Utilise l'image de l'app
command: ["npm", "run", "migrate"]
ChampTypeDescription
enablebooleanActiver les migrations
useAppImgbooleanUtiliser l’image Docker de l’app pour la migration
commandstring/string[]Commande de migration
# Node.js
migration:
enable: true
useAppImg: true
command: ["npm", "run", "migrate"]
# PHP/Symfony
migration:
enable: true
useAppImg: true
command: ["/bin/sh", "-c", "php bin/console doctrine:migrations:migrate --no-interaction"]
# Python/Django
migration:
enable: true
useAppImg: true
command: ["python", "manage.py", "migrate", "--noinput"]

Voir aussi : Toutes les proprietes | Workers & CronJobs