From 04e7c1c085d15792b0cf9be4db36685d64e2220b Mon Sep 17 00:00:00 2001 From: tallamohan Date: Thu, 12 Oct 2023 18:27:01 +0530 Subject: [PATCH 1/6] Update cd-release-testpypi.yml --- .github/workflows/cd-release-testpypi.yml | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/.github/workflows/cd-release-testpypi.yml b/.github/workflows/cd-release-testpypi.yml index 70abb87c..d54f0b70 100644 --- a/.github/workflows/cd-release-testpypi.yml +++ b/.github/workflows/cd-release-testpypi.yml @@ -41,14 +41,9 @@ jobs: env: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.TESTPYPI_TOKEN }} - - name: Create Release - id: create_release - uses: actions/create-release@v1 + - name: Delete dummy branch + shell: bash + run: | + git branch --delete dummy_release/$RELEASE_VERSION env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - with: - tag_name: v${{ github.event.inputs.releaseVersion }} - release_name: dbt-teradata v${{ github.event.inputs.releaseVersion }} - body_path: ./CHANGELOG.md - draft: false - prerelease: false + RELEASE_VERSION: ${{ github.event.inputs.releaseVersion }} From 3b9e3c484694fc6d0f42c98e53b86d8cb707274b Mon Sep 17 00:00:00 2001 From: Talla Date: Fri, 13 Oct 2023 11:18:42 +0530 Subject: [PATCH 2/6] IDE-24142: Add --no-inject-ephemeral-ctes flag for compile command --- .../functional/adapter/ephemeral/fixtures.py | 43 +++++++++++++++++ .../ephemeral/test_ephemeral_compilation.py | 47 +++++++++++++++++++ 2 files changed, 90 insertions(+) create mode 100644 tests/functional/adapter/ephemeral/fixtures.py create mode 100644 tests/functional/adapter/ephemeral/test_ephemeral_compilation.py diff --git a/tests/functional/adapter/ephemeral/fixtures.py b/tests/functional/adapter/ephemeral/fixtures.py new file mode 100644 index 00000000..19e22367 --- /dev/null +++ b/tests/functional/adapter/ephemeral/fixtures.py @@ -0,0 +1,43 @@ +fct_eph_first_sql = """ +-- fct_eph_first.sql +{{ config(materialized='ephemeral') }} + +with int_eph_first as( + select * from {{ ref('int_eph_first') }} +) + +select * from int_eph_first +""" + +int_eph_first_sql = """ +-- int_eph_first.sql +{{ config(materialized='ephemeral') }} + +select + 1 as first_column, + 2 as second_column +""" + +schema_yml = """ +version: 2 + +models: + - name: int_eph_first + columns: + - name: first_column + tests: + - not_null + - name: second_column + tests: + - not_null + + - name: fct_eph_first + columns: + - name: first_column + tests: + - not_null + - name: second_column + tests: + - not_null + +""" diff --git a/tests/functional/adapter/ephemeral/test_ephemeral_compilation.py b/tests/functional/adapter/ephemeral/test_ephemeral_compilation.py new file mode 100644 index 00000000..89acef6b --- /dev/null +++ b/tests/functional/adapter/ephemeral/test_ephemeral_compilation.py @@ -0,0 +1,47 @@ +from dbt.contracts.graph.nodes import ModelNode +from dbt.contracts.results import RunExecutionResult, RunResult +import pytest +from dbt.tests.util import run_dbt + +from tests.functional.adapter.ephemeral.fixtures import ( + fct_eph_first_sql, + int_eph_first_sql, + schema_yml +) + + + +SUPPRESSED_CTE_EXPECTED_OUTPUT = """-- fct_eph_first.sql + + +with int_eph_first as( + select * from __dbt__cte__int_eph_first +) + +select * from int_eph_first""" + + +class TestEphemeralCompilation: + @pytest.fixture(scope="class") + def models(self): + return { + "int_eph_first.sql": int_eph_first_sql, + "fct_eph_first.sql": fct_eph_first_sql, + "schema.yml": schema_yml, + } + ''' + def test_ephemeral_compilation(self, project): + # Note: There are no models that run successfully. This testcase tests running tests. + results = run_dbt(["run"]) + assert len(results) == 0 + ''' + def test__suppress_injected_ctes(self, project): + compile_output = run_dbt( + ["compile", "--no-inject-ephemeral-ctes" , "--select", "fct_eph_first"] + ) + assert isinstance(compile_output, RunExecutionResult) + node_result = compile_output.results[0] + assert isinstance(node_result, RunResult) + node = node_result.node + assert isinstance(node, ModelNode) + assert node.compiled_code == SUPPRESSED_CTE_EXPECTED_OUTPUT \ No newline at end of file From 7c1e9147818c6830d7e936bb85bc354e4d4e0a88 Mon Sep 17 00:00:00 2001 From: Talla Date: Mon, 16 Oct 2023 17:13:07 +0530 Subject: [PATCH 3/6] Update test_ephemeral_compilation.py --- .../functional/adapter/ephemeral/test_ephemeral_compilation.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/functional/adapter/ephemeral/test_ephemeral_compilation.py b/tests/functional/adapter/ephemeral/test_ephemeral_compilation.py index 89acef6b..638c8c17 100644 --- a/tests/functional/adapter/ephemeral/test_ephemeral_compilation.py +++ b/tests/functional/adapter/ephemeral/test_ephemeral_compilation.py @@ -44,4 +44,4 @@ def test__suppress_injected_ctes(self, project): assert isinstance(node_result, RunResult) node = node_result.node assert isinstance(node, ModelNode) - assert node.compiled_code == SUPPRESSED_CTE_EXPECTED_OUTPUT \ No newline at end of file + assert node.compiled_code == SUPPRESSED_CTE_EXPECTED_OUTPUT From a64baacca93e5bea1dd201b3840f0c13a3e269e0 Mon Sep 17 00:00:00 2001 From: Talla Date: Mon, 16 Oct 2023 19:32:05 +0530 Subject: [PATCH 4/6] Update cd-release-testpypi.yml --- .github/workflows/cd-release-testpypi.yml | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/cd-release-testpypi.yml b/.github/workflows/cd-release-testpypi.yml index d54f0b70..c6f5cdc8 100644 --- a/.github/workflows/cd-release-testpypi.yml +++ b/.github/workflows/cd-release-testpypi.yml @@ -41,9 +41,14 @@ jobs: env: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.TESTPYPI_TOKEN }} - - name: Delete dummy branch - shell: bash - run: | - git branch --delete dummy_release/$RELEASE_VERSION + - name: Create Release + id: create_release + uses: actions/create-release@v1 env: - RELEASE_VERSION: ${{ github.event.inputs.releaseVersion }} + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + with: + tag_name: v${{ github.event.inputs.releaseVersion }} + release_name: dbt-teradata v${{ github.event.inputs.releaseVersion }} + body_path: ./CHANGELOG.md + draft: false + prerelease: false \ No newline at end of file From 2c2ca0082db06e364a4ec76f6cde1611b35617cc Mon Sep 17 00:00:00 2001 From: Talla Date: Mon, 16 Oct 2023 19:37:17 +0530 Subject: [PATCH 5/6] Update cd-release-testpypi.yml --- .github/workflows/cd-release-testpypi.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/cd-release-testpypi.yml b/.github/workflows/cd-release-testpypi.yml index c6f5cdc8..2db0e6fa 100644 --- a/.github/workflows/cd-release-testpypi.yml +++ b/.github/workflows/cd-release-testpypi.yml @@ -46,9 +46,9 @@ jobs: uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - with: - tag_name: v${{ github.event.inputs.releaseVersion }} - release_name: dbt-teradata v${{ github.event.inputs.releaseVersion }} - body_path: ./CHANGELOG.md - draft: false - prerelease: false \ No newline at end of file + with: + tag_name: v${{ github.event.inputs.releaseVersion }} + release_name: dbt-teradata v${{ github.event.inputs.releaseVersion }} + body_path: ./CHANGELOG.md + draft: false + prerelease: false \ No newline at end of file From 6b5a2bb879ec4aa23925857cdfe6f2d862224d99 Mon Sep 17 00:00:00 2001 From: Talla Date: Mon, 16 Oct 2023 19:37:44 +0530 Subject: [PATCH 6/6] Update cd-release-testpypi.yml --- .github/workflows/cd-release-testpypi.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cd-release-testpypi.yml b/.github/workflows/cd-release-testpypi.yml index 2db0e6fa..70abb87c 100644 --- a/.github/workflows/cd-release-testpypi.yml +++ b/.github/workflows/cd-release-testpypi.yml @@ -51,4 +51,4 @@ jobs: release_name: dbt-teradata v${{ github.event.inputs.releaseVersion }} body_path: ./CHANGELOG.md draft: false - prerelease: false \ No newline at end of file + prerelease: false