@@ -7,13 +7,46 @@ project_dir=$(cd "$(dirname "$script_dir")" && pwd)
77
88cd " $project_dir "
99
10- database_urls=(
11- # Cf. ../docker-compose.override.yml
12- ' mysql://db:db@database-0:3306/db?serverVersion=10.11.2-MariaDB&charset=utf8mb4'
13- ' mysql://db:db@database-1:3306/db?serverVersion=10.11.2-MariaDB&charset=utf8mb4'
14- )
10+ config_file=" $script_dir /fetch-data.config"
1511
16- current_database_url=$( docker compose exec phpfpm bin/console debug:config DoctrineBundle --resolve-env --format=json | docker compose run --rm jq ' .doctrine.dbal.connections.default.url' --raw-output)
12+ if [ ! -e " $config_file " ]; then
13+ (>&2 echo " Config file $config_file does not exists" )
14+
15+ exit 1
16+ fi
17+
18+ # shellcheck source=fetch-data.config
19+ source " $config_file "
20+
21+ if [ -z " ${database_urls:- } " ]; then
22+ cat << EOF >&2
23+ Missing
24+
25+ database_urls=(…)
26+
27+ in $config_file .
28+
29+ EOF
30+
31+ exit 1
32+ fi
33+
34+ # https://www.php.net/manual/en/reserved.constants.php#constant.php-int-max
35+ max=${max:- 9223372036854775807}
36+ page_size=${page_size:- 1000}
37+
38+ echo max: " $max "
39+ echo page_size: " $page_size "
40+
41+ function compose() {
42+ if [[ -n " ${compose_script:- } " ]]; then
43+ " $compose_script " " $@ "
44+ else
45+ docker compose " $@ "
46+ fi
47+ }
48+
49+ current_database_url=$( compose exec phpfpm bin/console debug:config DoctrineBundle --resolve-env --format=json | compose run --rm jq ' .doctrine.dbal.connections.default.url' --raw-output)
1750
1851current_index=-1
1952for i in " ${! database_urls[@]} " ; do
@@ -31,13 +64,12 @@ echo current_index: "$current_index"
3164echo next_database_url: " $next_database_url "
3265echo next_index: " $next_index "
3366
34- docker compose exec --env DATABASE_URL=" $next_database_url " phpfpm bin/console doctrine:migrations:migrate --no-interaction
35- # @todo Fetch data
36- # docker compose exec --env DATABASE_URL="$next_database_url" phpfpm bin/console organisation:fetch:data
67+ compose exec --env DATABASE_URL=" $next_database_url " phpfpm bin/console doctrine:migrations:migrate --no-interaction
68+ compose exec --env DATABASE_URL=" $next_database_url " phpfpm bin/console --no-debug organisation:fetch:data --max=" $max " --page-size=" $page_size " -vvv
3769
3870echo " DATABASE_URL='$next_database_url '" | tee > | .env.local.database
3971
4072# Re-up to read in new database URL.
41- docker compose up --detach
73+ compose up --detach
4274
4375echo ' SUCCESS!'
0 commit comments