diff --git a/.gitignore b/.gitignore index 4c2285469..07b8a79ca 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ __pycache__ .media data/**/* !data/.gitkeep +!data/preview_env_seed.zip .next conf/env diff --git a/bin/ck_setup.sh b/bin/ck_setup.sh index 02dfd9e74..6f98a98be 100755 --- a/bin/ck_setup.sh +++ b/bin/ck_setup.sh @@ -1,4 +1,9 @@ #!/bin/bash + +# NB: Keep the resulting database state up to date with data/post_ck_setup_db_export.psql +# (excluding the `python manage.py seed` command) in order to keep the preview environments +# in-sync with the dev environments. + echo ''; echo '------------------------------------'; echo ''; @@ -32,14 +37,6 @@ python manage.py migrate python manage.py createcachetable echo "Done" -echo ''; -echo '------------------------------------'; -echo ''; -echo 'Seeding database...'; -echo ''; -echo '------------------------------------'; -python manage.py seed - echo ''; echo '------------------------------------'; echo ''; @@ -65,6 +62,14 @@ curl 'https://researchbriefings.files.parliament.uk/documents/CBP-10009/HoC-GE20 -o data/2024_general_election.csv python manage.py import_last_election_data +echo ''; +echo '------------------------------------'; +echo ''; +echo 'Seeding database...'; +echo ''; +echo '------------------------------------'; +python manage.py seed + echo ''; echo '------------------------------------'; echo ''; @@ -82,3 +87,7 @@ echo ''; echo 'Setup complete!'; echo ''; echo '------------------------------------'; + +# NB: Keep the resulting database state up to date with data/post_ck_setup_db_export.psql +# (excluding the `python manage.py seed` command) in order to keep the preview environments +# in-sync with the dev environments. diff --git a/data/preview_env_seed.zip b/data/preview_env_seed.zip new file mode 100644 index 000000000..76bc54567 Binary files /dev/null and b/data/preview_env_seed.zip differ diff --git a/docker-compose.yml b/docker-compose.yml index 8cb364685..6f64e99e2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -22,7 +22,7 @@ services: web: image: mysociety/local-intelligence-hub:${TAG:-latest} build: . - command: /app/script/server --development + command: .venv/bin/python manage.py runserver 0.0.0.0:8000 volumes: - .:/app depends_on: diff --git a/render.yaml b/render.yaml index 39997a727..68bd5e079 100644 --- a/render.yaml +++ b/render.yaml @@ -57,7 +57,12 @@ services: # SEED_AIRTABLE_PLEDGELIST_API_KEY, SEED_AIRTABLE_PLEDGELIST_BASE_ID, SEED_AIRTABLE_PLEDGELIST_TABLE_NAME # SEED_AIRTABLE_DATASOURCE_API_KEY, SEED_AIRTABLE_DATASOURCE_BASE_ID, SEED_AIRTABLE_DATASOURCE_TABLE_NAME # SEED_AIRTABLE_EVENTS_API_KEY, SEED_AIRTABLE_EVENTS_BASE_ID, SEED_AIRTABLE_EVENTS_TABLE_NAME - preDeployCommand: python manage.py migrate && python manage.py createcachetable && python manage.py seed + preDeployCommand: > + python manage.py migrate && + python manage.py createcachetable && + unzip data/preview_env_seed.zip -d data && + cat data/preview_env_seed.psql | python manage.py dbshell && + python manage.py seed healthCheckPath: / buildFilter: ignoredPaths: