mdbt 0.4.27__py3-none-any.whl → 0.4.29__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
mdbt/core.py CHANGED
@@ -5,6 +5,8 @@ import subprocess
5
5
  import sys
6
6
  import typing as t
7
7
 
8
+ from cryptography.hazmat.backends import default_backend
9
+ from cryptography.hazmat.primitives import serialization
8
10
  import snowflake.connector as snow
9
11
  from dotenv import find_dotenv
10
12
  from dotenv import load_dotenv
@@ -27,18 +29,27 @@ class Core:
27
29
  self.dbt_execute_command_output = ""
28
30
 
29
31
  def _create_snowflake_connection(self):
30
- if not os.environ.get("SNOWFLAKE_MAIN_ACCOUNT"):
31
- raise ValueError(
32
- "SNOWFLAKE_MAIN_ACCOUNT environment variable is not set"
33
- )
32
+ rsa_key_str = os.environ.get('MAIN__RSA_KEY')
33
+ if not rsa_key_str:
34
+ raise ValueError('MAIN__RSA_KEY environment variable not set')
35
+ # The RSA key from the environment variable may be in single line or multi-line string
36
+ if '\\n' in rsa_key_str:
37
+ rsa_key_str = rsa_key_str.replace('\\n', '\n')
38
+ rsa_key_bytes = rsa_key_str.encode()
39
+ # Load private key object
40
+ private_key = serialization.load_pem_private_key(
41
+ rsa_key_bytes,
42
+ password=None,
43
+ backend=default_backend(),
44
+ )
34
45
  self._conn = snow.connect(
35
- account=os.environ.get("SNOWFLAKE_MAIN_ACCOUNT"),
36
- password=os.environ.get("SNOWFLAKE_MAIN_PASSWORD"),
37
- schema=os.environ.get("SNOWFLAKE_MAIN_SCHEMA"),
38
- user=os.environ.get("SNOWFLAKE_MAIN_USER"),
39
- warehouse=os.environ.get("SNOWFLAKE_MAIN_WAREHOUSE"),
40
- database=os.environ.get("SNOWFLAKE_MAIN_DATABASE"),
41
- role=os.environ.get("SNOWFLAKE_MAIN_ROLE"),
46
+ user=os.getenv('MAIN__USER'),
47
+ account=os.getenv('MAIN__ACCOUNT'),
48
+ database=os.getenv('MAIN__DATABASE'),
49
+ private_key=private_key,
50
+ schema=os.getenv('MAIN__SCHEMA'),
51
+ warehouse=os.getenv('MAIN__WAREHOUSE'),
52
+ role=os.getenv('MAIN__ROLE'),
42
53
  )
43
54
 
44
55
  self._cur = self._conn.cursor()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mdbt
3
- Version: 0.4.27
3
+ Version: 0.4.29
4
4
  Summary: A CLI tool to manage dbt builds with state handling and manifest management
5
5
  Author: Craig Lathrop
6
6
  Author-email: info@markimicrowave.com
@@ -3,7 +3,7 @@ mdbt/ai_core.py,sha256=diJFT35pGOEIQpUYOk6GFBgQgmK2sHj_F_kfkjeaEyQ,3963
3
3
  mdbt/build_dbt_docs_ai.py,sha256=BOuFBUJyf2l7pOzw9LSTXc5Gk-8LoGqKKDRE4Jgx0p0,5309
4
4
  mdbt/build_unit_test_data_ai.py,sha256=OqJXDerhg54_QVIlVtXNxfk5TKVe68i6JnrV_8iEDrc,4292
5
5
  mdbt/cmdline.py,sha256=meNATu3BzP_4Htt5VcoT923mlh9NsfK8og0JQgn9PCE,10822
6
- mdbt/core.py,sha256=VZhIwJEPm33hhTyYn9v7EAjXU0aDVkRsxbozz3G6OAI,4109
6
+ mdbt/core.py,sha256=Y1K7ecJTZ9Bfkvk7Kk7-DRO1-QJs9GD6RP6m7sfQ-oY,4522
7
7
  mdbt/expectations_output_builder.py,sha256=AXKEM-WO7FecYzfMLwzsOnQnVf7AiHBi_khyidE2lJs,3195
8
8
  mdbt/lightdash.py,sha256=qJBJ-pc5mN8GBA1MZElRhtA8aldrX-AgvHtha4iOA-Y,2745
9
9
  mdbt/main.py,sha256=UO3r7zOXmVpjnAIz2eeZVeQMFmgXa698Gm42Wo2qhRU,16939
@@ -12,9 +12,9 @@ mdbt/prompts.py,sha256=2vCvh9hamgop92kGGaMKtap11F2MZiM7hHKjcwX4lhQ,13992
12
12
  mdbt/recce.py,sha256=P14CvWd7lRgTPUW7BVMLmcclSqby-_uSgpoI3r5VjTA,2327
13
13
  mdbt/sort_yaml_fields.py,sha256=1PROsrz8KubSr0bVmPq3oAw4V-eSiZh1uGRR5B-uaA4,5648
14
14
  mdbt/sql_sorter.py,sha256=8bd6svrtcXp7ePT2g4FTGLTW55qbsVjXgUmba7L-G-4,6467
15
- mdbt-0.4.27.dist-info/licenses/LICENSE,sha256=DrJpgQEYhttwpwcE56BzrGZ1aEfR_tqfaxsI5NlsYOE,1072
16
- mdbt-0.4.27.dist-info/METADATA,sha256=nYnEobjgoL3XJcryk3GBVzLZgxniFvp6J7u-w55sZzU,920
17
- mdbt-0.4.27.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
18
- mdbt-0.4.27.dist-info/entry_points.txt,sha256=fVft1CYVP2MtZMMtsXN67S1T5RszfgKtAuaeoKLdCow,43
19
- mdbt-0.4.27.dist-info/top_level.txt,sha256=-PP7vAl9EgVjRTzBovElczsPNjOfja6kjZssNmv5vo0,5
20
- mdbt-0.4.27.dist-info/RECORD,,
15
+ mdbt-0.4.29.dist-info/licenses/LICENSE,sha256=DrJpgQEYhttwpwcE56BzrGZ1aEfR_tqfaxsI5NlsYOE,1072
16
+ mdbt-0.4.29.dist-info/METADATA,sha256=-vcHygz-kLA0k4vMO4LotYRbfGQci-fdOayHkQNWOng,920
17
+ mdbt-0.4.29.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
18
+ mdbt-0.4.29.dist-info/entry_points.txt,sha256=fVft1CYVP2MtZMMtsXN67S1T5RszfgKtAuaeoKLdCow,43
19
+ mdbt-0.4.29.dist-info/top_level.txt,sha256=-PP7vAl9EgVjRTzBovElczsPNjOfja6kjZssNmv5vo0,5
20
+ mdbt-0.4.29.dist-info/RECORD,,
File without changes