@@ -352,6 +352,15 @@ jobs:
352352 - *restore_venv_cache
353353 - *build
354354 - *attach_generated_sql
355+ - &restore_schema_cache
356+ run :
357+ name : Restore schema cache from generate-sql job
358+ command : |
359+ # Restore stable table schema cache from workspace
360+ if [ -d /tmp/workspace/schema-cache/bigquery_etl_schemas ]; then
361+ cp -r /tmp/workspace/schema-cache/bigquery_etl_schemas /tmp/
362+ echo "Restored schema cache from generate-sql job"
363+ fi
355364 - *authenticate
356365 - &add_private_bigquery_etl_ssh_keys
357366 add_ssh_keys :
@@ -407,6 +416,11 @@ jobs:
407416 command : |
408417 rm ~/telemetry-airflow/dags/* -f || true
409418 cp -a /tmp/workspace/generated-sql/dags/. ~/telemetry-airflow/dags/
419+ - restore_cache :
420+ keys :
421+ - telemetry-airflow-deps-v1-{{ checksum "~/telemetry-airflow/requirements.txt" }}-{{ checksum "~/telemetry-airflow/requirements-dev.txt" }}-{{ checksum "~/telemetry-airflow/requirements-override.txt" }}
422+ - telemetry-airflow-deps-v1-{{ checksum "~/telemetry-airflow/requirements.txt" }}-{{ checksum "~/telemetry-airflow/requirements-dev.txt" }}-
423+ - telemetry-airflow-deps-v1-
410424 - run :
411425 name : Install telemetry-airflow dependencies
412426 command : |
@@ -416,6 +430,10 @@ jobs:
416430 pip install -r requirements.txt
417431 pip install -r requirements-dev.txt
418432 pip install -r requirements-override.txt
433+ - save_cache :
434+ paths :
435+ - ~/telemetry-airflow/.venv
436+ key : telemetry-airflow-deps-v1-{{ checksum "~/telemetry-airflow/requirements.txt" }}-{{ checksum "~/telemetry-airflow/requirements-dev.txt" }}-{{ checksum "~/telemetry-airflow/requirements-override.txt" }}
419437 - run :
420438 name : 🧪 Test valid DAGs
421439 command : |
@@ -610,6 +628,7 @@ jobs:
610628 --ignore derived_view_schemas \
611629 --output-dir /tmp/workspace/generated-sql/sql/ \
612630 --target-project moz-fx-data-shared-prod
631+ PATH="venv/bin:$PATH" script/bqetl format /tmp/workspace/generated-sql/sql/
613632 else
614633 echo "Changes made don't affect generated SQL. Use content from generated-sql"
615634
@@ -618,18 +637,26 @@ jobs:
618637 cp -a sql/. /tmp/workspace/generated-sql/sql
619638 fi
620639
621- PATH="venv/bin:$PATH" script/bqetl format /tmp/workspace/generated-sql/sql/
622640 PATH="venv/bin:$PATH" script/bqetl dependency record \
623641 --skip-existing \
624642 "/tmp/workspace/generated-sql/sql/"
625643 PATH="venv/bin:$PATH" script/bqetl metadata update \
626644 --sql-dir /tmp/workspace/generated-sql/sql/ \
627645 /tmp/workspace/generated-sql/sql/
628646 PATH="venv/bin:$PATH" script/bqetl monitoring update /tmp/workspace/generated-sql/sql/
647+ - run :
648+ name : Copy schema cache for reuse in other jobs
649+ command : |
650+ # Copy stable table schema cache to workspace for reuse in generate-dags
651+ mkdir -p /tmp/workspace/schema-cache
652+ if [ -d /tmp/bigquery_etl_schemas ]; then
653+ cp -r /tmp/bigquery_etl_schemas /tmp/workspace/schema-cache/
654+ fi
629655 - persist_to_workspace :
630656 root : /tmp/workspace
631657 paths :
632658 - generated-sql
659+ - schema-cache
633660 - unless :
634661 condition : *validate-sql-or-routines
635662 steps :
@@ -646,6 +673,7 @@ jobs:
646673 - *restore_venv_cache
647674 - *build
648675 - *attach_generated_sql
676+ - *restore_schema_cache
649677 - *copy_generated_sql
650678 - add_ssh_keys :
651679 fingerprints :
@@ -1106,8 +1134,8 @@ jobs:
11061134 name : Manually trigger integration tests for fork
11071135 # yamllint disable rule:line-length
11081136 command : |
1109- apt update
1110- apt install jq -y
1137+ sudo apt update
1138+ sudo apt install jq -y
11111139
11121140 CIRCLE_PR_BRANCH=`curl -s https://api.github.com/repos/${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}/pulls/${CIRCLE_PR_NUMBER} | jq -r '.head.label'`
11131141
0 commit comments