Comandes CLI
Totes les comandes personalitzades del projecte tenen el prefix app: i s'executen amb php bin/console. Cadascuna fixa ini_set('memory_limit', '1024M') perquè els processos ETL poden carregar molts registres.
app:load-initial-data
Carrega les dades geogràfiques bàsiques i les agrupacions territorials. Si no s'especifica cap flag, executa totes les seccions.
php bin/console app:load-initial-data [opcions]| Flag | Què importa |
|---|---|
--municipalities | Municipis, comarques i províncies |
--population | Sèrie temporal històrica de població |
--ubicacio | Agrupació per ubicació geogràfica |
--ruralitat | Agrupació per ruralitat |
--territory | Regions territorials + AMB/RMB |
--industrial | Agrupació industrial |
Dades de la província de Barcelona
Per defecte carrega els municipis de la província de Barcelona. Requereix connexió a internet (API d'IDESCAT). Cal executar-la un cop en la instal·lació inicial. Vegeu Instal·lació.
app:run-etl-api
Executa la importació ETL d'un indicador (o de tots). Vegeu ETL: importadors de dades.
# Un indicador concret
php bin/console app:run-etl-api 1.2.1
# Tots els indicadors suportats
php bin/console app:run-etl-api --all| Argument / opció | Descripció |
|---|---|
indicator (arg.) | ID de l'indicador (p. ex. 1.2.1). Ometre'l amb --all |
--all | Executa tots els indicadors suportats |
--scope | Àmbits separats per comes: municipality,comarca,province,aggregation (per defecte: tots) |
--csv | Ruta a un fitxer CSV (per a importadors basats en CSV) |
--csv2 | Segon CSV (només per a l'importador del 7.1.1) |
--skip-aggregation | No executa el càlcul d'agrupacions després de la importació (per a depuració) |
Exemple amb àmbit limitat:
php bin/console app:run-etl-api 1.2.2 --scope=municipality,comarcaCàlcul d'agrupacions automàtic
A partir del refactor de juny de 2026, app:run-etl-api dispara automàticament el càlcul d'agrupacions a l'afterSuccess() per a cada scope on l'indicador estigui classificat a AggregationConfig. Ja no cal cridar app:calculate-aggregation-values manualment després d'un import normal. Vegeu Agrupacions.
app:calculate-aggregation-values
Calcula i persisteix els valors agregats per a agrupacions, comarques i/o províncies. Vegeu Agrupacions.
TIP
A partir del refactor de juny de 2026 aquesta comanda és opcional en el flux habitual: app:run-etl-api ja la dispara automàticament. Manté la utilitat per a recàlculs massius (p. ex. quan s'afegeixen indicadors a AggregationConfig) sense haver de re-executar l'ETL.
php bin/console app:calculate-aggregation-values [indicador] [opcions]| Argument / opció | Descripció |
|---|---|
indicator (arg.) | ID concret a processar; ometre'l per processar tots els elegibles |
--target | aggregation | comarca | province | all (per defecte all) |
--group | Slug d'agrupació o comarca_code concret |
--strategy | ratio | population-weighted |
app:import-population
Importa la sèrie temporal de població des de l'API de Transparència Catalunya cap a la taula population. S'executa periòdicament quan apareixen dades noves (anualment).
php bin/console app:import-populationapp:import-budgets
Importa les dades de pressupostos municipals (tb_inventario i tb_funcional) per a un any concret. Les descarrega del repositori GitHub PopulateTools/gobierto-budgets-data. Vegeu Pressupost.
php bin/console app:import-budgets 2024| Argument | Descripció |
|---|---|
year (obligatori) | Any per al qual importar les dades de pressupost |
app:export-csv
Genera fitxers CSV amb les dades dels indicadors, filtrats per ODS. Si no s'indica cap ODS, genera els 17. Els fitxers es desen a var/sdg{N}.csv.
# Tots els ODS (1-17)
php bin/console app:export-csv
# Només un ODS
php bin/console app:export-csv 3| Argument | Descripció |
|---|---|
sdg (opcional) | ODS a exportar (1–17). Ometre'l genera tots |
app:load-dump
Carrega un dump SQL (.sql o .sql.gz) a la base de dades actual. Agafa les credencials directament de la connexió configurada a l'API (DATABASE_HOST, DATABASE_PORT, etc.), de manera que no cal repetir les credencials enlloc (ni al deploy.sh). Internament descomprimeix el .gz si cal i invoca el client mysql.
# Carregar un dump (accepta .sql o .sql.gz)
php bin/console app:load-dump db-dumps/dump-20260716-1200.sql.gz| Argument | Descripció |
|---|---|
dump-file (obligatori) | Ruta al fitxer de dump (.sql o .sql.gz) |
És la comanda que el deploy.sh del servidor de DIBA fa servir per carregar el dump més recent durant el desplegament.
Comandes estàndard de Symfony / Doctrine
Les comandes habituals del framework també estan disponibles.
Migracions i esquema
Cap canvi directe a la BBDD
Tots els canvis d'esquema s'han de fer via una migració. Vegeu Model de dades → Evolució de l'esquema.
php bin/console doctrine:migrations:migrate # aplica les migracions pendents
php bin/console doctrine:migrations:status # estat (aplicades vs. pendents)
php bin/console make:migration # genera una migració a partir de canvis a les entitats
php bin/console doctrine:migrations:diff # equivalent a make:migration (sintaxi clàssica)
php bin/console doctrine:schema:validate # comprova que entitats i BBDD coincideixenGeneradors (make:)
php bin/console make:entity # crea/modifica una entitat
php bin/console make:controller # crea un controlador
php bin/console make:command # crea una comanda CLI
php bin/console make:repository # crea un repositori per a una entitat existentVegeu la documentació del Maker Bundle.
Operacions generals
php bin/console cache:clear # neteja la caché
php bin/console debug:container --tag=app.etl_importer # llista els importadors ETL detectats
php bin/console debug:router # llista totes les rutes
php bin/console lexik:jwt:generate-keypair # genera les claus JWT