omnata-plugin-devkit 0.10.15a115__tar.gz → 0.10.23a129__tar.gz

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.
Files changed (77) hide show
  1. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/PKG-INFO +4 -3
  2. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/pyproject.toml +2 -2
  3. omnata_plugin_devkit-0.10.23a129/src/omnata_plugin_devkit/jinja_templates/FETCH_CONNECTIONS.sql.jinja +26 -0
  4. omnata_plugin_devkit-0.10.23a129/src/omnata_plugin_devkit/jinja_templates/FETCH_SYNCS.sql.jinja +26 -0
  5. omnata_plugin_devkit-0.10.23a129/src/omnata_plugin_devkit/jinja_templates/FETCH_SYNC_BRANCHES.sql.jinja +26 -0
  6. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/manifest.yml.jinja +5 -2
  7. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/native_app_packaging.py +3 -1
  8. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/plugin_uploader.py +11 -2
  9. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/LICENSE +0 -0
  10. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/README.md +0 -0
  11. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/__init__.py +0 -0
  12. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/airbyte_wrapper.py +0 -0
  13. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/cli/__init__.py +0 -0
  14. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/development.ipynb +0 -0
  15. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/development_session.py +0 -0
  16. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/initialiser.py +0 -0
  17. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/API_LIMITS.sql.jinja +0 -0
  18. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/ASSIGN_OUTBOUND_TARGET_TYPE.sql.jinja +0 -0
  19. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CONFIGURATION_FORM.sql.jinja +0 -0
  20. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CONFIGURE_APIS.sql.jinja +0 -0
  21. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CONNECTION_FORM.sql.jinja +0 -0
  22. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CONNECTION_TEST.sql.jinja +0 -0
  23. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CONSTRUCT_FORM_OPTION.sql.jinja +0 -0
  24. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CREATE_BILLING_EVENTS.sql.jinja +0 -0
  25. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CREATE_GENERIC_SECRET_OBJECT.sql.jinja +0 -0
  26. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CREATE_GENERIC_SECRET_OBJECT_FROM_EXISTING.sql.jinja +0 -0
  27. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CREATE_NETWORK_RULE_OBJECT.sql.jinja +0 -0
  28. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CREATE_NETWORK_RULE_OBJECT_FROM_EXISTING.sql.jinja +0 -0
  29. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/CREATE_OAUTH_SECRET_OBJECT.sql.jinja +0 -0
  30. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/INBOUND_LIST_STREAMS.sql.jinja +0 -0
  31. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/LIST_STAGES.sql.jinja +0 -0
  32. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/NETWORK_ADDRESSES.sql.jinja +0 -0
  33. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/NGROK_POST_TUNNEL_FIELDS.sql.jinja +0 -0
  34. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/OUTBOUND_RECORD_VALIDATOR.sql.jinja +0 -0
  35. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/PENDING_API_CONFIGURATION.sql.jinja +0 -0
  36. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/POST_INSTALL_ACTIONS.sql.jinja +0 -0
  37. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/RENAME_CONNECTION_METHODS.sql.jinja +0 -0
  38. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/RETRIEVE_NETWORK_RULE_OBJECT.sql.jinja +0 -0
  39. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/RETRIEVE_SECRETS.sql.jinja +0 -0
  40. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/RETRIEVE_SECRETS_UDF.sql.jinja +0 -0
  41. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/SYNC.sql.jinja +0 -0
  42. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/TEST_CALLBACK.sql.jinja +0 -0
  43. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/TEST_OAUTH_TOKEN_EXISTS.sql.jinja +0 -0
  44. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/TUNNEL_TEST.sql.jinja +0 -0
  45. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/UPDATE_API_CONFIGURATION.sql.jinja +0 -0
  46. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/UPDATE_GENERIC_SECRET_OBJECT.sql.jinja +0 -0
  47. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/UPDATE_GENERIC_SECRET_OBJECT_OLD.sql.jinja +0 -0
  48. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/jinja_templates/UPDATE_NETWORK_RULE_OBJECT.sql.jinja +0 -0
  49. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/plugin_registration.py +0 -0
  50. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/plugin_template/icon.svg +0 -0
  51. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/plugin_template/plugin.py +0 -0
  52. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/plugin_template/plugin_development.ipynb +0 -0
  53. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/plugin_template/requirements.txt +0 -0
  54. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/__init__.py +0 -0
  55. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/__init__.py +0 -0
  56. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/__init__.py +0 -0
  57. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/config.py +0 -0
  58. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/constants.py +0 -0
  59. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/exceptions.py +0 -0
  60. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/secure_path.py +0 -0
  61. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/secure_utils.py +0 -0
  62. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/utils/__init__.py +0 -0
  63. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/api/utils/types.py +0 -0
  64. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/app/__init__.py +0 -0
  65. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/app/snow_connector.py +0 -0
  66. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/__init__.py +0 -0
  67. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/__init__.py +0 -0
  68. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/models.py +0 -0
  69. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/package/__init__.py +0 -0
  70. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/package_utils.py +0 -0
  71. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/snowpark_shared.py +0 -0
  72. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/venv.py +0 -0
  73. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/zipper.py +0 -0
  74. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/snowcli/cli/templates/environment.yml.jinja +0 -0
  75. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/streamlit/plugin_configuration.py +0 -0
  76. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/test_step_definitions.py +0 -0
  77. {omnata_plugin_devkit-0.10.15a115 → omnata_plugin_devkit-0.10.23a129}/src/omnata_plugin_devkit/utils.py +0 -0
@@ -1,7 +1,8 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: omnata-plugin-devkit
3
- Version: 0.10.15a115
3
+ Version: 0.10.23a129
4
4
  Summary:
5
+ License-File: LICENSE
5
6
  Author: James Weakley
6
7
  Author-email: james.weakley@omnata.com
7
8
  Requires-Python: >=3.10,<3.11
@@ -12,7 +13,7 @@ Requires-Dist: behave_pandas (>=0.5.0,<0.6.0)
12
13
  Requires-Dist: jinja2 (>=3,<=3.1.4)
13
14
  Requires-Dist: numpy (<=1.27.0)
14
15
  Requires-Dist: omnata-plugin-runtime (>=0.10.20)
15
- Requires-Dist: omnata_cli (>=0.2.1,<0.3.0)
16
+ Requires-Dist: omnata_cli (>=0.2.3,<0.3.0)
16
17
  Requires-Dist: pandas (>=2,<=2.1.4)
17
18
  Requires-Dist: pyparsing (>=3.0)
18
19
  Requires-Dist: python-slugify (>=8,<9)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "omnata-plugin-devkit"
3
- version = "0.10.15-a115"
3
+ version = "0.10.23-a129"
4
4
  description = ""
5
5
  authors = ["James Weakley <james.weakley@omnata.com>"]
6
6
  readme = "README.md"
@@ -8,7 +8,7 @@ packages = [{ include = "omnata_plugin_devkit", from = "src" }]
8
8
 
9
9
  [tool.poetry.dependencies]
10
10
  python = "~3.10"
11
- omnata_cli = "^0.2.1"
11
+ omnata_cli = "^0.2.3"
12
12
  omnata-plugin-runtime = ">=0.10.20"
13
13
  pandas = "^2,<=2.1.4"
14
14
  numpy = "<=1.27.0"
@@ -0,0 +1,26 @@
1
+ CREATE or replace PROCEDURE PLUGIN.FETCH_CONNECTIONS()
2
+ RETURNS TABLE()
3
+ LANGUAGE SQL
4
+ as
5
+ DECLARE
6
+
7
+ CONNECTIONS resultset;
8
+ SYNC_ENGINE_DATABASE_NAME varchar;
9
+ PROC_NAME varchar;
10
+ PLUGIN_REGISTRATION_EXCEPTION EXCEPTION (-20001, 'Plugin is not registered to a sync engine instance');
11
+ c1 CURSOR FOR select min(APPLICATION_NAME) from DATA.OMNATA_REGISTRATION;
12
+ BEGIN
13
+
14
+ OPEN c1;
15
+ FETCH c1 INTO SYNC_ENGINE_DATABASE_NAME;
16
+ IF (:SYNC_ENGINE_DATABASE_NAME = null) THEN
17
+ RAISE PLUGIN_REGISTRATION_EXCEPTION;
18
+ END IF;
19
+
20
+ select CONCAT(:SYNC_ENGINE_DATABASE_NAME,'.API.PLUGIN_FETCH_CONNECTIONS') into :PROC_NAME;
21
+
22
+ CONNECTIONS:= (call IDENTIFIER(:PROC_NAME)(current_database(),PLUGIN.TOKEN()));
23
+
24
+ RETURN TABLE(CONNECTIONS);
25
+
26
+ END;
@@ -0,0 +1,26 @@
1
+ CREATE or replace PROCEDURE PLUGIN.FETCH_SYNCS(CONNECTION_ID NUMERIC(38,0) DEFAULT NULL)
2
+ RETURNS TABLE()
3
+ LANGUAGE SQL
4
+ as
5
+ DECLARE
6
+
7
+ SYNCS resultset;
8
+ SYNC_ENGINE_DATABASE_NAME varchar;
9
+ PROC_NAME varchar;
10
+ PLUGIN_REGISTRATION_EXCEPTION EXCEPTION (-20001, 'Plugin is not registered to a sync engine instance');
11
+ c1 CURSOR FOR select min(APPLICATION_NAME) from DATA.OMNATA_REGISTRATION;
12
+ BEGIN
13
+
14
+ OPEN c1;
15
+ FETCH c1 INTO SYNC_ENGINE_DATABASE_NAME;
16
+ IF (:SYNC_ENGINE_DATABASE_NAME = null) THEN
17
+ RAISE PLUGIN_REGISTRATION_EXCEPTION;
18
+ END IF;
19
+
20
+ select CONCAT(:SYNC_ENGINE_DATABASE_NAME,'.API.PLUGIN_FETCH_SYNCS') into :PROC_NAME;
21
+
22
+ SYNCS:= (call IDENTIFIER(:PROC_NAME)(current_database(),PLUGIN.TOKEN(),:CONNECTION_ID));
23
+
24
+ RETURN TABLE(SYNCS);
25
+
26
+ END;
@@ -0,0 +1,26 @@
1
+ CREATE or replace PROCEDURE PLUGIN.FETCH_SYNC_BRANCHES(SYNC_ID numeric)
2
+ RETURNS TABLE()
3
+ LANGUAGE SQL
4
+ as
5
+ DECLARE
6
+
7
+ SYNC_BRANCHES resultset;
8
+ SYNC_ENGINE_DATABASE_NAME varchar;
9
+ PROC_NAME varchar;
10
+ PLUGIN_REGISTRATION_EXCEPTION EXCEPTION (-20001, 'Plugin is not registered to a sync engine instance');
11
+ c1 CURSOR FOR select min(APPLICATION_NAME) from DATA.OMNATA_REGISTRATION;
12
+ BEGIN
13
+
14
+ OPEN c1;
15
+ FETCH c1 INTO SYNC_ENGINE_DATABASE_NAME;
16
+ IF (:SYNC_ENGINE_DATABASE_NAME = null) THEN
17
+ RAISE PLUGIN_REGISTRATION_EXCEPTION;
18
+ END IF;
19
+
20
+ select CONCAT(:SYNC_ENGINE_DATABASE_NAME,'.API.PLUGIN_FETCH_SYNC_BRANCHES') into :PROC_NAME;
21
+
22
+ SYNC_BRANCHES:= (call IDENTIFIER(:PROC_NAME)(current_database(),PLUGIN.TOKEN(),:SYNC_ID));
23
+
24
+ RETURN TABLE(SYNC_BRANCHES);
25
+
26
+ END;
@@ -1,4 +1,4 @@
1
- manifest_version: 1
1
+ manifest_version: 2
2
2
 
3
3
  version:
4
4
  comment: |
@@ -14,7 +14,8 @@ artifacts:
14
14
  #runtime configuration for this version
15
15
  configuration:
16
16
  log_level: {{log_level}}
17
- trace_level: ALWAYS
17
+ trace_level: ON_EVENT
18
+ metric_level: ALL
18
19
  telemetry_event_definitions:
19
20
  - type: ERRORS_AND_WARNINGS
20
21
  sharing: MANDATORY
@@ -24,4 +25,6 @@ configuration:
24
25
  sharing: OPTIONAL
25
26
  - type: DEBUG_LOGS
26
27
  sharing: OPTIONAL
28
+ - type: METRICS
29
+ sharing: OPTIONAL
27
30
 
@@ -27,6 +27,7 @@ class NativeAppPackaging:
27
27
  self,
28
28
  developer_role: Optional[str] = None,
29
29
  distribution: Literal["INTERNAL", "EXTERNAL"] = "INTERNAL",
30
+ enable_release_channels: bool = False,
30
31
  ) -> bool:
31
32
  """
32
33
  Creates a native application package in Snowflake.
@@ -39,7 +40,8 @@ class NativeAppPackaging:
39
40
  if len(app_packages) == 0:
40
41
  self.session.sql(
41
42
  f"""CREATE APPLICATION PACKAGE {self.package_name}
42
- DISTRIBUTION={distribution}"""
43
+ DISTRIBUTION={distribution}
44
+ ENABLE_RELEASE_CHANNELS={str(enable_release_channels).upper()}"""
43
45
  ).collect()
44
46
  if developer_role is not None:
45
47
  self.session.sql(
@@ -261,6 +261,7 @@ class PluginUploader:
261
261
  # some packages are named inconsistently which makes them hard to remove from the artifact
262
262
  for item in zip_read.infolist():
263
263
  if not item.filename.startswith('.packages') and \
264
+ not item.filename.startswith('udf_direct_imports') and \
264
265
  not item.filename.startswith('pydantic_core'):
265
266
  if item.filename.endswith('.so'):
266
267
  raise ValueError(f"Native library found in package: {item.filename}")
@@ -469,6 +470,9 @@ class PluginUploader:
469
470
  "CONFIGURE_APIS",
470
471
  "UPDATE_API_CONFIGURATION",
471
472
  "PENDING_API_CONFIGURATION",
473
+ "FETCH_CONNECTIONS",
474
+ "FETCH_SYNCS",
475
+ "FETCH_SYNC_BRANCHES",
472
476
  "TEST_CALLBACK",
473
477
  "LIST_STAGES",
474
478
  "CREATE_GENERIC_SECRET_OBJECT",
@@ -574,9 +578,14 @@ $${}$$;
574
578
  os.chdir(direct_imports_path)
575
579
  # upload all files in the directory to the stage
576
580
  for path in sorted(Path(".").rglob("*")):
577
- print(f"Uploading {path} to stage")
581
+ # don't try to upload directories, only files
582
+ if path.is_dir():
583
+ continue
584
+ # figure out the path
585
+ relative_path = str(f"/{path.parent}") if path.parent != Path(".") else ""
586
+ print(f"Uploading {path} to stage under {relative_path}")
578
587
  self.session.sql(
579
- f"put file://{path} @{database_name}.{schema_name}.{stage_name} AUTO_COMPRESS=FALSE OVERWRITE=TRUE"
588
+ f"put file://{path} @{database_name}.{schema_name}.{stage_name}{relative_path} AUTO_COMPRESS=FALSE OVERWRITE=TRUE"
580
589
  ).collect()
581
590
  os.chdir(cwd)
582
591