Skip to content

Commit

Permalink
GCLOUD2-17301 - resource_gcore_inference_deployment added (#180)
Browse files Browse the repository at this point in the history
  • Loading branch information
alexk53 authored Feb 7, 2025
1 parent becf73d commit 96a8008
Show file tree
Hide file tree
Showing 23 changed files with 1,715 additions and 88 deletions.
36 changes: 36 additions & 0 deletions docs/data-sources/inference_flavor.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "gcore_inference_flavor Data Source - terraform-provider-gcore"
subcategory: ""
description: |-
Represent Inference flavor.
---

# gcore_inference_flavor (Data Source)

Represent Inference flavor.



<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `name` (String)

### Optional

- `project_id` (Number)
- `project_name` (String)

### Read-Only

- `cpu` (Number)
- `gpu` (Number)
- `gpu_compute_capability` (String)
- `gpu_memory` (Number)
- `gpu_model` (String)
- `id` (String) The ID of this resource.
- `is_gpu_shared` (Boolean)
- `memory` (Number)
2 changes: 1 addition & 1 deletion docs/resources/ddos_protection.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ Read-Only:
- `default` (String)
- `description` (String) Field description
- `field_type` (String)
- `id` (Number) The ID of this resource.
- `id` (Number)
- `name` (String)
- `required` (Boolean)
- `validation_schema` (String) Json schema to validate field_values
Expand Down
224 changes: 224 additions & 0 deletions docs/resources/inference_deployment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,224 @@
---
page_title: "gcore_inference_deployment Resource - terraform-provider-gcore"
subcategory: ""
description: |-
Represent inference deployment
---

# gcore_inference_deployment (Resource)

Represent inference deployment

## Example Usage

##### Prerequisite

```terraform
provider gcore {
permanent_api_token = "251$d3361.............1b35f26d8"
}
data "gcore_project" "project" {
name = "Default"
}
data "gcore_region" "region" {
name = "Luxembourg-2"
}
```

### Basic example

#### Creating inference deployment

```terraform
resource "gcore_inference_deployment" "inf" {
project_id = data.gcore_project.project.id
name = "my-inference-deployment"
image = "nginx:latest"
listening_port = 80
flavor_name = "inference-1vcpu-1gib"
timeout = 60
containers {
region_id = data.gcore_region.region.id
cooldown_period = 60
scale_min = 2
scale_max = 2
triggers_cpu_threshold = 80
}
liveness_probe {
enabled = true
failure_threshold = 3
initial_delay_seconds = 10
period_seconds = 10
timeout_seconds = 1
success_threshold = 1
http_get_port = 80
http_get_headers = {
User-Agent = "my user agent"
}
http_get_host = "localhost"
http_get_path = "/"
http_get_schema = "HTTPS"
}
readiness_probe {
enabled = false
}
startup_probe {
enabled = false
}
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `containers` (Block List, Min: 1) (see [below for nested schema](#nestedblock--containers))
- `flavor_name` (String)
- `image` (String)
- `listening_port` (Number)
- `name` (String)
- `timeout` (Number)

### Optional

- `auth_enabled` (Boolean)
- `command` (String)
- `credentials_name` (String)
- `description` (String)
- `envs` (Map of String)
- `liveness_probe` (Block List, Max: 1) (see [below for nested schema](#nestedblock--liveness_probe))
- `logging` (Block List, Max: 1) (see [below for nested schema](#nestedblock--logging))
- `project_id` (Number)
- `project_name` (String)
- `readiness_probe` (Block List, Max: 1) (see [below for nested schema](#nestedblock--readiness_probe))
- `startup_probe` (Block List, Max: 1) (see [below for nested schema](#nestedblock--startup_probe))

### Read-Only

- `address` (String)
- `created_at` (String) Datetime when the inference deployment was created. The format is 2025-12-28T19:14:44.180394
- `id` (String) The ID of this resource.
- `status` (String)

<a id="nestedblock--containers"></a>
### Nested Schema for `containers`

Required:

- `cooldown_period` (Number)
- `region_id` (Number)
- `scale_max` (Number)
- `scale_min` (Number)

Optional:

- `triggers_cpu_threshold` (Number)
- `triggers_gpu_memory_threshold` (Number)
- `triggers_gpu_utilization_threshold` (Number)
- `triggers_http_rate` (Number)
- `triggers_http_window` (Number)
- `triggers_memory_threshold` (Number)

Read-Only:

- `ready_containers` (Number)
- `total_containers` (Number)


<a id="nestedblock--liveness_probe"></a>
### Nested Schema for `liveness_probe`

Required:

- `enabled` (Boolean)

Optional:

- `exec_command` (String)
- `failure_threshold` (Number)
- `http_get_headers` (Map of String)
- `http_get_host` (String)
- `http_get_path` (String)
- `http_get_port` (Number)
- `http_get_schema` (String)
- `initial_delay_seconds` (Number)
- `period_seconds` (Number)
- `success_threshold` (Number)
- `tcp_socket_port` (Number)
- `timeout_seconds` (Number)


<a id="nestedblock--logging"></a>
### Nested Schema for `logging`

Optional:

- `destination_region_id` (Number)
- `enabled` (Boolean)
- `retention_policy_period` (Number)
- `topic_name` (String)


<a id="nestedblock--readiness_probe"></a>
### Nested Schema for `readiness_probe`

Required:

- `enabled` (Boolean)

Optional:

- `exec_command` (String)
- `failure_threshold` (Number)
- `http_get_headers` (Map of String)
- `http_get_host` (String)
- `http_get_path` (String)
- `http_get_port` (Number)
- `http_get_schema` (String)
- `initial_delay_seconds` (Number)
- `period_seconds` (Number)
- `success_threshold` (Number)
- `tcp_socket_port` (Number)
- `timeout_seconds` (Number)


<a id="nestedblock--startup_probe"></a>
### Nested Schema for `startup_probe`

Required:

- `enabled` (Boolean)

Optional:

- `exec_command` (String)
- `failure_threshold` (Number)
- `http_get_headers` (Map of String)
- `http_get_host` (String)
- `http_get_path` (String)
- `http_get_port` (Number)
- `http_get_schema` (String)
- `initial_delay_seconds` (Number)
- `period_seconds` (Number)
- `success_threshold` (Number)
- `tcp_socket_port` (Number)
- `timeout_seconds` (Number)





## Import

Import is supported using the following syntax:

```shell
# import using <project_id>:<inference_deployment_name> format
terraform import gcore_inference_deployment.inf1 1:my-first-inference
```

5 changes: 1 addition & 4 deletions docs/resources/instance.md
Original file line number Diff line number Diff line change
Expand Up @@ -258,16 +258,13 @@ Optional:
- `attachment_tag` (String)
- `boot_index` (Number) If boot_index==0 volumes can not detached
- `delete_on_termination` (Boolean)
- `id` (String)
- `image_id` (String)
- `name` (String)
- `size` (Number)
- `type_name` (String)
- `volume_id` (String)

Read-Only:

- `id` (String) The ID of this resource.


<a id="nestedatt--security_group"></a>
### Nested Schema for `security_group`
Expand Down
2 changes: 1 addition & 1 deletion docs/resources/instancev2.md
Original file line number Diff line number Diff line change
Expand Up @@ -497,7 +497,7 @@ Read-Only:

- `attachment_tag` (String) Tag for the volume attachment
- `delete_on_termination` (Boolean) Delete volume on termination
- `id` (String) The ID of this resource.
- `id` (String)
- `image_id` (String) Image ID for the volume
- `name` (String) Name of the volume
- `size` (Number) Size of the volume in GiB
Expand Down
2 changes: 1 addition & 1 deletion docs/resources/k8sv2.md
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ Optional:
Read-Only:

- `created_at` (String)
- `id` (String) The ID of this resource.
- `id` (String)
- `updated_at` (String)


Expand Down
7 changes: 5 additions & 2 deletions docs/resources/lifecyclepolicy.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ Optional:

Read-Only:

- `id` (String) The ID of this resource.
- `id` (String)
- `type` (String)

<a id="nestedblock--schedule--cron"></a>
Expand Down Expand Up @@ -127,9 +127,12 @@ Optional:
<a id="nestedblock--volume"></a>
### Nested Schema for `volume`

Required:

- `id` (String)

Read-Only:

- `id` (String) The ID of this resource.
- `name` (String)

## Import
Expand Down
2 changes: 1 addition & 1 deletion docs/resources/loadbalancer.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ Optional:

Read-Only:

- `id` (String) The ID of this resource.
- `id` (String)


<a id="nestedblock--timeouts"></a>
Expand Down
51 changes: 51 additions & 0 deletions docs/resources/registry_credential.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "gcore_registry_credential Resource - terraform-provider-gcore"
subcategory: ""
description: |-
Represent inference registry credential
---

# gcore_registry_credential (Resource)

Represent inference registry credential

## Example Usage

```terraform
resource "gcore_registry_credential" "creds" {
project_id = 184550
name = "docker-io"
username = "username"
password = "passwd"
registry_url = "docker.io"
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `name` (String)
- `password` (String)
- `registry_url` (String)
- `username` (String)

### Optional

- `project_id` (Number)
- `project_name` (String)

### Read-Only

- `id` (String) The ID of this resource.

## Import

Import is supported using the following syntax:

```shell
# import using <project_id>:<credentials_name> format
terraform import gcore_registry_credential.dockerio 1:docekrio
```
2 changes: 1 addition & 1 deletion docs/resources/securitygroup.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ Optional:
Read-Only:

- `created_at` (String)
- `id` (String) The ID of this resource.
- `id` (String)
- `updated_at` (String)


Expand Down
Loading

0 comments on commit 96a8008

Please sign in to comment.