pulumi-datarobot 0.1.31__tar.gz → 0.1.33__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. pulumi_datarobot-0.1.33/PKG-INFO +68 -0
  2. pulumi_datarobot-0.1.33/README.md +54 -0
  3. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/_inputs.py +192 -1
  4. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/application_source.py +87 -41
  5. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/custom_application.py +6 -6
  6. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/custom_model.py +210 -47
  7. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/deployment.py +2 -2
  8. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/llm_blueprint.py +172 -5
  9. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/outputs.py +198 -1
  10. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/qa_application.py +2 -2
  11. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/registered_model.py +52 -5
  12. pulumi_datarobot-0.1.33/pulumi_datarobot.egg-info/PKG-INFO +68 -0
  13. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/setup.py +1 -1
  14. pulumi_datarobot-0.1.31/PKG-INFO +0 -177
  15. pulumi_datarobot-0.1.31/README.md +0 -163
  16. pulumi_datarobot-0.1.31/pulumi_datarobot.egg-info/PKG-INFO +0 -177
  17. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/__init__.py +0 -0
  18. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/_utilities.py +0 -0
  19. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/api_token_credential.py +0 -0
  20. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/basic_credential.py +0 -0
  21. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/config/__init__.py +0 -0
  22. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/config/vars.py +0 -0
  23. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/dataset_from_file.py +0 -0
  24. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/get_global_model.py +0 -0
  25. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/google_cloud_credential.py +0 -0
  26. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/playground.py +0 -0
  27. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/prediction_environment.py +0 -0
  28. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/provider.py +0 -0
  29. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/pulumi-plugin.json +0 -0
  30. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/py.typed +0 -0
  31. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/remote_repository.py +0 -0
  32. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/use_case.py +0 -0
  33. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot/vector_database.py +0 -0
  34. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot.egg-info/SOURCES.txt +0 -0
  35. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot.egg-info/dependency_links.txt +0 -0
  36. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot.egg-info/not-zip-safe +0 -0
  37. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot.egg-info/requires.txt +0 -0
  38. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/pulumi_datarobot.egg-info/top_level.txt +0 -0
  39. {pulumi_datarobot-0.1.31 → pulumi_datarobot-0.1.33}/setup.cfg +0 -0
@@ -0,0 +1,68 @@
1
+ Metadata-Version: 2.1
2
+ Name: pulumi_datarobot
3
+ Version: 0.1.33
4
+ Summary: A Pulumi package for creating and managing DataRobot resources.
5
+ Home-page: https://www.datarobot.com
6
+ License: Apache-2.0
7
+ Project-URL: Repository, https://github.com/datarobot-community/pulumi-datarobot
8
+ Keywords: datarobot ai category/cloud
9
+ Platform: UNKNOWN
10
+ Requires-Python: >=3.8
11
+ Description-Content-Type: text/markdown
12
+
13
+ # DataRobot Resource Provider
14
+
15
+ The DataRobot Resource Provider lets you manage [DataRobot](https://www.datarobot.com/) resources.
16
+ The provider is built on [terraform-provider-datarobot](https://github.com/datarobot-community/terraform-provider-datarobot).
17
+ To use this package, please install the [Pulumi CLI](https://pulumi.io/) first.
18
+
19
+ ## Installing
20
+
21
+ This package is available for several languages/platforms:
22
+
23
+ ### Python
24
+
25
+ To use from Python, install using `pip`:
26
+
27
+ ```bash
28
+ pip install pulumi_datarobot
29
+ ```
30
+
31
+ ### Javscript/Typescript
32
+
33
+ To use from JavaScript or TypeScript in Node.js, install using either `npm`:
34
+
35
+ ```bash
36
+ npm install @datarobot/pulumi-datarobot
37
+ ```
38
+
39
+ or `yarn`:
40
+
41
+ ```bash
42
+ yarn add @datarobot/pulumi-datarobot
43
+ ```
44
+
45
+ ### Go
46
+
47
+ Coming soon...
48
+
49
+ ### .NET
50
+
51
+ Coming soon...
52
+
53
+ ### YAML
54
+
55
+ No install necessary, just run `pulumi up`.
56
+
57
+ ## Configuration
58
+
59
+ The following configuration points are available for the DataRobot provider:
60
+
61
+ - `datarobot:apikey` (environment: `DATAROBOT_API_KEY`) - the API key for DataRobot
62
+ - `datarobot:endpoint` (environment: `DATAROBOT_ENDPOINT`) - the endpoint for DataRobot
63
+
64
+ ## Examples
65
+
66
+ See [datarobot-pulumi examples](https://github.com/datarobot-community/pulumi-datarobot/tree/main/examples)
67
+
68
+
@@ -0,0 +1,54 @@
1
+ # DataRobot Resource Provider
2
+
3
+ The DataRobot Resource Provider lets you manage [DataRobot](https://www.datarobot.com/) resources.
4
+ The provider is built on [terraform-provider-datarobot](https://github.com/datarobot-community/terraform-provider-datarobot).
5
+ To use this package, please install the [Pulumi CLI](https://pulumi.io/) first.
6
+
7
+ ## Installing
8
+
9
+ This package is available for several languages/platforms:
10
+
11
+ ### Python
12
+
13
+ To use from Python, install using `pip`:
14
+
15
+ ```bash
16
+ pip install pulumi_datarobot
17
+ ```
18
+
19
+ ### Javscript/Typescript
20
+
21
+ To use from JavaScript or TypeScript in Node.js, install using either `npm`:
22
+
23
+ ```bash
24
+ npm install @datarobot/pulumi-datarobot
25
+ ```
26
+
27
+ or `yarn`:
28
+
29
+ ```bash
30
+ yarn add @datarobot/pulumi-datarobot
31
+ ```
32
+
33
+ ### Go
34
+
35
+ Coming soon...
36
+
37
+ ### .NET
38
+
39
+ Coming soon...
40
+
41
+ ### YAML
42
+
43
+ No install necessary, just run `pulumi up`.
44
+
45
+ ## Configuration
46
+
47
+ The following configuration points are available for the DataRobot provider:
48
+
49
+ - `datarobot:apikey` (environment: `DATAROBOT_API_KEY`) - the API key for DataRobot
50
+ - `datarobot:endpoint` (environment: `DATAROBOT_ENDPOINT`) - the endpoint for DataRobot
51
+
52
+ ## Examples
53
+
54
+ See [datarobot-pulumi examples](https://github.com/datarobot-community/pulumi-datarobot/tree/main/examples)
@@ -22,6 +22,8 @@ __all__ = [
22
22
  'DeploymentSettingsArgs',
23
23
  'DeploymentSettingsAssociationIdArgs',
24
24
  'DeploymentSettingsPredictionsSettingsArgs',
25
+ 'LlmBlueprintLlmSettingsArgs',
26
+ 'LlmBlueprintVectorDatabaseSettingsArgs',
25
27
  'VectorDatabaseChunkingParametersArgs',
26
28
  ]
27
29
 
@@ -109,6 +111,10 @@ class CustomModelGuardConfigurationArgs:
109
111
  template_name: pulumi.Input[str],
110
112
  deployment_id: Optional[pulumi.Input[str]] = None,
111
113
  input_column_name: Optional[pulumi.Input[str]] = None,
114
+ llm_type: Optional[pulumi.Input[str]] = None,
115
+ openai_api_base: Optional[pulumi.Input[str]] = None,
116
+ openai_credential: Optional[pulumi.Input[str]] = None,
117
+ openai_deployment_id: Optional[pulumi.Input[str]] = None,
112
118
  output_column_name: Optional[pulumi.Input[str]] = None):
113
119
  """
114
120
  :param pulumi.Input['CustomModelGuardConfigurationInterventionArgs'] intervention: The intervention for the guard configuration.
@@ -117,6 +123,10 @@ class CustomModelGuardConfigurationArgs:
117
123
  :param pulumi.Input[str] template_name: The template name of the guard configuration.
118
124
  :param pulumi.Input[str] deployment_id: The deployment ID of this guard.
119
125
  :param pulumi.Input[str] input_column_name: The input column name of this guard.
126
+ :param pulumi.Input[str] llm_type: The LLM type for this guard.
127
+ :param pulumi.Input[str] openai_api_base: The OpenAI API base URL for this guard.
128
+ :param pulumi.Input[str] openai_credential: The ID of an OpenAI credential for this guard.
129
+ :param pulumi.Input[str] openai_deployment_id: The ID of an OpenAI deployment for this guard.
120
130
  :param pulumi.Input[str] output_column_name: The output column name of this guard.
121
131
  """
122
132
  pulumi.set(__self__, "intervention", intervention)
@@ -127,6 +137,14 @@ class CustomModelGuardConfigurationArgs:
127
137
  pulumi.set(__self__, "deployment_id", deployment_id)
128
138
  if input_column_name is not None:
129
139
  pulumi.set(__self__, "input_column_name", input_column_name)
140
+ if llm_type is not None:
141
+ pulumi.set(__self__, "llm_type", llm_type)
142
+ if openai_api_base is not None:
143
+ pulumi.set(__self__, "openai_api_base", openai_api_base)
144
+ if openai_credential is not None:
145
+ pulumi.set(__self__, "openai_credential", openai_credential)
146
+ if openai_deployment_id is not None:
147
+ pulumi.set(__self__, "openai_deployment_id", openai_deployment_id)
130
148
  if output_column_name is not None:
131
149
  pulumi.set(__self__, "output_column_name", output_column_name)
132
150
 
@@ -202,6 +220,54 @@ class CustomModelGuardConfigurationArgs:
202
220
  def input_column_name(self, value: Optional[pulumi.Input[str]]):
203
221
  pulumi.set(self, "input_column_name", value)
204
222
 
223
+ @property
224
+ @pulumi.getter(name="llmType")
225
+ def llm_type(self) -> Optional[pulumi.Input[str]]:
226
+ """
227
+ The LLM type for this guard.
228
+ """
229
+ return pulumi.get(self, "llm_type")
230
+
231
+ @llm_type.setter
232
+ def llm_type(self, value: Optional[pulumi.Input[str]]):
233
+ pulumi.set(self, "llm_type", value)
234
+
235
+ @property
236
+ @pulumi.getter(name="openaiApiBase")
237
+ def openai_api_base(self) -> Optional[pulumi.Input[str]]:
238
+ """
239
+ The OpenAI API base URL for this guard.
240
+ """
241
+ return pulumi.get(self, "openai_api_base")
242
+
243
+ @openai_api_base.setter
244
+ def openai_api_base(self, value: Optional[pulumi.Input[str]]):
245
+ pulumi.set(self, "openai_api_base", value)
246
+
247
+ @property
248
+ @pulumi.getter(name="openaiCredential")
249
+ def openai_credential(self) -> Optional[pulumi.Input[str]]:
250
+ """
251
+ The ID of an OpenAI credential for this guard.
252
+ """
253
+ return pulumi.get(self, "openai_credential")
254
+
255
+ @openai_credential.setter
256
+ def openai_credential(self, value: Optional[pulumi.Input[str]]):
257
+ pulumi.set(self, "openai_credential", value)
258
+
259
+ @property
260
+ @pulumi.getter(name="openaiDeploymentId")
261
+ def openai_deployment_id(self) -> Optional[pulumi.Input[str]]:
262
+ """
263
+ The ID of an OpenAI deployment for this guard.
264
+ """
265
+ return pulumi.get(self, "openai_deployment_id")
266
+
267
+ @openai_deployment_id.setter
268
+ def openai_deployment_id(self, value: Optional[pulumi.Input[str]]):
269
+ pulumi.set(self, "openai_deployment_id", value)
270
+
205
271
  @property
206
272
  @pulumi.getter(name="outputColumnName")
207
273
  def output_column_name(self) -> Optional[pulumi.Input[str]]:
@@ -578,13 +644,16 @@ class DeploymentSettingsArgs:
578
644
  class DeploymentSettingsAssociationIdArgs:
579
645
  def __init__(__self__, *,
580
646
  auto_generate_id: pulumi.Input[bool],
581
- feature_name: pulumi.Input[str]):
647
+ feature_name: pulumi.Input[str],
648
+ required_in_prediction_requests: pulumi.Input[bool]):
582
649
  """
583
650
  :param pulumi.Input[bool] auto_generate_id: Whether to automatically generate an association ID.
584
651
  :param pulumi.Input[str] feature_name: The name of the feature to use as the association ID.
652
+ :param pulumi.Input[bool] required_in_prediction_requests: Whether the association ID is required in prediction requests.
585
653
  """
586
654
  pulumi.set(__self__, "auto_generate_id", auto_generate_id)
587
655
  pulumi.set(__self__, "feature_name", feature_name)
656
+ pulumi.set(__self__, "required_in_prediction_requests", required_in_prediction_requests)
588
657
 
589
658
  @property
590
659
  @pulumi.getter(name="autoGenerateId")
@@ -610,6 +679,18 @@ class DeploymentSettingsAssociationIdArgs:
610
679
  def feature_name(self, value: pulumi.Input[str]):
611
680
  pulumi.set(self, "feature_name", value)
612
681
 
682
+ @property
683
+ @pulumi.getter(name="requiredInPredictionRequests")
684
+ def required_in_prediction_requests(self) -> pulumi.Input[bool]:
685
+ """
686
+ Whether the association ID is required in prediction requests.
687
+ """
688
+ return pulumi.get(self, "required_in_prediction_requests")
689
+
690
+ @required_in_prediction_requests.setter
691
+ def required_in_prediction_requests(self, value: pulumi.Input[bool]):
692
+ pulumi.set(self, "required_in_prediction_requests", value)
693
+
613
694
 
614
695
  @pulumi.input_type
615
696
  class DeploymentSettingsPredictionsSettingsArgs:
@@ -663,6 +744,116 @@ class DeploymentSettingsPredictionsSettingsArgs:
663
744
  pulumi.set(self, "real_time", value)
664
745
 
665
746
 
747
+ @pulumi.input_type
748
+ class LlmBlueprintLlmSettingsArgs:
749
+ def __init__(__self__, *,
750
+ max_completion_length: Optional[pulumi.Input[int]] = None,
751
+ system_prompt: Optional[pulumi.Input[str]] = None,
752
+ temperature: Optional[pulumi.Input[float]] = None,
753
+ top_p: Optional[pulumi.Input[float]] = None):
754
+ """
755
+ :param pulumi.Input[int] max_completion_length: The maximum number of tokens allowed in the completion. The combined count of this value and prompt tokens must be below the model's maximum context size, where prompt token count is comprised of system prompt, user prompt, recent chat history, and vector database citations.
756
+ :param pulumi.Input[str] system_prompt: Guides the style of the LLM response. It is a 'universal' prompt, prepended to all individual prompts.
757
+ :param pulumi.Input[float] temperature: Controls the randomness of model output, where higher values return more diverse output and lower values return more deterministic results.
758
+ :param pulumi.Input[float] top_p: Threshold that controls the selection of words included in the response, based on a cumulative probability cutoff for token selection. Higher numbers return more diverse options for outputs.
759
+ """
760
+ if max_completion_length is not None:
761
+ pulumi.set(__self__, "max_completion_length", max_completion_length)
762
+ if system_prompt is not None:
763
+ pulumi.set(__self__, "system_prompt", system_prompt)
764
+ if temperature is not None:
765
+ pulumi.set(__self__, "temperature", temperature)
766
+ if top_p is not None:
767
+ pulumi.set(__self__, "top_p", top_p)
768
+
769
+ @property
770
+ @pulumi.getter(name="maxCompletionLength")
771
+ def max_completion_length(self) -> Optional[pulumi.Input[int]]:
772
+ """
773
+ The maximum number of tokens allowed in the completion. The combined count of this value and prompt tokens must be below the model's maximum context size, where prompt token count is comprised of system prompt, user prompt, recent chat history, and vector database citations.
774
+ """
775
+ return pulumi.get(self, "max_completion_length")
776
+
777
+ @max_completion_length.setter
778
+ def max_completion_length(self, value: Optional[pulumi.Input[int]]):
779
+ pulumi.set(self, "max_completion_length", value)
780
+
781
+ @property
782
+ @pulumi.getter(name="systemPrompt")
783
+ def system_prompt(self) -> Optional[pulumi.Input[str]]:
784
+ """
785
+ Guides the style of the LLM response. It is a 'universal' prompt, prepended to all individual prompts.
786
+ """
787
+ return pulumi.get(self, "system_prompt")
788
+
789
+ @system_prompt.setter
790
+ def system_prompt(self, value: Optional[pulumi.Input[str]]):
791
+ pulumi.set(self, "system_prompt", value)
792
+
793
+ @property
794
+ @pulumi.getter
795
+ def temperature(self) -> Optional[pulumi.Input[float]]:
796
+ """
797
+ Controls the randomness of model output, where higher values return more diverse output and lower values return more deterministic results.
798
+ """
799
+ return pulumi.get(self, "temperature")
800
+
801
+ @temperature.setter
802
+ def temperature(self, value: Optional[pulumi.Input[float]]):
803
+ pulumi.set(self, "temperature", value)
804
+
805
+ @property
806
+ @pulumi.getter(name="topP")
807
+ def top_p(self) -> Optional[pulumi.Input[float]]:
808
+ """
809
+ Threshold that controls the selection of words included in the response, based on a cumulative probability cutoff for token selection. Higher numbers return more diverse options for outputs.
810
+ """
811
+ return pulumi.get(self, "top_p")
812
+
813
+ @top_p.setter
814
+ def top_p(self, value: Optional[pulumi.Input[float]]):
815
+ pulumi.set(self, "top_p", value)
816
+
817
+
818
+ @pulumi.input_type
819
+ class LlmBlueprintVectorDatabaseSettingsArgs:
820
+ def __init__(__self__, *,
821
+ max_documents_retrieved_per_prompt: Optional[pulumi.Input[int]] = None,
822
+ max_tokens: Optional[pulumi.Input[int]] = None):
823
+ """
824
+ :param pulumi.Input[int] max_documents_retrieved_per_prompt: The maximum number of documents to retrieve from the Vector Database.
825
+ :param pulumi.Input[int] max_tokens: The maximum number of tokens to retrieve from the Vector Database.
826
+ """
827
+ if max_documents_retrieved_per_prompt is not None:
828
+ pulumi.set(__self__, "max_documents_retrieved_per_prompt", max_documents_retrieved_per_prompt)
829
+ if max_tokens is not None:
830
+ pulumi.set(__self__, "max_tokens", max_tokens)
831
+
832
+ @property
833
+ @pulumi.getter(name="maxDocumentsRetrievedPerPrompt")
834
+ def max_documents_retrieved_per_prompt(self) -> Optional[pulumi.Input[int]]:
835
+ """
836
+ The maximum number of documents to retrieve from the Vector Database.
837
+ """
838
+ return pulumi.get(self, "max_documents_retrieved_per_prompt")
839
+
840
+ @max_documents_retrieved_per_prompt.setter
841
+ def max_documents_retrieved_per_prompt(self, value: Optional[pulumi.Input[int]]):
842
+ pulumi.set(self, "max_documents_retrieved_per_prompt", value)
843
+
844
+ @property
845
+ @pulumi.getter(name="maxTokens")
846
+ def max_tokens(self) -> Optional[pulumi.Input[int]]:
847
+ """
848
+ The maximum number of tokens to retrieve from the Vector Database.
849
+ """
850
+ return pulumi.get(self, "max_tokens")
851
+
852
+ @max_tokens.setter
853
+ def max_tokens(self, value: Optional[pulumi.Input[int]]):
854
+ pulumi.set(self, "max_tokens", value)
855
+
856
+
666
857
  @pulumi.input_type
667
858
  class VectorDatabaseChunkingParametersArgs:
668
859
  def __init__(__self__, *,
@@ -16,18 +16,23 @@ __all__ = ['ApplicationSourceArgs', 'ApplicationSource']
16
16
  @pulumi.input_type
17
17
  class ApplicationSourceArgs:
18
18
  def __init__(__self__, *,
19
- local_files: pulumi.Input[Sequence[pulumi.Input[str]]],
19
+ files: Optional[Any] = None,
20
+ folder_path: Optional[pulumi.Input[str]] = None,
20
21
  name: Optional[pulumi.Input[str]] = None,
21
22
  resource_settings: Optional[pulumi.Input['ApplicationSourceResourceSettingsArgs']] = None,
22
23
  runtime_parameter_values: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationSourceRuntimeParameterValueArgs']]]] = None):
23
24
  """
24
25
  The set of arguments for constructing a ApplicationSource resource.
25
- :param pulumi.Input[Sequence[pulumi.Input[str]]] local_files: The list of local file paths used to build the Application Source.
26
+ :param Any files: The list of tuples, where values in each tuple are the local filesystem path and the path the file should be placed in the Application Source. If list is of strings, then basenames will be used for tuples.
27
+ :param pulumi.Input[str] folder_path: The path to a folder containing files to build the Application Source. Each file in the folder is uploaded under path relative to a folder path.
26
28
  :param pulumi.Input[str] name: The name of the Application Source.
27
29
  :param pulumi.Input['ApplicationSourceResourceSettingsArgs'] resource_settings: The resource settings for the Application Source.
28
30
  :param pulumi.Input[Sequence[pulumi.Input['ApplicationSourceRuntimeParameterValueArgs']]] runtime_parameter_values: The runtime parameter values for the Application Source.
29
31
  """
30
- pulumi.set(__self__, "local_files", local_files)
32
+ if files is not None:
33
+ pulumi.set(__self__, "files", files)
34
+ if folder_path is not None:
35
+ pulumi.set(__self__, "folder_path", folder_path)
31
36
  if name is not None:
32
37
  pulumi.set(__self__, "name", name)
33
38
  if resource_settings is not None:
@@ -36,16 +41,28 @@ class ApplicationSourceArgs:
36
41
  pulumi.set(__self__, "runtime_parameter_values", runtime_parameter_values)
37
42
 
38
43
  @property
39
- @pulumi.getter(name="localFiles")
40
- def local_files(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
44
+ @pulumi.getter
45
+ def files(self) -> Optional[Any]:
41
46
  """
42
- The list of local file paths used to build the Application Source.
47
+ The list of tuples, where values in each tuple are the local filesystem path and the path the file should be placed in the Application Source. If list is of strings, then basenames will be used for tuples.
43
48
  """
44
- return pulumi.get(self, "local_files")
49
+ return pulumi.get(self, "files")
45
50
 
46
- @local_files.setter
47
- def local_files(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
48
- pulumi.set(self, "local_files", value)
51
+ @files.setter
52
+ def files(self, value: Optional[Any]):
53
+ pulumi.set(self, "files", value)
54
+
55
+ @property
56
+ @pulumi.getter(name="folderPath")
57
+ def folder_path(self) -> Optional[pulumi.Input[str]]:
58
+ """
59
+ The path to a folder containing files to build the Application Source. Each file in the folder is uploaded under path relative to a folder path.
60
+ """
61
+ return pulumi.get(self, "folder_path")
62
+
63
+ @folder_path.setter
64
+ def folder_path(self, value: Optional[pulumi.Input[str]]):
65
+ pulumi.set(self, "folder_path", value)
49
66
 
50
67
  @property
51
68
  @pulumi.getter
@@ -87,21 +104,25 @@ class ApplicationSourceArgs:
87
104
  @pulumi.input_type
88
105
  class _ApplicationSourceState:
89
106
  def __init__(__self__, *,
90
- local_files: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
107
+ files: Optional[Any] = None,
108
+ folder_path: Optional[pulumi.Input[str]] = None,
91
109
  name: Optional[pulumi.Input[str]] = None,
92
110
  resource_settings: Optional[pulumi.Input['ApplicationSourceResourceSettingsArgs']] = None,
93
111
  runtime_parameter_values: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationSourceRuntimeParameterValueArgs']]]] = None,
94
112
  version_id: Optional[pulumi.Input[str]] = None):
95
113
  """
96
114
  Input properties used for looking up and filtering ApplicationSource resources.
97
- :param pulumi.Input[Sequence[pulumi.Input[str]]] local_files: The list of local file paths used to build the Application Source.
115
+ :param Any files: The list of tuples, where values in each tuple are the local filesystem path and the path the file should be placed in the Application Source. If list is of strings, then basenames will be used for tuples.
116
+ :param pulumi.Input[str] folder_path: The path to a folder containing files to build the Application Source. Each file in the folder is uploaded under path relative to a folder path.
98
117
  :param pulumi.Input[str] name: The name of the Application Source.
99
118
  :param pulumi.Input['ApplicationSourceResourceSettingsArgs'] resource_settings: The resource settings for the Application Source.
100
119
  :param pulumi.Input[Sequence[pulumi.Input['ApplicationSourceRuntimeParameterValueArgs']]] runtime_parameter_values: The runtime parameter values for the Application Source.
101
120
  :param pulumi.Input[str] version_id: The version ID of the Application Source.
102
121
  """
103
- if local_files is not None:
104
- pulumi.set(__self__, "local_files", local_files)
122
+ if files is not None:
123
+ pulumi.set(__self__, "files", files)
124
+ if folder_path is not None:
125
+ pulumi.set(__self__, "folder_path", folder_path)
105
126
  if name is not None:
106
127
  pulumi.set(__self__, "name", name)
107
128
  if resource_settings is not None:
@@ -112,16 +133,28 @@ class _ApplicationSourceState:
112
133
  pulumi.set(__self__, "version_id", version_id)
113
134
 
114
135
  @property
115
- @pulumi.getter(name="localFiles")
116
- def local_files(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
136
+ @pulumi.getter
137
+ def files(self) -> Optional[Any]:
117
138
  """
118
- The list of local file paths used to build the Application Source.
139
+ The list of tuples, where values in each tuple are the local filesystem path and the path the file should be placed in the Application Source. If list is of strings, then basenames will be used for tuples.
119
140
  """
120
- return pulumi.get(self, "local_files")
141
+ return pulumi.get(self, "files")
121
142
 
122
- @local_files.setter
123
- def local_files(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
124
- pulumi.set(self, "local_files", value)
143
+ @files.setter
144
+ def files(self, value: Optional[Any]):
145
+ pulumi.set(self, "files", value)
146
+
147
+ @property
148
+ @pulumi.getter(name="folderPath")
149
+ def folder_path(self) -> Optional[pulumi.Input[str]]:
150
+ """
151
+ The path to a folder containing files to build the Application Source. Each file in the folder is uploaded under path relative to a folder path.
152
+ """
153
+ return pulumi.get(self, "folder_path")
154
+
155
+ @folder_path.setter
156
+ def folder_path(self, value: Optional[pulumi.Input[str]]):
157
+ pulumi.set(self, "folder_path", value)
125
158
 
126
159
  @property
127
160
  @pulumi.getter
@@ -177,7 +210,8 @@ class ApplicationSource(pulumi.CustomResource):
177
210
  def __init__(__self__,
178
211
  resource_name: str,
179
212
  opts: Optional[pulumi.ResourceOptions] = None,
180
- local_files: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
213
+ files: Optional[Any] = None,
214
+ folder_path: Optional[pulumi.Input[str]] = None,
181
215
  name: Optional[pulumi.Input[str]] = None,
182
216
  resource_settings: Optional[pulumi.Input[Union['ApplicationSourceResourceSettingsArgs', 'ApplicationSourceResourceSettingsArgsDict']]] = None,
183
217
  runtime_parameter_values: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApplicationSourceRuntimeParameterValueArgs', 'ApplicationSourceRuntimeParameterValueArgsDict']]]]] = None,
@@ -191,9 +225,9 @@ class ApplicationSource(pulumi.CustomResource):
191
225
  import pulumi
192
226
  import pulumi_datarobot as datarobot
193
227
 
194
- example = datarobot.ApplicationSource("example", local_files=[
195
- "start-app.sh",
196
- "streamlit-app.py",
228
+ example = datarobot.ApplicationSource("example", files=[
229
+ ["start-app.sh"],
230
+ ["streamlit-app.py"],
197
231
  ])
198
232
  pulumi.export("datarobotApplicationSourceId", example.id)
199
233
  pulumi.export("datarobotApplicationSourceVersionId", example.version_id)
@@ -201,7 +235,8 @@ class ApplicationSource(pulumi.CustomResource):
201
235
 
202
236
  :param str resource_name: The name of the resource.
203
237
  :param pulumi.ResourceOptions opts: Options for the resource.
204
- :param pulumi.Input[Sequence[pulumi.Input[str]]] local_files: The list of local file paths used to build the Application Source.
238
+ :param Any files: The list of tuples, where values in each tuple are the local filesystem path and the path the file should be placed in the Application Source. If list is of strings, then basenames will be used for tuples.
239
+ :param pulumi.Input[str] folder_path: The path to a folder containing files to build the Application Source. Each file in the folder is uploaded under path relative to a folder path.
205
240
  :param pulumi.Input[str] name: The name of the Application Source.
206
241
  :param pulumi.Input[Union['ApplicationSourceResourceSettingsArgs', 'ApplicationSourceResourceSettingsArgsDict']] resource_settings: The resource settings for the Application Source.
207
242
  :param pulumi.Input[Sequence[pulumi.Input[Union['ApplicationSourceRuntimeParameterValueArgs', 'ApplicationSourceRuntimeParameterValueArgsDict']]]] runtime_parameter_values: The runtime parameter values for the Application Source.
@@ -210,7 +245,7 @@ class ApplicationSource(pulumi.CustomResource):
210
245
  @overload
211
246
  def __init__(__self__,
212
247
  resource_name: str,
213
- args: ApplicationSourceArgs,
248
+ args: Optional[ApplicationSourceArgs] = None,
214
249
  opts: Optional[pulumi.ResourceOptions] = None):
215
250
  """
216
251
  Application Source
@@ -221,9 +256,9 @@ class ApplicationSource(pulumi.CustomResource):
221
256
  import pulumi
222
257
  import pulumi_datarobot as datarobot
223
258
 
224
- example = datarobot.ApplicationSource("example", local_files=[
225
- "start-app.sh",
226
- "streamlit-app.py",
259
+ example = datarobot.ApplicationSource("example", files=[
260
+ ["start-app.sh"],
261
+ ["streamlit-app.py"],
227
262
  ])
228
263
  pulumi.export("datarobotApplicationSourceId", example.id)
229
264
  pulumi.export("datarobotApplicationSourceVersionId", example.version_id)
@@ -244,7 +279,8 @@ class ApplicationSource(pulumi.CustomResource):
244
279
  def _internal_init(__self__,
245
280
  resource_name: str,
246
281
  opts: Optional[pulumi.ResourceOptions] = None,
247
- local_files: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
282
+ files: Optional[Any] = None,
283
+ folder_path: Optional[pulumi.Input[str]] = None,
248
284
  name: Optional[pulumi.Input[str]] = None,
249
285
  resource_settings: Optional[pulumi.Input[Union['ApplicationSourceResourceSettingsArgs', 'ApplicationSourceResourceSettingsArgsDict']]] = None,
250
286
  runtime_parameter_values: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApplicationSourceRuntimeParameterValueArgs', 'ApplicationSourceRuntimeParameterValueArgsDict']]]]] = None,
@@ -257,9 +293,8 @@ class ApplicationSource(pulumi.CustomResource):
257
293
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
258
294
  __props__ = ApplicationSourceArgs.__new__(ApplicationSourceArgs)
259
295
 
260
- if local_files is None and not opts.urn:
261
- raise TypeError("Missing required property 'local_files'")
262
- __props__.__dict__["local_files"] = local_files
296
+ __props__.__dict__["files"] = files
297
+ __props__.__dict__["folder_path"] = folder_path
263
298
  __props__.__dict__["name"] = name
264
299
  __props__.__dict__["resource_settings"] = resource_settings
265
300
  __props__.__dict__["runtime_parameter_values"] = runtime_parameter_values
@@ -274,7 +309,8 @@ class ApplicationSource(pulumi.CustomResource):
274
309
  def get(resource_name: str,
275
310
  id: pulumi.Input[str],
276
311
  opts: Optional[pulumi.ResourceOptions] = None,
277
- local_files: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
312
+ files: Optional[Any] = None,
313
+ folder_path: Optional[pulumi.Input[str]] = None,
278
314
  name: Optional[pulumi.Input[str]] = None,
279
315
  resource_settings: Optional[pulumi.Input[Union['ApplicationSourceResourceSettingsArgs', 'ApplicationSourceResourceSettingsArgsDict']]] = None,
280
316
  runtime_parameter_values: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApplicationSourceRuntimeParameterValueArgs', 'ApplicationSourceRuntimeParameterValueArgsDict']]]]] = None,
@@ -286,7 +322,8 @@ class ApplicationSource(pulumi.CustomResource):
286
322
  :param str resource_name: The unique name of the resulting resource.
287
323
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
288
324
  :param pulumi.ResourceOptions opts: Options for the resource.
289
- :param pulumi.Input[Sequence[pulumi.Input[str]]] local_files: The list of local file paths used to build the Application Source.
325
+ :param Any files: The list of tuples, where values in each tuple are the local filesystem path and the path the file should be placed in the Application Source. If list is of strings, then basenames will be used for tuples.
326
+ :param pulumi.Input[str] folder_path: The path to a folder containing files to build the Application Source. Each file in the folder is uploaded under path relative to a folder path.
290
327
  :param pulumi.Input[str] name: The name of the Application Source.
291
328
  :param pulumi.Input[Union['ApplicationSourceResourceSettingsArgs', 'ApplicationSourceResourceSettingsArgsDict']] resource_settings: The resource settings for the Application Source.
292
329
  :param pulumi.Input[Sequence[pulumi.Input[Union['ApplicationSourceRuntimeParameterValueArgs', 'ApplicationSourceRuntimeParameterValueArgsDict']]]] runtime_parameter_values: The runtime parameter values for the Application Source.
@@ -296,7 +333,8 @@ class ApplicationSource(pulumi.CustomResource):
296
333
 
297
334
  __props__ = _ApplicationSourceState.__new__(_ApplicationSourceState)
298
335
 
299
- __props__.__dict__["local_files"] = local_files
336
+ __props__.__dict__["files"] = files
337
+ __props__.__dict__["folder_path"] = folder_path
300
338
  __props__.__dict__["name"] = name
301
339
  __props__.__dict__["resource_settings"] = resource_settings
302
340
  __props__.__dict__["runtime_parameter_values"] = runtime_parameter_values
@@ -304,12 +342,20 @@ class ApplicationSource(pulumi.CustomResource):
304
342
  return ApplicationSource(resource_name, opts=opts, __props__=__props__)
305
343
 
306
344
  @property
307
- @pulumi.getter(name="localFiles")
308
- def local_files(self) -> pulumi.Output[Sequence[str]]:
345
+ @pulumi.getter
346
+ def files(self) -> pulumi.Output[Optional[Any]]:
347
+ """
348
+ The list of tuples, where values in each tuple are the local filesystem path and the path the file should be placed in the Application Source. If list is of strings, then basenames will be used for tuples.
349
+ """
350
+ return pulumi.get(self, "files")
351
+
352
+ @property
353
+ @pulumi.getter(name="folderPath")
354
+ def folder_path(self) -> pulumi.Output[Optional[str]]:
309
355
  """
310
- The list of local file paths used to build the Application Source.
356
+ The path to a folder containing files to build the Application Source. Each file in the folder is uploaded under path relative to a folder path.
311
357
  """
312
- return pulumi.get(self, "local_files")
358
+ return pulumi.get(self, "folder_path")
313
359
 
314
360
  @property
315
361
  @pulumi.getter
@@ -205,9 +205,9 @@ class CustomApplication(pulumi.CustomResource):
205
205
  import pulumi
206
206
  import pulumi_datarobot as datarobot
207
207
 
208
- example_application_source = datarobot.ApplicationSource("exampleApplicationSource", local_files=[
209
- "start-app.sh",
210
- "streamlit-app.py",
208
+ example_application_source = datarobot.ApplicationSource("exampleApplicationSource", files=[
209
+ ["start-app.sh"],
210
+ ["streamlit-app.py"],
211
211
  ])
212
212
  example_custom_application = datarobot.CustomApplication("exampleCustomApplication",
213
213
  source_version_id=example_application_source.version_id,
@@ -241,9 +241,9 @@ class CustomApplication(pulumi.CustomResource):
241
241
  import pulumi
242
242
  import pulumi_datarobot as datarobot
243
243
 
244
- example_application_source = datarobot.ApplicationSource("exampleApplicationSource", local_files=[
245
- "start-app.sh",
246
- "streamlit-app.py",
244
+ example_application_source = datarobot.ApplicationSource("exampleApplicationSource", files=[
245
+ ["start-app.sh"],
246
+ ["streamlit-app.py"],
247
247
  ])
248
248
  example_custom_application = datarobot.CustomApplication("exampleCustomApplication",
249
249
  source_version_id=example_application_source.version_id,