running on pointer database

This commit is contained in:
Pablo Martin 2025-03-24 11:55:53 +01:00
parent c59600d9f2
commit f2e447ba60
2 changed files with 17 additions and 22 deletions

View file

@ -12,15 +12,15 @@ steps:
cp ~/dbt-ci/.env . cp ~/dbt-ci/.env .
# Check if it matches the refs/pull/<PR_ID>/merge pattern # Check if it matches the refs/pull/<PR_ID>/merge pattern
if [[ $BUILD_SOURCEBRANCH =~ ^refs/pull/([0-9]+)/merge$ ]]; then # if [[ $BUILD_SOURCEBRANCH =~ ^refs/pull/([0-9]+)/merge$ ]]; then
POSTGRES_DATABASE="ci_pr_${BASH_REMATCH[1]}" # POSTGRES_DATABASE="ci_pr_${BASH_REMATCH[1]}"
else # else
POSTGRES_DATABASE="ci_${BUILD_SOURCEBRANCH#refs/heads/}" # POSTGRES_DATABASE="ci_${BUILD_SOURCEBRANCH#refs/heads/}"
fi # fi
echo "POSTGRES_DATABASE: $POSTGRES_DATABASE" echo "POSTGRES_DATABASE: $POSTGRES_DATABASE"
echo "POSTGRES_DATABASE=${POSTGRES_DATABASE}" >> .env echo "POSTGRES_DATABASE=prd-pointer}" >> .env
set -a && source .env && set +a set -a && source .env && set +a
displayName: 'Load env' displayName: 'Load env'
@ -30,12 +30,6 @@ steps:
psql -h $POSTGRES_HOST -U $POSTGRES_USER -d postgres -c "SELECT 1 FROM pg_database WHERE datname = 'postgres';" psql -h $POSTGRES_HOST -U $POSTGRES_USER -d postgres -c "SELECT 1 FROM pg_database WHERE datname = 'postgres';"
displayName: 'Smoke test Postgres connection' displayName: 'Smoke test Postgres connection'
- script: |
set -a && source .env && set +a
psql -h $POSTGRES_HOST -U $POSTGRES_USER -d postgres -c "CREATE DATABASE ${POSTGRES_DATABASE}"
displayName: 'Create branch dedicated database'
- script: | - script: |
cd ~/dbt-ci cd ~/dbt-ci
/bin/bash build-master-artifacts.sh /bin/bash build-master-artifacts.sh
@ -80,16 +74,11 @@ steps:
- script: | - script: |
source venv/bin/activate source venv/bin/activate
echo "CI_SCHEMA_NAME=HARDCODED_SCHEMA" >> .env
set -a && source .env && set +a set -a && source .env && set +a
dbt run --select "state:modified" --state ~/dbt-ci/master-artifacts/ --defer dbt run --select "state:modified" --state ~/dbt-ci/master-artifacts/ --defer
displayName: 'Run modified models' displayName: 'Run modified models'
- script: |
set -a && source .env && set +a
psql -h $POSTGRES_HOST -U $POSTGRES_USER -d postgres -c "DROP DATABASE ${POSTGRES_DATABASE}"
condition: always()
displayName: 'Delete branch dedicated database'

View file

@ -6,13 +6,19 @@ To understand better, check:
- https://www.youtube.com/watch?v=AvrVQr5FHwk - https://www.youtube.com/watch?v=AvrVQr5FHwk
- https://docs.getdbt.com/docs/build/custom-schemas - https://docs.getdbt.com/docs/build/custom-schemas
*/ */
{% macro generate_schema_name(custom_schema_name, node) -%}
{% macro generate_schema_name(custom_schema_name, node) -%} {% macro generate_schema_name(custom_schema_name, node) -%}
{%- set default_schema = target.schema -%} {%- set default_schema = target.schema -%}
{%- if custom_schema_name is none -%} {{ default_schema }} {%- set is_ci_execution = env_var("IS_CI_EXECUTION", "0") | int -%}
{%- set ci_schema_name = env_var("CI_SCHEMA_NAME", "ci_default") -%}
{%- if is_ci_execution == 1 -%} {{ ci_schema_name }}
{%- elif custom_schema_name is none -%} {{ default_schema }}
{%- else -%} {{ custom_schema_name | trim }} {%- else -%} {{ custom_schema_name | trim }}
{%- endif -%} {%- endif -%}
{%- endmacro %} {%- endmacro %}
{%- endmacro %}