@@ -32,67 +32,11 @@ variable "compartment_ocid" {
3232variable "project_ocid" {
3333}
3434
35- variable "model_display_name" {
36- default = " terraform-testing-model"
37- }
38-
39- variable "model_description" {
40- default = " Model for terraform testing"
41- }
42-
43- variable "artifact_content_length" {
44- }
45-
46- variable "model_artifact" {
47- }
48-
49- variable "content_disposition" {
50- }
51-
5235variable "shape" {
5336}
5437
55- variable "model_defined_tags" {
56- }
57-
58- variable "model_freeform_tag" {
59- }
60-
61- variable "model_state" {
62- }
63-
38+ variable "model_id" {
6439
65- # A model resource configurations for creating a new model
66- resource "oci_datascience_model" "tf_model" {
67- # Required
68- artifact_content_length = var. artifact_content_length
69- model_artifact = var. model_artifact
70- compartment_id = var. compartment_ocid
71- project_id = var. project_ocid
72- # Optional
73- artifact_content_disposition = var. content_disposition
74- defined_tags = var. model_defined_tags
75- description = var. model_description
76- display_name = var. model_display_name
77- freeform_tags = var. model_freeform_tag
78- }
79-
80- # A data resource for the list of models in a specified compartment
81- data "oci_datascience_models" "tf_models" {
82- # Required
83- compartment_id = var. compartment_ocid
84- # Optional
85- created_by = var. user_ocid
86- display_name = oci_datascience_model. tf_model . display_name
87- id = oci_datascience_model. tf_model . id
88- project_id = var. project_ocid
89- state = var. model_state
90- }
91-
92- # The data source for a list of model deployment shapes
93- data "oci_datascience_model_deployment_shapes" "tf_model_deployment_shapes" {
94- # Required
95- compartment_id = var. compartment_ocid
9640}
9741
9842variable "model_deployment_display_name" {
@@ -143,6 +87,40 @@ variable "model_deployment_model_configuration_details_instance_configuration_mo
14387}
14488
14589variable "model_deployment_state" {
90+ default = " ACTIVE"
91+ }
92+
93+ # these variables for BYOC option
94+ variable "model_byoc_id" {
95+ }
96+
97+ variable "model_deployment_byoc_display_name" {
98+ default = " terraform-testing-model-deployment_byoc"
99+ }
100+
101+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_environment_configuration_type" {
102+ default = " OCIR_CONTAINER"
103+ }
104+
105+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_cmd" {
106+ }
107+
108+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_entrypoint" {
109+ }
110+
111+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_environment_variables" {
112+ }
113+
114+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_health_check_port" {
115+ }
116+
117+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_image" {
118+ }
119+
120+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_image_digest" {
121+ }
122+
123+ variable "model_deployment_model_deployment_configuration_details_environment_configuration_details_server_port" {
146124}
147125
148126# A model deployment resource configurations for creating a new model deployment
@@ -166,7 +144,7 @@ resource "oci_datascience_model_deployment" "tf_model_deployment" {
166144 ocpus = var. model_deployment_model_configuration_details_instance_configuration_model_deployment_instance_shape_config_details_ocpus
167145 }
168146 }
169- model_id = oci_datascience_model . tf_model . id
147+ model_id = var . model_id
170148
171149 # Optional
172150 bandwidth_mbps = var. model_deployment_model_deployment_configuration_details_model_configuration_details_bandwidth_mbps
@@ -195,10 +173,81 @@ resource "oci_datascience_model_deployment" "tf_model_deployment" {
195173 }
196174 }
197175 # Optional
198- defined_tags = var. model_deployment_defined_tags
176+ // defined_tags = var.model_deployment_defined_tags
199177 description = var. model_deployment_description
200178 display_name = var. model_deployment_display_name
201- freeform_tags = var. model_deployment_freeform_tag
179+ // freeform_tags = var.model_deployment_freeform_tag
180+ }
181+
182+
183+ resource "oci_datascience_model_deployment" "tf_model_deployment_byoc" {
184+ # Required
185+ compartment_id = var. compartment_ocid
186+ model_deployment_configuration_details {
187+ # Required
188+ deployment_type = var. model_deployment_model_deployment_configuration_details_deployment_type
189+ model_configuration_details {
190+ # Required
191+ instance_configuration {
192+ # Required
193+ instance_shape_name = var. shape
194+
195+ # Optional
196+ model_deployment_instance_shape_config_details {
197+
198+ # Optional
199+ memory_in_gbs = var. model_deployment_model_configuration_details_instance_configuration_model_deployment_instance_shape_config_details_memory_in_gbs
200+ ocpus = var. model_deployment_model_configuration_details_instance_configuration_model_deployment_instance_shape_config_details_ocpus
201+ }
202+ }
203+ model_id = var. model_byoc_id
204+
205+ # Optional
206+ bandwidth_mbps = var. model_deployment_model_deployment_configuration_details_model_configuration_details_bandwidth_mbps
207+ scaling_policy {
208+ # Required
209+ instance_count = var. model_deployment_model_deployment_configuration_details_model_configuration_details_scaling_policy_instance_count
210+ policy_type = var. model_deployment_model_deployment_configuration_details_model_configuration_details_scaling_policy_policy_type
211+ }
212+ }
213+
214+ # Optional for BYOC
215+ environment_configuration_details {
216+ # Required
217+ environment_configuration_type = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_environment_configuration_type
218+
219+ # Optional
220+ cmd = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_cmd
221+ entrypoint = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_entrypoint
222+ environment_variables = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_environment_variables
223+ health_check_port = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_health_check_port
224+ image = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_image
225+ image_digest = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_image_digest
226+ server_port = var. model_deployment_model_deployment_configuration_details_environment_configuration_details_server_port
227+ }
228+ }
229+ project_id = var. project_ocid
230+
231+ # Optional
232+ category_log_details {
233+
234+ # Optional
235+ access {
236+ # Required
237+ log_group_id = var. log_group_id
238+ log_id = var. access_log_id
239+ }
240+ predict {
241+ # Required
242+ log_group_id = var. log_group_id
243+ log_id = var. predict_log_id
244+ }
245+ }
246+ # Optional
247+ // defined_tags = var.model_deployment_defined_tags
248+ description = var. model_deployment_description
249+ display_name = var. model_deployment_byoc_display_name
250+ // freeform_tags = var.model_deployment_freeform_tag
202251}
203252
204253# The data resource for a list of model deployments in a specified compartment
0 commit comments