pulumi-snowflake 0.50.3a1710160126__py3-none-any.whl → 1.2.0a1736835738__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.
Potentially problematic release.
This version of pulumi-snowflake might be problematic. Click here for more details.
- pulumi_snowflake/__init__.py +224 -172
- pulumi_snowflake/_inputs.py +52857 -1665
- pulumi_snowflake/_utilities.py +41 -5
- pulumi_snowflake/account.py +188 -218
- pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
- pulumi_snowflake/account_parameter.py +21 -48
- pulumi_snowflake/account_password_policy_attachment.py +7 -32
- pulumi_snowflake/account_role.py +250 -0
- pulumi_snowflake/alert.py +38 -47
- pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +704 -0
- pulumi_snowflake/api_authentication_integration_with_client_credentials.py +657 -0
- pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +692 -0
- pulumi_snowflake/api_integration.py +33 -52
- pulumi_snowflake/authentication_policy.py +622 -0
- pulumi_snowflake/config/__init__.pyi +76 -99
- pulumi_snowflake/config/outputs.py +5 -0
- pulumi_snowflake/config/vars.py +93 -124
- pulumi_snowflake/cortex_search_service.py +596 -0
- pulumi_snowflake/database.py +819 -213
- pulumi_snowflake/database_role.py +81 -44
- pulumi_snowflake/dynamic_table.py +42 -49
- pulumi_snowflake/email_notification_integration.py +33 -28
- pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -39
- pulumi_snowflake/external_function.py +54 -75
- pulumi_snowflake/external_oauth_integration.py +593 -542
- pulumi_snowflake/external_table.py +67 -90
- pulumi_snowflake/external_volume.py +382 -0
- pulumi_snowflake/failover_group.py +57 -98
- pulumi_snowflake/file_format.py +33 -28
- pulumi_snowflake/function_java.py +1211 -0
- pulumi_snowflake/function_javascript.py +882 -0
- pulumi_snowflake/function_python.py +1212 -0
- pulumi_snowflake/function_scala.py +1212 -0
- pulumi_snowflake/function_sql.py +835 -0
- pulumi_snowflake/get_account_roles.py +129 -0
- pulumi_snowflake/get_accounts.py +53 -22
- pulumi_snowflake/get_alerts.py +22 -9
- pulumi_snowflake/get_connections.py +109 -0
- pulumi_snowflake/get_cortex_search_services.py +216 -0
- pulumi_snowflake/get_current_account.py +24 -13
- pulumi_snowflake/get_current_role.py +14 -7
- pulumi_snowflake/get_database.py +25 -9
- pulumi_snowflake/get_database_role.py +162 -0
- pulumi_snowflake/get_database_roles.py +79 -47
- pulumi_snowflake/get_databases.py +91 -73
- pulumi_snowflake/get_dynamic_tables.py +36 -19
- pulumi_snowflake/get_external_functions.py +28 -9
- pulumi_snowflake/get_external_tables.py +28 -9
- pulumi_snowflake/get_failover_groups.py +18 -7
- pulumi_snowflake/get_file_formats.py +28 -9
- pulumi_snowflake/get_functions.py +28 -9
- pulumi_snowflake/get_grants.py +207 -84
- pulumi_snowflake/get_masking_policies.py +91 -51
- pulumi_snowflake/get_materialized_views.py +28 -9
- pulumi_snowflake/get_network_policies.py +129 -0
- pulumi_snowflake/get_parameters.py +38 -15
- pulumi_snowflake/get_pipes.py +28 -9
- pulumi_snowflake/get_procedures.py +28 -9
- pulumi_snowflake/get_resource_monitors.py +37 -24
- pulumi_snowflake/get_row_access_policies.py +91 -51
- pulumi_snowflake/get_schemas.py +145 -41
- pulumi_snowflake/get_secrets.py +200 -0
- pulumi_snowflake/get_security_integrations.py +129 -0
- pulumi_snowflake/get_sequences.py +28 -9
- pulumi_snowflake/get_shares.py +18 -9
- pulumi_snowflake/get_stages.py +28 -9
- pulumi_snowflake/get_storage_integrations.py +16 -9
- pulumi_snowflake/get_streamlits.py +170 -0
- pulumi_snowflake/get_streams.py +114 -54
- pulumi_snowflake/get_system_generate_scim_access_token.py +18 -9
- pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
- pulumi_snowflake/get_system_get_private_link_config.py +120 -5
- pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
- pulumi_snowflake/get_tables.py +28 -9
- pulumi_snowflake/get_tags.py +130 -0
- pulumi_snowflake/get_tasks.py +134 -54
- pulumi_snowflake/get_users.py +116 -44
- pulumi_snowflake/get_views.py +114 -54
- pulumi_snowflake/get_warehouses.py +79 -26
- pulumi_snowflake/grant_account_role.py +28 -75
- pulumi_snowflake/grant_application_role.py +257 -0
- pulumi_snowflake/grant_database_role.py +35 -94
- pulumi_snowflake/grant_ownership.py +382 -0
- pulumi_snowflake/grant_privileges_to_account_role.py +42 -78
- pulumi_snowflake/grant_privileges_to_database_role.py +37 -383
- pulumi_snowflake/grant_privileges_to_share.py +96 -44
- pulumi_snowflake/legacy_service_user.py +3670 -0
- pulumi_snowflake/managed_account.py +40 -11
- pulumi_snowflake/masking_policy.py +213 -310
- pulumi_snowflake/materialized_view.py +62 -71
- pulumi_snowflake/network_policy.py +217 -61
- pulumi_snowflake/network_policy_attachment.py +5 -34
- pulumi_snowflake/network_rule.py +473 -0
- pulumi_snowflake/notification_integration.py +49 -84
- pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
- pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -192
- pulumi_snowflake/object_parameter.py +10 -101
- pulumi_snowflake/outputs.py +49200 -2928
- pulumi_snowflake/password_policy.py +41 -28
- pulumi_snowflake/pipe.py +33 -4
- pulumi_snowflake/primary_connection.py +330 -0
- pulumi_snowflake/procedure_java.py +1273 -0
- pulumi_snowflake/procedure_javascript.py +895 -0
- pulumi_snowflake/procedure_python.py +1226 -0
- pulumi_snowflake/procedure_scala.py +1273 -0
- pulumi_snowflake/procedure_sql.py +895 -0
- pulumi_snowflake/provider.py +378 -613
- pulumi_snowflake/pulumi-plugin.json +2 -1
- pulumi_snowflake/resource_monitor.py +118 -327
- pulumi_snowflake/row_access_policy.py +200 -149
- pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -299
- pulumi_snowflake/schema.py +949 -178
- pulumi_snowflake/scim_integration.py +286 -109
- pulumi_snowflake/secondary_connection.py +339 -0
- pulumi_snowflake/secondary_database.py +1080 -0
- pulumi_snowflake/secret_with_authorization_code_grant.py +548 -0
- pulumi_snowflake/secret_with_basic_authentication.py +500 -0
- pulumi_snowflake/secret_with_client_credentials.py +511 -0
- pulumi_snowflake/secret_with_generic_string.py +452 -0
- pulumi_snowflake/sequence.py +9 -34
- pulumi_snowflake/service_user.py +3585 -0
- pulumi_snowflake/share.py +33 -28
- pulumi_snowflake/shared_database.py +939 -0
- pulumi_snowflake/stage.py +95 -84
- pulumi_snowflake/storage_integration.py +46 -4
- pulumi_snowflake/stream_on_directory_table.py +517 -0
- pulumi_snowflake/stream_on_external_table.py +632 -0
- pulumi_snowflake/stream_on_table.py +666 -0
- pulumi_snowflake/stream_on_view.py +666 -0
- pulumi_snowflake/streamlit.py +671 -0
- pulumi_snowflake/table.py +86 -97
- pulumi_snowflake/table_column_masking_policy_application.py +7 -14
- pulumi_snowflake/table_constraint.py +29 -172
- pulumi_snowflake/tag.py +142 -74
- pulumi_snowflake/tag_association.py +40 -215
- pulumi_snowflake/task.py +3048 -418
- pulumi_snowflake/user.py +3351 -384
- pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
- pulumi_snowflake/user_password_policy_attachment.py +5 -4
- pulumi_snowflake/user_public_keys.py +5 -0
- pulumi_snowflake/view.py +466 -215
- pulumi_snowflake/warehouse.py +184 -168
- {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/METADATA +7 -6
- pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
- {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
- pulumi_snowflake/account_grant.py +0 -343
- pulumi_snowflake/database_grant.py +0 -495
- pulumi_snowflake/external_table_grant.py +0 -690
- pulumi_snowflake/failover_group_grant.py +0 -388
- pulumi_snowflake/file_format_grant.py +0 -635
- pulumi_snowflake/function.py +0 -872
- pulumi_snowflake/function_grant.py +0 -745
- pulumi_snowflake/get_role.py +0 -121
- pulumi_snowflake/get_roles.py +0 -120
- pulumi_snowflake/grant_privileges_to_role.py +0 -825
- pulumi_snowflake/integration_grant.py +0 -440
- pulumi_snowflake/masking_policy_grant.py +0 -542
- pulumi_snowflake/materialized_view_grant.py +0 -689
- pulumi_snowflake/pipe_grant.py +0 -587
- pulumi_snowflake/procedure.py +0 -887
- pulumi_snowflake/procedure_grant.py +0 -745
- pulumi_snowflake/resource_monitor_grant.py +0 -387
- pulumi_snowflake/role.py +0 -273
- pulumi_snowflake/role_grants.py +0 -352
- pulumi_snowflake/role_ownership_grant.py +0 -338
- pulumi_snowflake/row_access_policy_grant.py +0 -540
- pulumi_snowflake/schema_grant.py +0 -647
- pulumi_snowflake/sequence_grant.py +0 -635
- pulumi_snowflake/session_parameter.py +0 -332
- pulumi_snowflake/stage_grant.py +0 -635
- pulumi_snowflake/stream.py +0 -614
- pulumi_snowflake/stream_grant.py +0 -635
- pulumi_snowflake/table_grant.py +0 -677
- pulumi_snowflake/tag_grant.py +0 -532
- pulumi_snowflake/tag_masking_policy_association.py +0 -210
- pulumi_snowflake/task_grant.py +0 -635
- pulumi_snowflake/user_grant.py +0 -394
- pulumi_snowflake/user_ownership_grant.py +0 -286
- pulumi_snowflake/view_grant.py +0 -705
- pulumi_snowflake/warehouse_grant.py +0 -440
- pulumi_snowflake-0.50.3a1710160126.dist-info/RECORD +0 -136
- {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,1211 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import copy
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from . import _utilities
|
|
16
|
+
from . import outputs
|
|
17
|
+
from ._inputs import *
|
|
18
|
+
|
|
19
|
+
__all__ = ['FunctionJavaArgs', 'FunctionJava']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class FunctionJavaArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
database: pulumi.Input[str],
|
|
25
|
+
handler: pulumi.Input[str],
|
|
26
|
+
return_type: pulumi.Input[str],
|
|
27
|
+
schema: pulumi.Input[str],
|
|
28
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]] = None,
|
|
29
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
30
|
+
enable_console_output: Optional[pulumi.Input[bool]] = None,
|
|
31
|
+
external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
32
|
+
function_definition: Optional[pulumi.Input[str]] = None,
|
|
33
|
+
imports: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]] = None,
|
|
34
|
+
is_secure: Optional[pulumi.Input[str]] = None,
|
|
35
|
+
log_level: Optional[pulumi.Input[str]] = None,
|
|
36
|
+
metric_level: Optional[pulumi.Input[str]] = None,
|
|
37
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
38
|
+
null_input_behavior: Optional[pulumi.Input[str]] = None,
|
|
39
|
+
packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
40
|
+
return_results_behavior: Optional[pulumi.Input[str]] = None,
|
|
41
|
+
runtime_version: Optional[pulumi.Input[str]] = None,
|
|
42
|
+
secrets: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]] = None,
|
|
43
|
+
target_path: Optional[pulumi.Input['FunctionJavaTargetPathArgs']] = None,
|
|
44
|
+
trace_level: Optional[pulumi.Input[str]] = None):
|
|
45
|
+
"""
|
|
46
|
+
The set of arguments for constructing a FunctionJava resource.
|
|
47
|
+
:param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
48
|
+
:param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
49
|
+
:param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
|
|
50
|
+
:param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
51
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
|
|
52
|
+
:param pulumi.Input[str] comment: Specifies a comment for the function.
|
|
53
|
+
:param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
|
|
54
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
|
|
55
|
+
:param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
56
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
|
|
57
|
+
:param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
|
|
58
|
+
:param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
|
|
59
|
+
:param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
60
|
+
:param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
|
|
61
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
|
|
62
|
+
:param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
|
|
63
|
+
:param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
|
|
64
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
|
|
65
|
+
:param pulumi.Input['FunctionJavaTargetPathArgs'] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
66
|
+
:param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
|
|
67
|
+
"""
|
|
68
|
+
pulumi.set(__self__, "database", database)
|
|
69
|
+
pulumi.set(__self__, "handler", handler)
|
|
70
|
+
pulumi.set(__self__, "return_type", return_type)
|
|
71
|
+
pulumi.set(__self__, "schema", schema)
|
|
72
|
+
if arguments is not None:
|
|
73
|
+
pulumi.set(__self__, "arguments", arguments)
|
|
74
|
+
if comment is not None:
|
|
75
|
+
pulumi.set(__self__, "comment", comment)
|
|
76
|
+
if enable_console_output is not None:
|
|
77
|
+
pulumi.set(__self__, "enable_console_output", enable_console_output)
|
|
78
|
+
if external_access_integrations is not None:
|
|
79
|
+
pulumi.set(__self__, "external_access_integrations", external_access_integrations)
|
|
80
|
+
if function_definition is not None:
|
|
81
|
+
pulumi.set(__self__, "function_definition", function_definition)
|
|
82
|
+
if imports is not None:
|
|
83
|
+
pulumi.set(__self__, "imports", imports)
|
|
84
|
+
if is_secure is not None:
|
|
85
|
+
pulumi.set(__self__, "is_secure", is_secure)
|
|
86
|
+
if log_level is not None:
|
|
87
|
+
pulumi.set(__self__, "log_level", log_level)
|
|
88
|
+
if metric_level is not None:
|
|
89
|
+
pulumi.set(__self__, "metric_level", metric_level)
|
|
90
|
+
if name is not None:
|
|
91
|
+
pulumi.set(__self__, "name", name)
|
|
92
|
+
if null_input_behavior is not None:
|
|
93
|
+
pulumi.set(__self__, "null_input_behavior", null_input_behavior)
|
|
94
|
+
if packages is not None:
|
|
95
|
+
pulumi.set(__self__, "packages", packages)
|
|
96
|
+
if return_results_behavior is not None:
|
|
97
|
+
pulumi.set(__self__, "return_results_behavior", return_results_behavior)
|
|
98
|
+
if runtime_version is not None:
|
|
99
|
+
pulumi.set(__self__, "runtime_version", runtime_version)
|
|
100
|
+
if secrets is not None:
|
|
101
|
+
pulumi.set(__self__, "secrets", secrets)
|
|
102
|
+
if target_path is not None:
|
|
103
|
+
pulumi.set(__self__, "target_path", target_path)
|
|
104
|
+
if trace_level is not None:
|
|
105
|
+
pulumi.set(__self__, "trace_level", trace_level)
|
|
106
|
+
|
|
107
|
+
@property
|
|
108
|
+
@pulumi.getter
|
|
109
|
+
def database(self) -> pulumi.Input[str]:
|
|
110
|
+
"""
|
|
111
|
+
The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
112
|
+
"""
|
|
113
|
+
return pulumi.get(self, "database")
|
|
114
|
+
|
|
115
|
+
@database.setter
|
|
116
|
+
def database(self, value: pulumi.Input[str]):
|
|
117
|
+
pulumi.set(self, "database", value)
|
|
118
|
+
|
|
119
|
+
@property
|
|
120
|
+
@pulumi.getter
|
|
121
|
+
def handler(self) -> pulumi.Input[str]:
|
|
122
|
+
"""
|
|
123
|
+
The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
124
|
+
"""
|
|
125
|
+
return pulumi.get(self, "handler")
|
|
126
|
+
|
|
127
|
+
@handler.setter
|
|
128
|
+
def handler(self, value: pulumi.Input[str]):
|
|
129
|
+
pulumi.set(self, "handler", value)
|
|
130
|
+
|
|
131
|
+
@property
|
|
132
|
+
@pulumi.getter(name="returnType")
|
|
133
|
+
def return_type(self) -> pulumi.Input[str]:
|
|
134
|
+
"""
|
|
135
|
+
Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
|
|
136
|
+
"""
|
|
137
|
+
return pulumi.get(self, "return_type")
|
|
138
|
+
|
|
139
|
+
@return_type.setter
|
|
140
|
+
def return_type(self, value: pulumi.Input[str]):
|
|
141
|
+
pulumi.set(self, "return_type", value)
|
|
142
|
+
|
|
143
|
+
@property
|
|
144
|
+
@pulumi.getter
|
|
145
|
+
def schema(self) -> pulumi.Input[str]:
|
|
146
|
+
"""
|
|
147
|
+
The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
148
|
+
"""
|
|
149
|
+
return pulumi.get(self, "schema")
|
|
150
|
+
|
|
151
|
+
@schema.setter
|
|
152
|
+
def schema(self, value: pulumi.Input[str]):
|
|
153
|
+
pulumi.set(self, "schema", value)
|
|
154
|
+
|
|
155
|
+
@property
|
|
156
|
+
@pulumi.getter
|
|
157
|
+
def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]:
|
|
158
|
+
"""
|
|
159
|
+
List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
|
|
160
|
+
"""
|
|
161
|
+
return pulumi.get(self, "arguments")
|
|
162
|
+
|
|
163
|
+
@arguments.setter
|
|
164
|
+
def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]):
|
|
165
|
+
pulumi.set(self, "arguments", value)
|
|
166
|
+
|
|
167
|
+
@property
|
|
168
|
+
@pulumi.getter
|
|
169
|
+
def comment(self) -> Optional[pulumi.Input[str]]:
|
|
170
|
+
"""
|
|
171
|
+
Specifies a comment for the function.
|
|
172
|
+
"""
|
|
173
|
+
return pulumi.get(self, "comment")
|
|
174
|
+
|
|
175
|
+
@comment.setter
|
|
176
|
+
def comment(self, value: Optional[pulumi.Input[str]]):
|
|
177
|
+
pulumi.set(self, "comment", value)
|
|
178
|
+
|
|
179
|
+
@property
|
|
180
|
+
@pulumi.getter(name="enableConsoleOutput")
|
|
181
|
+
def enable_console_output(self) -> Optional[pulumi.Input[bool]]:
|
|
182
|
+
"""
|
|
183
|
+
Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
|
|
184
|
+
"""
|
|
185
|
+
return pulumi.get(self, "enable_console_output")
|
|
186
|
+
|
|
187
|
+
@enable_console_output.setter
|
|
188
|
+
def enable_console_output(self, value: Optional[pulumi.Input[bool]]):
|
|
189
|
+
pulumi.set(self, "enable_console_output", value)
|
|
190
|
+
|
|
191
|
+
@property
|
|
192
|
+
@pulumi.getter(name="externalAccessIntegrations")
|
|
193
|
+
def external_access_integrations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
194
|
+
"""
|
|
195
|
+
The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
|
|
196
|
+
"""
|
|
197
|
+
return pulumi.get(self, "external_access_integrations")
|
|
198
|
+
|
|
199
|
+
@external_access_integrations.setter
|
|
200
|
+
def external_access_integrations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
201
|
+
pulumi.set(self, "external_access_integrations", value)
|
|
202
|
+
|
|
203
|
+
@property
|
|
204
|
+
@pulumi.getter(name="functionDefinition")
|
|
205
|
+
def function_definition(self) -> Optional[pulumi.Input[str]]:
|
|
206
|
+
"""
|
|
207
|
+
Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
208
|
+
"""
|
|
209
|
+
return pulumi.get(self, "function_definition")
|
|
210
|
+
|
|
211
|
+
@function_definition.setter
|
|
212
|
+
def function_definition(self, value: Optional[pulumi.Input[str]]):
|
|
213
|
+
pulumi.set(self, "function_definition", value)
|
|
214
|
+
|
|
215
|
+
@property
|
|
216
|
+
@pulumi.getter
|
|
217
|
+
def imports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]:
|
|
218
|
+
"""
|
|
219
|
+
The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
|
|
220
|
+
"""
|
|
221
|
+
return pulumi.get(self, "imports")
|
|
222
|
+
|
|
223
|
+
@imports.setter
|
|
224
|
+
def imports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]):
|
|
225
|
+
pulumi.set(self, "imports", value)
|
|
226
|
+
|
|
227
|
+
@property
|
|
228
|
+
@pulumi.getter(name="isSecure")
|
|
229
|
+
def is_secure(self) -> Optional[pulumi.Input[str]]:
|
|
230
|
+
return pulumi.get(self, "is_secure")
|
|
231
|
+
|
|
232
|
+
@is_secure.setter
|
|
233
|
+
def is_secure(self, value: Optional[pulumi.Input[str]]):
|
|
234
|
+
pulumi.set(self, "is_secure", value)
|
|
235
|
+
|
|
236
|
+
@property
|
|
237
|
+
@pulumi.getter(name="logLevel")
|
|
238
|
+
def log_level(self) -> Optional[pulumi.Input[str]]:
|
|
239
|
+
"""
|
|
240
|
+
LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
|
|
241
|
+
"""
|
|
242
|
+
return pulumi.get(self, "log_level")
|
|
243
|
+
|
|
244
|
+
@log_level.setter
|
|
245
|
+
def log_level(self, value: Optional[pulumi.Input[str]]):
|
|
246
|
+
pulumi.set(self, "log_level", value)
|
|
247
|
+
|
|
248
|
+
@property
|
|
249
|
+
@pulumi.getter(name="metricLevel")
|
|
250
|
+
def metric_level(self) -> Optional[pulumi.Input[str]]:
|
|
251
|
+
"""
|
|
252
|
+
METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
|
|
253
|
+
"""
|
|
254
|
+
return pulumi.get(self, "metric_level")
|
|
255
|
+
|
|
256
|
+
@metric_level.setter
|
|
257
|
+
def metric_level(self, value: Optional[pulumi.Input[str]]):
|
|
258
|
+
pulumi.set(self, "metric_level", value)
|
|
259
|
+
|
|
260
|
+
@property
|
|
261
|
+
@pulumi.getter
|
|
262
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
263
|
+
"""
|
|
264
|
+
The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
265
|
+
"""
|
|
266
|
+
return pulumi.get(self, "name")
|
|
267
|
+
|
|
268
|
+
@name.setter
|
|
269
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
270
|
+
pulumi.set(self, "name", value)
|
|
271
|
+
|
|
272
|
+
@property
|
|
273
|
+
@pulumi.getter(name="nullInputBehavior")
|
|
274
|
+
def null_input_behavior(self) -> Optional[pulumi.Input[str]]:
|
|
275
|
+
"""
|
|
276
|
+
Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
|
|
277
|
+
"""
|
|
278
|
+
return pulumi.get(self, "null_input_behavior")
|
|
279
|
+
|
|
280
|
+
@null_input_behavior.setter
|
|
281
|
+
def null_input_behavior(self, value: Optional[pulumi.Input[str]]):
|
|
282
|
+
pulumi.set(self, "null_input_behavior", value)
|
|
283
|
+
|
|
284
|
+
@property
|
|
285
|
+
@pulumi.getter
|
|
286
|
+
def packages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
287
|
+
"""
|
|
288
|
+
The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
|
|
289
|
+
"""
|
|
290
|
+
return pulumi.get(self, "packages")
|
|
291
|
+
|
|
292
|
+
@packages.setter
|
|
293
|
+
def packages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
294
|
+
pulumi.set(self, "packages", value)
|
|
295
|
+
|
|
296
|
+
@property
|
|
297
|
+
@pulumi.getter(name="returnResultsBehavior")
|
|
298
|
+
def return_results_behavior(self) -> Optional[pulumi.Input[str]]:
|
|
299
|
+
"""
|
|
300
|
+
Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
|
|
301
|
+
"""
|
|
302
|
+
return pulumi.get(self, "return_results_behavior")
|
|
303
|
+
|
|
304
|
+
@return_results_behavior.setter
|
|
305
|
+
def return_results_behavior(self, value: Optional[pulumi.Input[str]]):
|
|
306
|
+
pulumi.set(self, "return_results_behavior", value)
|
|
307
|
+
|
|
308
|
+
@property
|
|
309
|
+
@pulumi.getter(name="runtimeVersion")
|
|
310
|
+
def runtime_version(self) -> Optional[pulumi.Input[str]]:
|
|
311
|
+
"""
|
|
312
|
+
Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
|
|
313
|
+
"""
|
|
314
|
+
return pulumi.get(self, "runtime_version")
|
|
315
|
+
|
|
316
|
+
@runtime_version.setter
|
|
317
|
+
def runtime_version(self, value: Optional[pulumi.Input[str]]):
|
|
318
|
+
pulumi.set(self, "runtime_version", value)
|
|
319
|
+
|
|
320
|
+
@property
|
|
321
|
+
@pulumi.getter
|
|
322
|
+
def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]:
|
|
323
|
+
"""
|
|
324
|
+
Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
|
|
325
|
+
"""
|
|
326
|
+
return pulumi.get(self, "secrets")
|
|
327
|
+
|
|
328
|
+
@secrets.setter
|
|
329
|
+
def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]):
|
|
330
|
+
pulumi.set(self, "secrets", value)
|
|
331
|
+
|
|
332
|
+
@property
|
|
333
|
+
@pulumi.getter(name="targetPath")
|
|
334
|
+
def target_path(self) -> Optional[pulumi.Input['FunctionJavaTargetPathArgs']]:
|
|
335
|
+
"""
|
|
336
|
+
The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
337
|
+
"""
|
|
338
|
+
return pulumi.get(self, "target_path")
|
|
339
|
+
|
|
340
|
+
@target_path.setter
|
|
341
|
+
def target_path(self, value: Optional[pulumi.Input['FunctionJavaTargetPathArgs']]):
|
|
342
|
+
pulumi.set(self, "target_path", value)
|
|
343
|
+
|
|
344
|
+
@property
|
|
345
|
+
@pulumi.getter(name="traceLevel")
|
|
346
|
+
def trace_level(self) -> Optional[pulumi.Input[str]]:
|
|
347
|
+
"""
|
|
348
|
+
Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
|
|
349
|
+
"""
|
|
350
|
+
return pulumi.get(self, "trace_level")
|
|
351
|
+
|
|
352
|
+
@trace_level.setter
|
|
353
|
+
def trace_level(self, value: Optional[pulumi.Input[str]]):
|
|
354
|
+
pulumi.set(self, "trace_level", value)
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
@pulumi.input_type
|
|
358
|
+
class _FunctionJavaState:
|
|
359
|
+
def __init__(__self__, *,
|
|
360
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]] = None,
|
|
361
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
362
|
+
database: Optional[pulumi.Input[str]] = None,
|
|
363
|
+
enable_console_output: Optional[pulumi.Input[bool]] = None,
|
|
364
|
+
external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
365
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
366
|
+
function_definition: Optional[pulumi.Input[str]] = None,
|
|
367
|
+
function_language: Optional[pulumi.Input[str]] = None,
|
|
368
|
+
handler: Optional[pulumi.Input[str]] = None,
|
|
369
|
+
imports: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]] = None,
|
|
370
|
+
is_secure: Optional[pulumi.Input[str]] = None,
|
|
371
|
+
log_level: Optional[pulumi.Input[str]] = None,
|
|
372
|
+
metric_level: Optional[pulumi.Input[str]] = None,
|
|
373
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
374
|
+
null_input_behavior: Optional[pulumi.Input[str]] = None,
|
|
375
|
+
packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
376
|
+
parameters: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]]] = None,
|
|
377
|
+
return_results_behavior: Optional[pulumi.Input[str]] = None,
|
|
378
|
+
return_type: Optional[pulumi.Input[str]] = None,
|
|
379
|
+
runtime_version: Optional[pulumi.Input[str]] = None,
|
|
380
|
+
schema: Optional[pulumi.Input[str]] = None,
|
|
381
|
+
secrets: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]] = None,
|
|
382
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]]] = None,
|
|
383
|
+
target_path: Optional[pulumi.Input['FunctionJavaTargetPathArgs']] = None,
|
|
384
|
+
trace_level: Optional[pulumi.Input[str]] = None):
|
|
385
|
+
"""
|
|
386
|
+
Input properties used for looking up and filtering FunctionJava resources.
|
|
387
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
|
|
388
|
+
:param pulumi.Input[str] comment: Specifies a comment for the function.
|
|
389
|
+
:param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
390
|
+
:param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
|
|
391
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
|
|
392
|
+
:param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
393
|
+
:param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
394
|
+
:param pulumi.Input[str] function_language: Specifies language for the user. Used to detect external changes.
|
|
395
|
+
:param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
396
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
|
|
397
|
+
:param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
|
|
398
|
+
:param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
|
|
399
|
+
:param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
400
|
+
:param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
|
|
401
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
|
|
402
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]] parameters: Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
|
|
403
|
+
:param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
|
|
404
|
+
:param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
|
|
405
|
+
:param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
|
|
406
|
+
:param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
407
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
|
|
408
|
+
:param pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]] show_outputs: Outputs the result of `SHOW FUNCTION` for the given function.
|
|
409
|
+
:param pulumi.Input['FunctionJavaTargetPathArgs'] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
410
|
+
:param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
|
|
411
|
+
"""
|
|
412
|
+
if arguments is not None:
|
|
413
|
+
pulumi.set(__self__, "arguments", arguments)
|
|
414
|
+
if comment is not None:
|
|
415
|
+
pulumi.set(__self__, "comment", comment)
|
|
416
|
+
if database is not None:
|
|
417
|
+
pulumi.set(__self__, "database", database)
|
|
418
|
+
if enable_console_output is not None:
|
|
419
|
+
pulumi.set(__self__, "enable_console_output", enable_console_output)
|
|
420
|
+
if external_access_integrations is not None:
|
|
421
|
+
pulumi.set(__self__, "external_access_integrations", external_access_integrations)
|
|
422
|
+
if fully_qualified_name is not None:
|
|
423
|
+
pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
|
|
424
|
+
if function_definition is not None:
|
|
425
|
+
pulumi.set(__self__, "function_definition", function_definition)
|
|
426
|
+
if function_language is not None:
|
|
427
|
+
pulumi.set(__self__, "function_language", function_language)
|
|
428
|
+
if handler is not None:
|
|
429
|
+
pulumi.set(__self__, "handler", handler)
|
|
430
|
+
if imports is not None:
|
|
431
|
+
pulumi.set(__self__, "imports", imports)
|
|
432
|
+
if is_secure is not None:
|
|
433
|
+
pulumi.set(__self__, "is_secure", is_secure)
|
|
434
|
+
if log_level is not None:
|
|
435
|
+
pulumi.set(__self__, "log_level", log_level)
|
|
436
|
+
if metric_level is not None:
|
|
437
|
+
pulumi.set(__self__, "metric_level", metric_level)
|
|
438
|
+
if name is not None:
|
|
439
|
+
pulumi.set(__self__, "name", name)
|
|
440
|
+
if null_input_behavior is not None:
|
|
441
|
+
pulumi.set(__self__, "null_input_behavior", null_input_behavior)
|
|
442
|
+
if packages is not None:
|
|
443
|
+
pulumi.set(__self__, "packages", packages)
|
|
444
|
+
if parameters is not None:
|
|
445
|
+
pulumi.set(__self__, "parameters", parameters)
|
|
446
|
+
if return_results_behavior is not None:
|
|
447
|
+
pulumi.set(__self__, "return_results_behavior", return_results_behavior)
|
|
448
|
+
if return_type is not None:
|
|
449
|
+
pulumi.set(__self__, "return_type", return_type)
|
|
450
|
+
if runtime_version is not None:
|
|
451
|
+
pulumi.set(__self__, "runtime_version", runtime_version)
|
|
452
|
+
if schema is not None:
|
|
453
|
+
pulumi.set(__self__, "schema", schema)
|
|
454
|
+
if secrets is not None:
|
|
455
|
+
pulumi.set(__self__, "secrets", secrets)
|
|
456
|
+
if show_outputs is not None:
|
|
457
|
+
pulumi.set(__self__, "show_outputs", show_outputs)
|
|
458
|
+
if target_path is not None:
|
|
459
|
+
pulumi.set(__self__, "target_path", target_path)
|
|
460
|
+
if trace_level is not None:
|
|
461
|
+
pulumi.set(__self__, "trace_level", trace_level)
|
|
462
|
+
|
|
463
|
+
@property
|
|
464
|
+
@pulumi.getter
|
|
465
|
+
def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]:
|
|
466
|
+
"""
|
|
467
|
+
List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
|
|
468
|
+
"""
|
|
469
|
+
return pulumi.get(self, "arguments")
|
|
470
|
+
|
|
471
|
+
@arguments.setter
|
|
472
|
+
def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]):
|
|
473
|
+
pulumi.set(self, "arguments", value)
|
|
474
|
+
|
|
475
|
+
@property
|
|
476
|
+
@pulumi.getter
|
|
477
|
+
def comment(self) -> Optional[pulumi.Input[str]]:
|
|
478
|
+
"""
|
|
479
|
+
Specifies a comment for the function.
|
|
480
|
+
"""
|
|
481
|
+
return pulumi.get(self, "comment")
|
|
482
|
+
|
|
483
|
+
@comment.setter
|
|
484
|
+
def comment(self, value: Optional[pulumi.Input[str]]):
|
|
485
|
+
pulumi.set(self, "comment", value)
|
|
486
|
+
|
|
487
|
+
@property
|
|
488
|
+
@pulumi.getter
|
|
489
|
+
def database(self) -> Optional[pulumi.Input[str]]:
|
|
490
|
+
"""
|
|
491
|
+
The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
492
|
+
"""
|
|
493
|
+
return pulumi.get(self, "database")
|
|
494
|
+
|
|
495
|
+
@database.setter
|
|
496
|
+
def database(self, value: Optional[pulumi.Input[str]]):
|
|
497
|
+
pulumi.set(self, "database", value)
|
|
498
|
+
|
|
499
|
+
@property
|
|
500
|
+
@pulumi.getter(name="enableConsoleOutput")
|
|
501
|
+
def enable_console_output(self) -> Optional[pulumi.Input[bool]]:
|
|
502
|
+
"""
|
|
503
|
+
Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
|
|
504
|
+
"""
|
|
505
|
+
return pulumi.get(self, "enable_console_output")
|
|
506
|
+
|
|
507
|
+
@enable_console_output.setter
|
|
508
|
+
def enable_console_output(self, value: Optional[pulumi.Input[bool]]):
|
|
509
|
+
pulumi.set(self, "enable_console_output", value)
|
|
510
|
+
|
|
511
|
+
@property
|
|
512
|
+
@pulumi.getter(name="externalAccessIntegrations")
|
|
513
|
+
def external_access_integrations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
514
|
+
"""
|
|
515
|
+
The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
|
|
516
|
+
"""
|
|
517
|
+
return pulumi.get(self, "external_access_integrations")
|
|
518
|
+
|
|
519
|
+
@external_access_integrations.setter
|
|
520
|
+
def external_access_integrations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
521
|
+
pulumi.set(self, "external_access_integrations", value)
|
|
522
|
+
|
|
523
|
+
@property
|
|
524
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
525
|
+
def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
|
|
526
|
+
"""
|
|
527
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
528
|
+
"""
|
|
529
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
530
|
+
|
|
531
|
+
@fully_qualified_name.setter
|
|
532
|
+
def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
|
|
533
|
+
pulumi.set(self, "fully_qualified_name", value)
|
|
534
|
+
|
|
535
|
+
@property
|
|
536
|
+
@pulumi.getter(name="functionDefinition")
|
|
537
|
+
def function_definition(self) -> Optional[pulumi.Input[str]]:
|
|
538
|
+
"""
|
|
539
|
+
Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
540
|
+
"""
|
|
541
|
+
return pulumi.get(self, "function_definition")
|
|
542
|
+
|
|
543
|
+
@function_definition.setter
|
|
544
|
+
def function_definition(self, value: Optional[pulumi.Input[str]]):
|
|
545
|
+
pulumi.set(self, "function_definition", value)
|
|
546
|
+
|
|
547
|
+
@property
|
|
548
|
+
@pulumi.getter(name="functionLanguage")
|
|
549
|
+
def function_language(self) -> Optional[pulumi.Input[str]]:
|
|
550
|
+
"""
|
|
551
|
+
Specifies language for the user. Used to detect external changes.
|
|
552
|
+
"""
|
|
553
|
+
return pulumi.get(self, "function_language")
|
|
554
|
+
|
|
555
|
+
@function_language.setter
|
|
556
|
+
def function_language(self, value: Optional[pulumi.Input[str]]):
|
|
557
|
+
pulumi.set(self, "function_language", value)
|
|
558
|
+
|
|
559
|
+
@property
|
|
560
|
+
@pulumi.getter
|
|
561
|
+
def handler(self) -> Optional[pulumi.Input[str]]:
|
|
562
|
+
"""
|
|
563
|
+
The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
564
|
+
"""
|
|
565
|
+
return pulumi.get(self, "handler")
|
|
566
|
+
|
|
567
|
+
@handler.setter
|
|
568
|
+
def handler(self, value: Optional[pulumi.Input[str]]):
|
|
569
|
+
pulumi.set(self, "handler", value)
|
|
570
|
+
|
|
571
|
+
@property
|
|
572
|
+
@pulumi.getter
|
|
573
|
+
def imports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]:
|
|
574
|
+
"""
|
|
575
|
+
The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
|
|
576
|
+
"""
|
|
577
|
+
return pulumi.get(self, "imports")
|
|
578
|
+
|
|
579
|
+
@imports.setter
|
|
580
|
+
def imports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]):
|
|
581
|
+
pulumi.set(self, "imports", value)
|
|
582
|
+
|
|
583
|
+
@property
|
|
584
|
+
@pulumi.getter(name="isSecure")
|
|
585
|
+
def is_secure(self) -> Optional[pulumi.Input[str]]:
|
|
586
|
+
return pulumi.get(self, "is_secure")
|
|
587
|
+
|
|
588
|
+
@is_secure.setter
|
|
589
|
+
def is_secure(self, value: Optional[pulumi.Input[str]]):
|
|
590
|
+
pulumi.set(self, "is_secure", value)
|
|
591
|
+
|
|
592
|
+
@property
|
|
593
|
+
@pulumi.getter(name="logLevel")
|
|
594
|
+
def log_level(self) -> Optional[pulumi.Input[str]]:
|
|
595
|
+
"""
|
|
596
|
+
LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
|
|
597
|
+
"""
|
|
598
|
+
return pulumi.get(self, "log_level")
|
|
599
|
+
|
|
600
|
+
@log_level.setter
|
|
601
|
+
def log_level(self, value: Optional[pulumi.Input[str]]):
|
|
602
|
+
pulumi.set(self, "log_level", value)
|
|
603
|
+
|
|
604
|
+
@property
|
|
605
|
+
@pulumi.getter(name="metricLevel")
|
|
606
|
+
def metric_level(self) -> Optional[pulumi.Input[str]]:
|
|
607
|
+
"""
|
|
608
|
+
METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
|
|
609
|
+
"""
|
|
610
|
+
return pulumi.get(self, "metric_level")
|
|
611
|
+
|
|
612
|
+
@metric_level.setter
|
|
613
|
+
def metric_level(self, value: Optional[pulumi.Input[str]]):
|
|
614
|
+
pulumi.set(self, "metric_level", value)
|
|
615
|
+
|
|
616
|
+
@property
|
|
617
|
+
@pulumi.getter
|
|
618
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
619
|
+
"""
|
|
620
|
+
The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
621
|
+
"""
|
|
622
|
+
return pulumi.get(self, "name")
|
|
623
|
+
|
|
624
|
+
@name.setter
|
|
625
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
626
|
+
pulumi.set(self, "name", value)
|
|
627
|
+
|
|
628
|
+
@property
|
|
629
|
+
@pulumi.getter(name="nullInputBehavior")
|
|
630
|
+
def null_input_behavior(self) -> Optional[pulumi.Input[str]]:
|
|
631
|
+
"""
|
|
632
|
+
Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
|
|
633
|
+
"""
|
|
634
|
+
return pulumi.get(self, "null_input_behavior")
|
|
635
|
+
|
|
636
|
+
@null_input_behavior.setter
|
|
637
|
+
def null_input_behavior(self, value: Optional[pulumi.Input[str]]):
|
|
638
|
+
pulumi.set(self, "null_input_behavior", value)
|
|
639
|
+
|
|
640
|
+
@property
|
|
641
|
+
@pulumi.getter
|
|
642
|
+
def packages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
643
|
+
"""
|
|
644
|
+
The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
|
|
645
|
+
"""
|
|
646
|
+
return pulumi.get(self, "packages")
|
|
647
|
+
|
|
648
|
+
@packages.setter
|
|
649
|
+
def packages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
650
|
+
pulumi.set(self, "packages", value)
|
|
651
|
+
|
|
652
|
+
@property
|
|
653
|
+
@pulumi.getter
|
|
654
|
+
def parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]]]:
|
|
655
|
+
"""
|
|
656
|
+
Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
|
|
657
|
+
"""
|
|
658
|
+
return pulumi.get(self, "parameters")
|
|
659
|
+
|
|
660
|
+
@parameters.setter
|
|
661
|
+
def parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]]]):
|
|
662
|
+
pulumi.set(self, "parameters", value)
|
|
663
|
+
|
|
664
|
+
@property
|
|
665
|
+
@pulumi.getter(name="returnResultsBehavior")
|
|
666
|
+
def return_results_behavior(self) -> Optional[pulumi.Input[str]]:
|
|
667
|
+
"""
|
|
668
|
+
Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
|
|
669
|
+
"""
|
|
670
|
+
return pulumi.get(self, "return_results_behavior")
|
|
671
|
+
|
|
672
|
+
@return_results_behavior.setter
|
|
673
|
+
def return_results_behavior(self, value: Optional[pulumi.Input[str]]):
|
|
674
|
+
pulumi.set(self, "return_results_behavior", value)
|
|
675
|
+
|
|
676
|
+
@property
|
|
677
|
+
@pulumi.getter(name="returnType")
|
|
678
|
+
def return_type(self) -> Optional[pulumi.Input[str]]:
|
|
679
|
+
"""
|
|
680
|
+
Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
|
|
681
|
+
"""
|
|
682
|
+
return pulumi.get(self, "return_type")
|
|
683
|
+
|
|
684
|
+
@return_type.setter
|
|
685
|
+
def return_type(self, value: Optional[pulumi.Input[str]]):
|
|
686
|
+
pulumi.set(self, "return_type", value)
|
|
687
|
+
|
|
688
|
+
@property
|
|
689
|
+
@pulumi.getter(name="runtimeVersion")
|
|
690
|
+
def runtime_version(self) -> Optional[pulumi.Input[str]]:
|
|
691
|
+
"""
|
|
692
|
+
Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
|
|
693
|
+
"""
|
|
694
|
+
return pulumi.get(self, "runtime_version")
|
|
695
|
+
|
|
696
|
+
@runtime_version.setter
|
|
697
|
+
def runtime_version(self, value: Optional[pulumi.Input[str]]):
|
|
698
|
+
pulumi.set(self, "runtime_version", value)
|
|
699
|
+
|
|
700
|
+
@property
|
|
701
|
+
@pulumi.getter
|
|
702
|
+
def schema(self) -> Optional[pulumi.Input[str]]:
|
|
703
|
+
"""
|
|
704
|
+
The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
705
|
+
"""
|
|
706
|
+
return pulumi.get(self, "schema")
|
|
707
|
+
|
|
708
|
+
@schema.setter
|
|
709
|
+
def schema(self, value: Optional[pulumi.Input[str]]):
|
|
710
|
+
pulumi.set(self, "schema", value)
|
|
711
|
+
|
|
712
|
+
@property
|
|
713
|
+
@pulumi.getter
|
|
714
|
+
def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]:
|
|
715
|
+
"""
|
|
716
|
+
Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
|
|
717
|
+
"""
|
|
718
|
+
return pulumi.get(self, "secrets")
|
|
719
|
+
|
|
720
|
+
@secrets.setter
|
|
721
|
+
def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]):
|
|
722
|
+
pulumi.set(self, "secrets", value)
|
|
723
|
+
|
|
724
|
+
@property
|
|
725
|
+
@pulumi.getter(name="showOutputs")
|
|
726
|
+
def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]]]:
|
|
727
|
+
"""
|
|
728
|
+
Outputs the result of `SHOW FUNCTION` for the given function.
|
|
729
|
+
"""
|
|
730
|
+
return pulumi.get(self, "show_outputs")
|
|
731
|
+
|
|
732
|
+
@show_outputs.setter
|
|
733
|
+
def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]]]):
|
|
734
|
+
pulumi.set(self, "show_outputs", value)
|
|
735
|
+
|
|
736
|
+
@property
|
|
737
|
+
@pulumi.getter(name="targetPath")
|
|
738
|
+
def target_path(self) -> Optional[pulumi.Input['FunctionJavaTargetPathArgs']]:
|
|
739
|
+
"""
|
|
740
|
+
The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
741
|
+
"""
|
|
742
|
+
return pulumi.get(self, "target_path")
|
|
743
|
+
|
|
744
|
+
@target_path.setter
|
|
745
|
+
def target_path(self, value: Optional[pulumi.Input['FunctionJavaTargetPathArgs']]):
|
|
746
|
+
pulumi.set(self, "target_path", value)
|
|
747
|
+
|
|
748
|
+
@property
|
|
749
|
+
@pulumi.getter(name="traceLevel")
|
|
750
|
+
def trace_level(self) -> Optional[pulumi.Input[str]]:
|
|
751
|
+
"""
|
|
752
|
+
Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
|
|
753
|
+
"""
|
|
754
|
+
return pulumi.get(self, "trace_level")
|
|
755
|
+
|
|
756
|
+
@trace_level.setter
|
|
757
|
+
def trace_level(self, value: Optional[pulumi.Input[str]]):
|
|
758
|
+
pulumi.set(self, "trace_level", value)
|
|
759
|
+
|
|
760
|
+
|
|
761
|
+
class FunctionJava(pulumi.CustomResource):
|
|
762
|
+
@overload
|
|
763
|
+
def __init__(__self__,
|
|
764
|
+
resource_name: str,
|
|
765
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
766
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]]] = None,
|
|
767
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
768
|
+
database: Optional[pulumi.Input[str]] = None,
|
|
769
|
+
enable_console_output: Optional[pulumi.Input[bool]] = None,
|
|
770
|
+
external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
771
|
+
function_definition: Optional[pulumi.Input[str]] = None,
|
|
772
|
+
handler: Optional[pulumi.Input[str]] = None,
|
|
773
|
+
imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]]] = None,
|
|
774
|
+
is_secure: Optional[pulumi.Input[str]] = None,
|
|
775
|
+
log_level: Optional[pulumi.Input[str]] = None,
|
|
776
|
+
metric_level: Optional[pulumi.Input[str]] = None,
|
|
777
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
778
|
+
null_input_behavior: Optional[pulumi.Input[str]] = None,
|
|
779
|
+
packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
780
|
+
return_results_behavior: Optional[pulumi.Input[str]] = None,
|
|
781
|
+
return_type: Optional[pulumi.Input[str]] = None,
|
|
782
|
+
runtime_version: Optional[pulumi.Input[str]] = None,
|
|
783
|
+
schema: Optional[pulumi.Input[str]] = None,
|
|
784
|
+
secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]]] = None,
|
|
785
|
+
target_path: Optional[pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']]] = None,
|
|
786
|
+
trace_level: Optional[pulumi.Input[str]] = None,
|
|
787
|
+
__props__=None):
|
|
788
|
+
"""
|
|
789
|
+
## Import
|
|
790
|
+
|
|
791
|
+
```sh
|
|
792
|
+
$ pulumi import snowflake:index/functionJava:FunctionJava example '"<database_name>"."<schema_name>"."<function_name>"(varchar, varchar, varchar)'
|
|
793
|
+
```
|
|
794
|
+
|
|
795
|
+
Note: Snowflake is not returning all information needed to populate the state correctly after import (e.g. data types with attributes like NUMBER(32, 10) are returned as NUMBER, default values for arguments are not returned at all).
|
|
796
|
+
|
|
797
|
+
Also, `ALTER` for functions is very limited so most of the attributes on this resource are marked as force new. Because of that, in multiple situations plan won't be empty after importing and manual state operations may be required.
|
|
798
|
+
|
|
799
|
+
:param str resource_name: The name of the resource.
|
|
800
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
801
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
|
|
802
|
+
:param pulumi.Input[str] comment: Specifies a comment for the function.
|
|
803
|
+
:param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
804
|
+
:param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
|
|
805
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
|
|
806
|
+
:param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
807
|
+
:param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
808
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
|
|
809
|
+
:param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
|
|
810
|
+
:param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
|
|
811
|
+
:param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
812
|
+
:param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
|
|
813
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
|
|
814
|
+
:param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
|
|
815
|
+
:param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
|
|
816
|
+
:param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
|
|
817
|
+
:param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
818
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
|
|
819
|
+
:param pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
820
|
+
:param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
|
|
821
|
+
"""
|
|
822
|
+
...
|
|
823
|
+
@overload
|
|
824
|
+
def __init__(__self__,
|
|
825
|
+
resource_name: str,
|
|
826
|
+
args: FunctionJavaArgs,
|
|
827
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
828
|
+
"""
|
|
829
|
+
## Import
|
|
830
|
+
|
|
831
|
+
```sh
|
|
832
|
+
$ pulumi import snowflake:index/functionJava:FunctionJava example '"<database_name>"."<schema_name>"."<function_name>"(varchar, varchar, varchar)'
|
|
833
|
+
```
|
|
834
|
+
|
|
835
|
+
Note: Snowflake is not returning all information needed to populate the state correctly after import (e.g. data types with attributes like NUMBER(32, 10) are returned as NUMBER, default values for arguments are not returned at all).
|
|
836
|
+
|
|
837
|
+
Also, `ALTER` for functions is very limited so most of the attributes on this resource are marked as force new. Because of that, in multiple situations plan won't be empty after importing and manual state operations may be required.
|
|
838
|
+
|
|
839
|
+
:param str resource_name: The name of the resource.
|
|
840
|
+
:param FunctionJavaArgs args: The arguments to use to populate this resource's properties.
|
|
841
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
842
|
+
"""
|
|
843
|
+
...
|
|
844
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
845
|
+
resource_args, opts = _utilities.get_resource_args_opts(FunctionJavaArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
846
|
+
if resource_args is not None:
|
|
847
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
848
|
+
else:
|
|
849
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
850
|
+
|
|
851
|
+
def _internal_init(__self__,
|
|
852
|
+
resource_name: str,
|
|
853
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
854
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]]] = None,
|
|
855
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
856
|
+
database: Optional[pulumi.Input[str]] = None,
|
|
857
|
+
enable_console_output: Optional[pulumi.Input[bool]] = None,
|
|
858
|
+
external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
859
|
+
function_definition: Optional[pulumi.Input[str]] = None,
|
|
860
|
+
handler: Optional[pulumi.Input[str]] = None,
|
|
861
|
+
imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]]] = None,
|
|
862
|
+
is_secure: Optional[pulumi.Input[str]] = None,
|
|
863
|
+
log_level: Optional[pulumi.Input[str]] = None,
|
|
864
|
+
metric_level: Optional[pulumi.Input[str]] = None,
|
|
865
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
866
|
+
null_input_behavior: Optional[pulumi.Input[str]] = None,
|
|
867
|
+
packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
868
|
+
return_results_behavior: Optional[pulumi.Input[str]] = None,
|
|
869
|
+
return_type: Optional[pulumi.Input[str]] = None,
|
|
870
|
+
runtime_version: Optional[pulumi.Input[str]] = None,
|
|
871
|
+
schema: Optional[pulumi.Input[str]] = None,
|
|
872
|
+
secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]]] = None,
|
|
873
|
+
target_path: Optional[pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']]] = None,
|
|
874
|
+
trace_level: Optional[pulumi.Input[str]] = None,
|
|
875
|
+
__props__=None):
|
|
876
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
877
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
878
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
879
|
+
if opts.id is None:
|
|
880
|
+
if __props__ is not None:
|
|
881
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
882
|
+
__props__ = FunctionJavaArgs.__new__(FunctionJavaArgs)
|
|
883
|
+
|
|
884
|
+
__props__.__dict__["arguments"] = arguments
|
|
885
|
+
__props__.__dict__["comment"] = comment
|
|
886
|
+
if database is None and not opts.urn:
|
|
887
|
+
raise TypeError("Missing required property 'database'")
|
|
888
|
+
__props__.__dict__["database"] = database
|
|
889
|
+
__props__.__dict__["enable_console_output"] = enable_console_output
|
|
890
|
+
__props__.__dict__["external_access_integrations"] = external_access_integrations
|
|
891
|
+
__props__.__dict__["function_definition"] = function_definition
|
|
892
|
+
if handler is None and not opts.urn:
|
|
893
|
+
raise TypeError("Missing required property 'handler'")
|
|
894
|
+
__props__.__dict__["handler"] = handler
|
|
895
|
+
__props__.__dict__["imports"] = imports
|
|
896
|
+
__props__.__dict__["is_secure"] = is_secure
|
|
897
|
+
__props__.__dict__["log_level"] = log_level
|
|
898
|
+
__props__.__dict__["metric_level"] = metric_level
|
|
899
|
+
__props__.__dict__["name"] = name
|
|
900
|
+
__props__.__dict__["null_input_behavior"] = null_input_behavior
|
|
901
|
+
__props__.__dict__["packages"] = packages
|
|
902
|
+
__props__.__dict__["return_results_behavior"] = return_results_behavior
|
|
903
|
+
if return_type is None and not opts.urn:
|
|
904
|
+
raise TypeError("Missing required property 'return_type'")
|
|
905
|
+
__props__.__dict__["return_type"] = return_type
|
|
906
|
+
__props__.__dict__["runtime_version"] = runtime_version
|
|
907
|
+
if schema is None and not opts.urn:
|
|
908
|
+
raise TypeError("Missing required property 'schema'")
|
|
909
|
+
__props__.__dict__["schema"] = schema
|
|
910
|
+
__props__.__dict__["secrets"] = secrets
|
|
911
|
+
__props__.__dict__["target_path"] = target_path
|
|
912
|
+
__props__.__dict__["trace_level"] = trace_level
|
|
913
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
914
|
+
__props__.__dict__["function_language"] = None
|
|
915
|
+
__props__.__dict__["parameters"] = None
|
|
916
|
+
__props__.__dict__["show_outputs"] = None
|
|
917
|
+
super(FunctionJava, __self__).__init__(
|
|
918
|
+
'snowflake:index/functionJava:FunctionJava',
|
|
919
|
+
resource_name,
|
|
920
|
+
__props__,
|
|
921
|
+
opts)
|
|
922
|
+
|
|
923
|
+
@staticmethod
|
|
924
|
+
def get(resource_name: str,
|
|
925
|
+
id: pulumi.Input[str],
|
|
926
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
927
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]]] = None,
|
|
928
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
929
|
+
database: Optional[pulumi.Input[str]] = None,
|
|
930
|
+
enable_console_output: Optional[pulumi.Input[bool]] = None,
|
|
931
|
+
external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
932
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
933
|
+
function_definition: Optional[pulumi.Input[str]] = None,
|
|
934
|
+
function_language: Optional[pulumi.Input[str]] = None,
|
|
935
|
+
handler: Optional[pulumi.Input[str]] = None,
|
|
936
|
+
imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]]] = None,
|
|
937
|
+
is_secure: Optional[pulumi.Input[str]] = None,
|
|
938
|
+
log_level: Optional[pulumi.Input[str]] = None,
|
|
939
|
+
metric_level: Optional[pulumi.Input[str]] = None,
|
|
940
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
941
|
+
null_input_behavior: Optional[pulumi.Input[str]] = None,
|
|
942
|
+
packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
943
|
+
parameters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaParameterArgs', 'FunctionJavaParameterArgsDict']]]]] = None,
|
|
944
|
+
return_results_behavior: Optional[pulumi.Input[str]] = None,
|
|
945
|
+
return_type: Optional[pulumi.Input[str]] = None,
|
|
946
|
+
runtime_version: Optional[pulumi.Input[str]] = None,
|
|
947
|
+
schema: Optional[pulumi.Input[str]] = None,
|
|
948
|
+
secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]]] = None,
|
|
949
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaShowOutputArgs', 'FunctionJavaShowOutputArgsDict']]]]] = None,
|
|
950
|
+
target_path: Optional[pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']]] = None,
|
|
951
|
+
trace_level: Optional[pulumi.Input[str]] = None) -> 'FunctionJava':
|
|
952
|
+
"""
|
|
953
|
+
Get an existing FunctionJava resource's state with the given name, id, and optional extra
|
|
954
|
+
properties used to qualify the lookup.
|
|
955
|
+
|
|
956
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
957
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
958
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
959
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
|
|
960
|
+
:param pulumi.Input[str] comment: Specifies a comment for the function.
|
|
961
|
+
:param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
962
|
+
:param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
|
|
963
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
|
|
964
|
+
:param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
965
|
+
:param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
966
|
+
:param pulumi.Input[str] function_language: Specifies language for the user. Used to detect external changes.
|
|
967
|
+
:param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
968
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
|
|
969
|
+
:param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
|
|
970
|
+
:param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
|
|
971
|
+
:param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
972
|
+
:param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
|
|
973
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
|
|
974
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaParameterArgs', 'FunctionJavaParameterArgsDict']]]] parameters: Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
|
|
975
|
+
:param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
|
|
976
|
+
:param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
|
|
977
|
+
:param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
|
|
978
|
+
:param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
979
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
|
|
980
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaShowOutputArgs', 'FunctionJavaShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW FUNCTION` for the given function.
|
|
981
|
+
:param pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
982
|
+
:param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
|
|
983
|
+
"""
|
|
984
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
985
|
+
|
|
986
|
+
__props__ = _FunctionJavaState.__new__(_FunctionJavaState)
|
|
987
|
+
|
|
988
|
+
__props__.__dict__["arguments"] = arguments
|
|
989
|
+
__props__.__dict__["comment"] = comment
|
|
990
|
+
__props__.__dict__["database"] = database
|
|
991
|
+
__props__.__dict__["enable_console_output"] = enable_console_output
|
|
992
|
+
__props__.__dict__["external_access_integrations"] = external_access_integrations
|
|
993
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
994
|
+
__props__.__dict__["function_definition"] = function_definition
|
|
995
|
+
__props__.__dict__["function_language"] = function_language
|
|
996
|
+
__props__.__dict__["handler"] = handler
|
|
997
|
+
__props__.__dict__["imports"] = imports
|
|
998
|
+
__props__.__dict__["is_secure"] = is_secure
|
|
999
|
+
__props__.__dict__["log_level"] = log_level
|
|
1000
|
+
__props__.__dict__["metric_level"] = metric_level
|
|
1001
|
+
__props__.__dict__["name"] = name
|
|
1002
|
+
__props__.__dict__["null_input_behavior"] = null_input_behavior
|
|
1003
|
+
__props__.__dict__["packages"] = packages
|
|
1004
|
+
__props__.__dict__["parameters"] = parameters
|
|
1005
|
+
__props__.__dict__["return_results_behavior"] = return_results_behavior
|
|
1006
|
+
__props__.__dict__["return_type"] = return_type
|
|
1007
|
+
__props__.__dict__["runtime_version"] = runtime_version
|
|
1008
|
+
__props__.__dict__["schema"] = schema
|
|
1009
|
+
__props__.__dict__["secrets"] = secrets
|
|
1010
|
+
__props__.__dict__["show_outputs"] = show_outputs
|
|
1011
|
+
__props__.__dict__["target_path"] = target_path
|
|
1012
|
+
__props__.__dict__["trace_level"] = trace_level
|
|
1013
|
+
return FunctionJava(resource_name, opts=opts, __props__=__props__)
|
|
1014
|
+
|
|
1015
|
+
@property
|
|
1016
|
+
@pulumi.getter
|
|
1017
|
+
def arguments(self) -> pulumi.Output[Optional[Sequence['outputs.FunctionJavaArgument']]]:
|
|
1018
|
+
"""
|
|
1019
|
+
List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
|
|
1020
|
+
"""
|
|
1021
|
+
return pulumi.get(self, "arguments")
|
|
1022
|
+
|
|
1023
|
+
@property
|
|
1024
|
+
@pulumi.getter
|
|
1025
|
+
def comment(self) -> pulumi.Output[Optional[str]]:
|
|
1026
|
+
"""
|
|
1027
|
+
Specifies a comment for the function.
|
|
1028
|
+
"""
|
|
1029
|
+
return pulumi.get(self, "comment")
|
|
1030
|
+
|
|
1031
|
+
@property
|
|
1032
|
+
@pulumi.getter
|
|
1033
|
+
def database(self) -> pulumi.Output[str]:
|
|
1034
|
+
"""
|
|
1035
|
+
The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
1036
|
+
"""
|
|
1037
|
+
return pulumi.get(self, "database")
|
|
1038
|
+
|
|
1039
|
+
@property
|
|
1040
|
+
@pulumi.getter(name="enableConsoleOutput")
|
|
1041
|
+
def enable_console_output(self) -> pulumi.Output[bool]:
|
|
1042
|
+
"""
|
|
1043
|
+
Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
|
|
1044
|
+
"""
|
|
1045
|
+
return pulumi.get(self, "enable_console_output")
|
|
1046
|
+
|
|
1047
|
+
@property
|
|
1048
|
+
@pulumi.getter(name="externalAccessIntegrations")
|
|
1049
|
+
def external_access_integrations(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
1050
|
+
"""
|
|
1051
|
+
The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
|
|
1052
|
+
"""
|
|
1053
|
+
return pulumi.get(self, "external_access_integrations")
|
|
1054
|
+
|
|
1055
|
+
@property
|
|
1056
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
1057
|
+
def fully_qualified_name(self) -> pulumi.Output[str]:
|
|
1058
|
+
"""
|
|
1059
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
1060
|
+
"""
|
|
1061
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
1062
|
+
|
|
1063
|
+
@property
|
|
1064
|
+
@pulumi.getter(name="functionDefinition")
|
|
1065
|
+
def function_definition(self) -> pulumi.Output[Optional[str]]:
|
|
1066
|
+
"""
|
|
1067
|
+
Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
1068
|
+
"""
|
|
1069
|
+
return pulumi.get(self, "function_definition")
|
|
1070
|
+
|
|
1071
|
+
@property
|
|
1072
|
+
@pulumi.getter(name="functionLanguage")
|
|
1073
|
+
def function_language(self) -> pulumi.Output[str]:
|
|
1074
|
+
"""
|
|
1075
|
+
Specifies language for the user. Used to detect external changes.
|
|
1076
|
+
"""
|
|
1077
|
+
return pulumi.get(self, "function_language")
|
|
1078
|
+
|
|
1079
|
+
@property
|
|
1080
|
+
@pulumi.getter
|
|
1081
|
+
def handler(self) -> pulumi.Output[str]:
|
|
1082
|
+
"""
|
|
1083
|
+
The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
1084
|
+
"""
|
|
1085
|
+
return pulumi.get(self, "handler")
|
|
1086
|
+
|
|
1087
|
+
@property
|
|
1088
|
+
@pulumi.getter
|
|
1089
|
+
def imports(self) -> pulumi.Output[Optional[Sequence['outputs.FunctionJavaImport']]]:
|
|
1090
|
+
"""
|
|
1091
|
+
The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
|
|
1092
|
+
"""
|
|
1093
|
+
return pulumi.get(self, "imports")
|
|
1094
|
+
|
|
1095
|
+
@property
|
|
1096
|
+
@pulumi.getter(name="isSecure")
|
|
1097
|
+
def is_secure(self) -> pulumi.Output[Optional[str]]:
|
|
1098
|
+
return pulumi.get(self, "is_secure")
|
|
1099
|
+
|
|
1100
|
+
@property
|
|
1101
|
+
@pulumi.getter(name="logLevel")
|
|
1102
|
+
def log_level(self) -> pulumi.Output[str]:
|
|
1103
|
+
"""
|
|
1104
|
+
LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
|
|
1105
|
+
"""
|
|
1106
|
+
return pulumi.get(self, "log_level")
|
|
1107
|
+
|
|
1108
|
+
@property
|
|
1109
|
+
@pulumi.getter(name="metricLevel")
|
|
1110
|
+
def metric_level(self) -> pulumi.Output[str]:
|
|
1111
|
+
"""
|
|
1112
|
+
METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
|
|
1113
|
+
"""
|
|
1114
|
+
return pulumi.get(self, "metric_level")
|
|
1115
|
+
|
|
1116
|
+
@property
|
|
1117
|
+
@pulumi.getter
|
|
1118
|
+
def name(self) -> pulumi.Output[str]:
|
|
1119
|
+
"""
|
|
1120
|
+
The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
1121
|
+
"""
|
|
1122
|
+
return pulumi.get(self, "name")
|
|
1123
|
+
|
|
1124
|
+
@property
|
|
1125
|
+
@pulumi.getter(name="nullInputBehavior")
|
|
1126
|
+
def null_input_behavior(self) -> pulumi.Output[Optional[str]]:
|
|
1127
|
+
"""
|
|
1128
|
+
Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
|
|
1129
|
+
"""
|
|
1130
|
+
return pulumi.get(self, "null_input_behavior")
|
|
1131
|
+
|
|
1132
|
+
@property
|
|
1133
|
+
@pulumi.getter
|
|
1134
|
+
def packages(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
1135
|
+
"""
|
|
1136
|
+
The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
|
|
1137
|
+
"""
|
|
1138
|
+
return pulumi.get(self, "packages")
|
|
1139
|
+
|
|
1140
|
+
@property
|
|
1141
|
+
@pulumi.getter
|
|
1142
|
+
def parameters(self) -> pulumi.Output[Sequence['outputs.FunctionJavaParameter']]:
|
|
1143
|
+
"""
|
|
1144
|
+
Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
|
|
1145
|
+
"""
|
|
1146
|
+
return pulumi.get(self, "parameters")
|
|
1147
|
+
|
|
1148
|
+
@property
|
|
1149
|
+
@pulumi.getter(name="returnResultsBehavior")
|
|
1150
|
+
def return_results_behavior(self) -> pulumi.Output[Optional[str]]:
|
|
1151
|
+
"""
|
|
1152
|
+
Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
|
|
1153
|
+
"""
|
|
1154
|
+
return pulumi.get(self, "return_results_behavior")
|
|
1155
|
+
|
|
1156
|
+
@property
|
|
1157
|
+
@pulumi.getter(name="returnType")
|
|
1158
|
+
def return_type(self) -> pulumi.Output[str]:
|
|
1159
|
+
"""
|
|
1160
|
+
Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
|
|
1161
|
+
"""
|
|
1162
|
+
return pulumi.get(self, "return_type")
|
|
1163
|
+
|
|
1164
|
+
@property
|
|
1165
|
+
@pulumi.getter(name="runtimeVersion")
|
|
1166
|
+
def runtime_version(self) -> pulumi.Output[Optional[str]]:
|
|
1167
|
+
"""
|
|
1168
|
+
Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
|
|
1169
|
+
"""
|
|
1170
|
+
return pulumi.get(self, "runtime_version")
|
|
1171
|
+
|
|
1172
|
+
@property
|
|
1173
|
+
@pulumi.getter
|
|
1174
|
+
def schema(self) -> pulumi.Output[str]:
|
|
1175
|
+
"""
|
|
1176
|
+
The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
1177
|
+
"""
|
|
1178
|
+
return pulumi.get(self, "schema")
|
|
1179
|
+
|
|
1180
|
+
@property
|
|
1181
|
+
@pulumi.getter
|
|
1182
|
+
def secrets(self) -> pulumi.Output[Optional[Sequence['outputs.FunctionJavaSecret']]]:
|
|
1183
|
+
"""
|
|
1184
|
+
Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
|
|
1185
|
+
"""
|
|
1186
|
+
return pulumi.get(self, "secrets")
|
|
1187
|
+
|
|
1188
|
+
@property
|
|
1189
|
+
@pulumi.getter(name="showOutputs")
|
|
1190
|
+
def show_outputs(self) -> pulumi.Output[Sequence['outputs.FunctionJavaShowOutput']]:
|
|
1191
|
+
"""
|
|
1192
|
+
Outputs the result of `SHOW FUNCTION` for the given function.
|
|
1193
|
+
"""
|
|
1194
|
+
return pulumi.get(self, "show_outputs")
|
|
1195
|
+
|
|
1196
|
+
@property
|
|
1197
|
+
@pulumi.getter(name="targetPath")
|
|
1198
|
+
def target_path(self) -> pulumi.Output[Optional['outputs.FunctionJavaTargetPath']]:
|
|
1199
|
+
"""
|
|
1200
|
+
The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
|
|
1201
|
+
"""
|
|
1202
|
+
return pulumi.get(self, "target_path")
|
|
1203
|
+
|
|
1204
|
+
@property
|
|
1205
|
+
@pulumi.getter(name="traceLevel")
|
|
1206
|
+
def trace_level(self) -> pulumi.Output[str]:
|
|
1207
|
+
"""
|
|
1208
|
+
Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
|
|
1209
|
+
"""
|
|
1210
|
+
return pulumi.get(self, "trace_level")
|
|
1211
|
+
|