Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
de8857b1d5 | ||
| 782afe70da | |||
|
|
d6b4752cc7 | ||
| 36879efd58 | |||
|
|
040af43607 |
17
CHANGELOG.md
17
CHANGELOG.md
@@ -1,5 +1,16 @@
|
|||||||
## Version 4.6.3
|
## Version 4.7.3
|
||||||
|
|
||||||
### Features
|
### Добавлено
|
||||||
- Added the weight field in resources cloudbroker/kvmvm, cloudapi/kvmvm
|
|
||||||
|
|
||||||
|
#### kvmvm
|
||||||
|
| Идентификатор<br>задачи | Описание |
|
||||||
|
| --- | --- |
|
||||||
|
| BATF-648 | Обязательные поля `net_type, net_id` в опциональный блок `libvirt_settings` в resource `decort_cb_kvmvm` в cloudbroker/kvmvm |
|
||||||
|
| BATF-648 | Опциональное поле `mtu` в опциональный блок `network` в resources `decort_cb_kvmvm, decort_kvmvm` в cloudbroker/kvmvm и cloudapi/kvmvm |
|
||||||
|
|
||||||
|
### Удалено
|
||||||
|
|
||||||
|
#### kvmvm
|
||||||
|
| Идентификатор<br>задачи | Описание |
|
||||||
|
| --- | --- |
|
||||||
|
| BATF-648 | Обязательное поле `mac` в опциональном блок `libvirt_settings` в resource `decort_cb_kvmvm` в cloudbroker/kvmvm |
|
||||||
2
LICENSE
2
LICENSE
@@ -186,7 +186,7 @@
|
|||||||
same "printed page" as the copyright notice for easier
|
same "printed page" as the copyright notice for easier
|
||||||
identification within third-party archives.
|
identification within third-party archives.
|
||||||
|
|
||||||
Copyright [yyyy] [name of copyright owner]
|
Copyright 2022 Basis LTD
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
|
|||||||
2
Makefile
2
Makefile
@@ -7,7 +7,7 @@ ZIPDIR = ./zip
|
|||||||
BINARY=${NAME}
|
BINARY=${NAME}
|
||||||
WORKPATH= ./examples/terraform.d/plugins/${HOSTNAME}/${NAMESPACE}/${NAMESPACE}/${VERSION}/${OS_ARCH}
|
WORKPATH= ./examples/terraform.d/plugins/${HOSTNAME}/${NAMESPACE}/${NAMESPACE}/${VERSION}/${OS_ARCH}
|
||||||
MAINPATH = ./cmd/decort/
|
MAINPATH = ./cmd/decort/
|
||||||
VERSION=4.6.3
|
VERSION=4.7.3
|
||||||
OS_ARCH=$(shell go env GOHOSTOS)_$(shell go env GOHOSTARCH)
|
OS_ARCH=$(shell go env GOHOSTOS)_$(shell go env GOHOSTARCH)
|
||||||
|
|
||||||
FILES = ${BINARY}_${VERSION}_darwin_amd64\
|
FILES = ${BINARY}_${VERSION}_darwin_amd64\
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ Terraform provider для платформы Digital Energy Cloud Orchestration
|
|||||||
|
|
||||||
| Версия DECORT API | Версия провайдера Terraform |
|
| Версия DECORT API | Версия провайдера Terraform |
|
||||||
| ------ | ------ |
|
| ------ | ------ |
|
||||||
|
| 4.1.0 | 4.7.x |
|
||||||
| 4.0.0 | 4.6.x |
|
| 4.0.0 | 4.6.x |
|
||||||
| 3.8.9 | 4.5.x |
|
| 3.8.9 | 4.5.x |
|
||||||
| 3.8.8 | 4.4.x |
|
| 3.8.8 | 4.4.x |
|
||||||
@@ -30,8 +31,10 @@ Terraform provider для платформы Digital Energy Cloud Orchestration
|
|||||||
|
|
||||||
- Режим пользователя:
|
- Режим пользователя:
|
||||||
- Работа с accounts,
|
- Работа с accounts,
|
||||||
|
- Работа с audit,
|
||||||
- Работа с bservice,
|
- Работа с bservice,
|
||||||
- Работа с disks,
|
- Работа с disks,
|
||||||
|
- Работа с dpdk,
|
||||||
- Работа с extnets,
|
- Работа с extnets,
|
||||||
- Работа с flipgroups,
|
- Работа с flipgroups,
|
||||||
- Работа с image,
|
- Работа с image,
|
||||||
@@ -47,8 +50,9 @@ Terraform provider для платформы Digital Energy Cloud Orchestration
|
|||||||
|
|
||||||
- Режим администратора:
|
- Режим администратора:
|
||||||
- Работа с accounts,
|
- Работа с accounts,
|
||||||
- Работа с audits,
|
- Работа с audit,
|
||||||
- Работа с disks,
|
- Работа с disks,
|
||||||
|
- Работа с dpdk,
|
||||||
- Работа с extnets,
|
- Работа с extnets,
|
||||||
- Работа с flipgroups,
|
- Работа с flipgroups,
|
||||||
- Работа с grids,
|
- Работа с grids,
|
||||||
|
|||||||
168
README_EN.md
168
README_EN.md
@@ -1,168 +0,0 @@
|
|||||||
# terraform-provider-decort
|
|
||||||
|
|
||||||
Terraform provider for Digital Energy Cloud Orchestration Technology (DECORT) platform
|
|
||||||
|
|
||||||
## Mapping of platform versions with provider versions
|
|
||||||
|
|
||||||
| DECORT API version | Terraform provider version |
|
|
||||||
| ------ | ------ |
|
|
||||||
| 3.8.5 | 3.4.x |
|
|
||||||
| 3.8.0 - 3.8.4 | 3.3.1 |
|
|
||||||
| 3.7.x | rc-1.25 |
|
|
||||||
| 3.6.x | rc-1.10 |
|
|
||||||
| до 3.6.0 | [terraform-provider-decs](https://github.com/rudecs/terraform-provider-decs) |
|
|
||||||
|
|
||||||
## Working modes
|
|
||||||
|
|
||||||
The provider support two working modes:
|
|
||||||
|
|
||||||
- User mode,
|
|
||||||
- Administator mode.
|
|
||||||
Use flag DECORT_ADMIN_MODE for swithcing beetwen modes.
|
|
||||||
See user guide at https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
|
||||||
|
|
||||||
## Features
|
|
||||||
|
|
||||||
- Work with Compute instances,
|
|
||||||
- Work with disks,
|
|
||||||
- Work with k8s,
|
|
||||||
- Work with image,
|
|
||||||
- Work with reource groups,
|
|
||||||
- Work with VINS,
|
|
||||||
- Work with pfw,
|
|
||||||
- Work with accounts,
|
|
||||||
- Work with snapshots,
|
|
||||||
- Work with pcidevice.
|
|
||||||
- Work with sep,
|
|
||||||
- Work with vgpu,
|
|
||||||
- Work with bservice,
|
|
||||||
- Work with extnets,
|
|
||||||
- Work with locations,
|
|
||||||
- Work with load balancers.
|
|
||||||
|
|
||||||
This provider supports Import operations on pre-existing resources.
|
|
||||||
|
|
||||||
See user guide at https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
|
||||||
|
|
||||||
## Get Started
|
|
||||||
|
|
||||||
Two ways for starting:
|
|
||||||
|
|
||||||
1. Installing via binary packages
|
|
||||||
2. Manual installing
|
|
||||||
|
|
||||||
### Installing via binary packages
|
|
||||||
|
|
||||||
1. Download and install terraform: https://learn.hashicorp.com/tutorials/terraform/install-cli?in=terraform/aws-get-started
|
|
||||||
2. Create a file `main.tf` and add to it next section.
|
|
||||||
|
|
||||||
```terraform
|
|
||||||
provider "decort" {
|
|
||||||
authenticator = "decs3o"
|
|
||||||
#controller_url = <DECORT_CONTROLLER_URL>
|
|
||||||
controller_url = "https://ds1.digitalenergy.online"
|
|
||||||
#oauth2_url = <DECORT_SSO_URL>
|
|
||||||
oauth2_url = "https://sso.digitalenergy.online"
|
|
||||||
allow_unverified_ssl = true
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Execute next command
|
|
||||||
|
|
||||||
```
|
|
||||||
terraform init
|
|
||||||
```
|
|
||||||
|
|
||||||
The Provider will automatically install on your computer from the terrafrom registry.
|
|
||||||
|
|
||||||
### Manual installing
|
|
||||||
|
|
||||||
1. Download and install Go Programming Language: https://go.dev/dl/
|
|
||||||
2. Download and install terraform: https://learn.hashicorp.com/tutorials/terraform/install-cli?in=terraform/aws-get-started
|
|
||||||
3. Clone provider's repo:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/rudecs/terraform-provider-decort.git
|
|
||||||
```
|
|
||||||
|
|
||||||
4. Change directory to clone provider's and execute next command
|
|
||||||
|
|
||||||
```bash
|
|
||||||
go build -o terraform-provider-decort
|
|
||||||
```
|
|
||||||
|
|
||||||
If you have experience with _makefile_, you can change `Makefile`'s paramters and execute next command
|
|
||||||
|
|
||||||
```bash
|
|
||||||
make build
|
|
||||||
```
|
|
||||||
|
|
||||||
5. Now move compilled file to:
|
|
||||||
Linux:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
~/.terraform.d/plugins/${host_name}/${namespace}/${type}/${version}/${target}
|
|
||||||
```
|
|
||||||
|
|
||||||
Windows:
|
|
||||||
|
|
||||||
```powershell
|
|
||||||
%APPDATA%\terraform.d\plugins\${host_name}/${namespace}/${type}/${version}/${target}
|
|
||||||
```
|
|
||||||
|
|
||||||
NOTE: for Windows OS `%APP_DATA%` is a cataloge, where will place terraform files.
|
|
||||||
Example:
|
|
||||||
|
|
||||||
- host_name - digitalenergy.online
|
|
||||||
- namespace - decort
|
|
||||||
- type - decort
|
|
||||||
- version - 1.2
|
|
||||||
- target - windows_amd64
|
|
||||||
|
|
||||||
6. After all, create a file `main.tf`.
|
|
||||||
7. Add to the file next code section
|
|
||||||
|
|
||||||
```terraform
|
|
||||||
terraform {
|
|
||||||
required_providers {
|
|
||||||
decort = {
|
|
||||||
version = "1.2"
|
|
||||||
source = "digitalenergy.online/decort/decort"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
`version`- field for provider's version
|
|
||||||
Required
|
|
||||||
String
|
|
||||||
Note: Versions in code section and in a repository must be equal!
|
|
||||||
|
|
||||||
`source` - path to repository with provider's version
|
|
||||||
|
|
||||||
```bash
|
|
||||||
${host_name}/${namespace}/${type}
|
|
||||||
```
|
|
||||||
|
|
||||||
NOTE: all paramters must be equal to the repository path!
|
|
||||||
|
|
||||||
8. Execute command in your terminal
|
|
||||||
|
|
||||||
```bash
|
|
||||||
terraform init
|
|
||||||
```
|
|
||||||
|
|
||||||
9. If everything all right - you got green message in your terminal!
|
|
||||||
|
|
||||||
More details about the provider's building process: https://learn.hashicorp.com/tutorials/terraform/provider-use?in=terraform/providers
|
|
||||||
|
|
||||||
## Examples and Samples
|
|
||||||
|
|
||||||
- Examples: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
|
||||||
- Samples: see in repository `samples`
|
|
||||||
|
|
||||||
Terraform schemas in:
|
|
||||||
|
|
||||||
- See in repository `docs`
|
|
||||||
|
|
||||||
Good work!
|
|
||||||
@@ -27,6 +27,7 @@ description: |-
|
|||||||
- `name` (String) Filter by name
|
- `name` (String) Filter by name
|
||||||
- `page` (Number) Page number
|
- `page` (Number) Page number
|
||||||
- `size` (Number) Page size
|
- `size` (Number) Page size
|
||||||
|
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
- `vins_id` (Number) Filter by ViNS ID
|
- `vins_id` (Number) Filter by ViNS ID
|
||||||
- `vins_name` (String) Filter by ViNS name
|
- `vins_name` (String) Filter by ViNS name
|
||||||
|
|||||||
48
docs/data-sources/audit.md
Normal file
48
docs/data-sources/audit.md
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_audit Data Source - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_audit (Data Source)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Required
|
||||||
|
|
||||||
|
- `audit_guid` (String) audit guid
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `args` (String)
|
||||||
|
- `call` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
- `kwargs` (String)
|
||||||
|
- `remote_addr` (String)
|
||||||
|
- `responsetime` (Number)
|
||||||
|
- `result` (String)
|
||||||
|
- `status_code` (Number)
|
||||||
|
- `tags` (String)
|
||||||
|
- `timestamp` (Number)
|
||||||
|
- `timestamp_end` (Number)
|
||||||
|
- `user` (String)
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `default` (String)
|
||||||
|
- `read` (String)
|
||||||
@@ -25,7 +25,6 @@ description: |-
|
|||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|
||||||
- `apitask` (String)
|
|
||||||
- `args` (String)
|
- `args` (String)
|
||||||
- `call` (String)
|
- `call` (String)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
|
|||||||
33
docs/data-sources/cb_audits_export_to_file.md
Normal file
33
docs/data-sources/cb_audits_export_to_file.md
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_cb_audits_export_to_file Data Source - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_cb_audits_export_to_file (Data Source)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `file_path` (String) file path
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `default` (String)
|
||||||
|
- `read` (String)
|
||||||
48
docs/data-sources/cb_dpdknet.md
Normal file
48
docs/data-sources/cb_dpdknet.md
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_cb_dpdknet Data Source - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_cb_dpdknet (Data Source)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Required
|
||||||
|
|
||||||
|
- `dpdk_id` (Number) The unique ID of the subscriber-owner of the DPDK network
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `account_access` (List of Number) List of accounts with access
|
||||||
|
- `compute_ids` (List of Number) Compute IDs which uses this DPDK network
|
||||||
|
- `created_time` (Number) Created time
|
||||||
|
- `desc` (String) Description of DPDK network
|
||||||
|
- `gid` (Number) ID of the grid (platform)
|
||||||
|
- `guid` (Number) DPDK network ID on the storage side
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
- `name` (String) Name of network
|
||||||
|
- `ovs_bridge` (String) OVS bridge in which interfaces for computers created
|
||||||
|
- `rg_access` (List of Number) List of resource groups with access
|
||||||
|
- `status` (String) DPDK network status
|
||||||
|
- `updated_time` (Number) Updated time
|
||||||
|
- `vlan_id` (Number) vlan ID
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `default` (String)
|
||||||
|
- `read` (String)
|
||||||
63
docs/data-sources/cb_dpdknet_list.md
Normal file
63
docs/data-sources/cb_dpdknet_list.md
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_cb_dpdknet_list Data Source - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_cb_dpdknet_list (Data Source)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `by_id` (Number) Find by ID
|
||||||
|
- `compute_ids` (List of Number) Find by compute IDs
|
||||||
|
- `desc` (String) Find by description
|
||||||
|
- `gid` (Number) Find by GID
|
||||||
|
- `name` (String) Find by name
|
||||||
|
- `page` (Number) Page number
|
||||||
|
- `size` (Number) Page size
|
||||||
|
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
||||||
|
- `status` (String) Find by status
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `entry_count` (Number)
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `default` (String)
|
||||||
|
- `read` (String)
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedatt--items"></a>
|
||||||
|
### Nested Schema for `items`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `account_access` (List of Number)
|
||||||
|
- `compute_ids` (List of Number)
|
||||||
|
- `created_time` (Number)
|
||||||
|
- `desc` (String)
|
||||||
|
- `dpdk_id` (Number)
|
||||||
|
- `gid` (Number)
|
||||||
|
- `guid` (Number)
|
||||||
|
- `name` (String)
|
||||||
|
- `ovs_bridge` (String)
|
||||||
|
- `rg_access` (List of Number)
|
||||||
|
- `status` (String)
|
||||||
|
- `updated_time` (Number)
|
||||||
|
- `vlan_id` (Number)
|
||||||
@@ -26,11 +26,13 @@ description: |-
|
|||||||
### Read-Only
|
### Read-Only
|
||||||
|
|
||||||
- `auth_broker` (List of String)
|
- `auth_broker` (List of String)
|
||||||
|
- `ckey` (String)
|
||||||
- `flag` (String)
|
- `flag` (String)
|
||||||
- `gid` (Number)
|
- `gid` (Number)
|
||||||
- `guid` (Number)
|
- `guid` (Number)
|
||||||
- `id` (Number) The ID of this resource.
|
- `id` (Number) The ID of this resource.
|
||||||
- `location_code` (String)
|
- `location_code` (String)
|
||||||
|
- `meta` (List of String) meta
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
|
|
||||||
<a id="nestedblock--timeouts"></a>
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
|||||||
114
docs/data-sources/cb_grid_get_settings.md
Normal file
114
docs/data-sources/cb_grid_get_settings.md
Normal file
@@ -0,0 +1,114 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_cb_grid_get_settings Data Source - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_cb_grid_get_settings (Data Source)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Required
|
||||||
|
|
||||||
|
- `grid_id` (Number) grid (platform) ID
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `allowed_ports` (List of Number)
|
||||||
|
- `cleanup_retention_period` (Number)
|
||||||
|
- `docker_registry` (List of Object) (see [below for nested schema](#nestedatt--docker_registry))
|
||||||
|
- `enable_uptime_monitor` (Boolean)
|
||||||
|
- `extnet_max_pre_reservations_num` (Number)
|
||||||
|
- `healthcheck_notifications` (List of Object) (see [below for nested schema](#nestedatt--healthcheck_notifications))
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
- `k8s_cleanup_enabled` (Boolean)
|
||||||
|
- `limits` (String)
|
||||||
|
- `location_url` (String)
|
||||||
|
- `net_qos` (List of Object) (see [below for nested schema](#nestedatt--net_qos))
|
||||||
|
- `networks` (String)
|
||||||
|
- `prometheus` (List of Object) (see [below for nested schema](#nestedatt--prometheus))
|
||||||
|
- `vins_max_pre_reservations_num` (Number)
|
||||||
|
- `vnfdev_mgmt_net_range` (String)
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `default` (String)
|
||||||
|
- `read` (String)
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedatt--docker_registry"></a>
|
||||||
|
### Nested Schema for `docker_registry`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `password` (String)
|
||||||
|
- `server` (String)
|
||||||
|
- `username` (String)
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedatt--healthcheck_notifications"></a>
|
||||||
|
### Nested Schema for `healthcheck_notifications`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `emails` (List of Object) (see [below for nested schema](#nestedobjatt--healthcheck_notifications--emails))
|
||||||
|
|
||||||
|
<a id="nestedobjatt--healthcheck_notifications--emails"></a>
|
||||||
|
### Nested Schema for `healthcheck_notifications.emails`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `address` (String)
|
||||||
|
- `enabled` (Boolean)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedatt--net_qos"></a>
|
||||||
|
### Nested Schema for `net_qos`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `extnet` (List of Object) (see [below for nested schema](#nestedobjatt--net_qos--extnet))
|
||||||
|
- `vins` (List of Object) (see [below for nested schema](#nestedobjatt--net_qos--vins))
|
||||||
|
|
||||||
|
<a id="nestedobjatt--net_qos--extnet"></a>
|
||||||
|
### Nested Schema for `net_qos.extnet`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `e_rate` (Number)
|
||||||
|
- `in_burst` (Number)
|
||||||
|
- `in_rate` (Number)
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedobjatt--net_qos--vins"></a>
|
||||||
|
### Nested Schema for `net_qos.vins`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `e_rate` (Number)
|
||||||
|
- `in_burst` (Number)
|
||||||
|
- `in_rate` (Number)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedatt--prometheus"></a>
|
||||||
|
### Nested Schema for `prometheus`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `scrape_interval` (Number)
|
||||||
@@ -28,7 +28,7 @@ description: |-
|
|||||||
|
|
||||||
- `account_id` (Number) AccountId to make the image exclusive
|
- `account_id` (Number) AccountId to make the image exclusive
|
||||||
- `acl` (List of Object) (see [below for nested schema](#nestedatt--acl))
|
- `acl` (List of Object) (see [below for nested schema](#nestedatt--acl))
|
||||||
- `architecture` (String) binary architecture of this image, one of X86_64 of PPC64_LE
|
- `architecture` (String) binary architecture of this image, one of X86_64
|
||||||
- `boot_type` (String) Boot type of image bios or uefi
|
- `boot_type` (String) Boot type of image bios or uefi
|
||||||
- `bootable` (Boolean) Does this image boot OS
|
- `bootable` (Boolean) Does this image boot OS
|
||||||
- `cd_presented_to` (String)
|
- `cd_presented_to` (String)
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ description: |-
|
|||||||
- `architecture` (String) find by architecture
|
- `architecture` (String) find by architecture
|
||||||
- `bootable` (Boolean) find by bootable True or False
|
- `bootable` (Boolean) find by bootable True or False
|
||||||
- `by_id` (Number) find by ID
|
- `by_id` (Number) find by ID
|
||||||
|
- `enabled` (Boolean) find by enabled True or False
|
||||||
- `hot_resize` (Boolean) find by hot resize True or False
|
- `hot_resize` (Boolean) find by hot resize True or False
|
||||||
- `image_size` (Number) find by image size
|
- `image_size` (Number) find by image size
|
||||||
- `name` (String) find by name
|
- `name` (String) find by name
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String) reason for action
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
@@ -38,6 +37,7 @@ description: |-
|
|||||||
- `boot_disk_size` (Number)
|
- `boot_disk_size` (Number)
|
||||||
- `boot_order` (List of String)
|
- `boot_order` (List of String)
|
||||||
- `cd_image_id` (Number)
|
- `cd_image_id` (Number)
|
||||||
|
- `chipset` (String)
|
||||||
- `clone_reference` (Number)
|
- `clone_reference` (Number)
|
||||||
- `clones` (List of Number)
|
- `clones` (List of Number)
|
||||||
- `computeci_id` (Number)
|
- `computeci_id` (Number)
|
||||||
@@ -156,6 +156,7 @@ Read-Only:
|
|||||||
|
|
||||||
- `account_id` (Number)
|
- `account_id` (Number)
|
||||||
- `boot_partition` (Number)
|
- `boot_partition` (Number)
|
||||||
|
- `bus_number` (Number)
|
||||||
- `ckey` (String)
|
- `ckey` (String)
|
||||||
- `created_time` (Number)
|
- `created_time` (Number)
|
||||||
- `deleted_time` (Number)
|
- `deleted_time` (Number)
|
||||||
@@ -250,6 +251,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -257,8 +259,10 @@ Read-Only:
|
|||||||
- `flip_group_id` (Number)
|
- `flip_group_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_type` (String)
|
- `net_type` (String)
|
||||||
@@ -270,6 +274,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--interfaces--qos"></a>
|
<a id="nestedobjatt--interfaces--qos"></a>
|
||||||
### Nested Schema for `interfaces.qos`
|
### Nested Schema for `interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String)
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ description: |-
|
|||||||
- `extnet_id` (Number) Find by Extnet ID
|
- `extnet_id` (Number) Find by Extnet ID
|
||||||
- `extnet_name` (String) Find by Extnet name
|
- `extnet_name` (String) Find by Extnet name
|
||||||
- `ignore_k8s` (Boolean) If set to true, ignores any VMs associated with any k8s cluster
|
- `ignore_k8s` (Boolean) If set to true, ignores any VMs associated with any k8s cluster
|
||||||
|
- `image_id` (Number) Find by image ID
|
||||||
- `includedeleted` (Boolean)
|
- `includedeleted` (Boolean)
|
||||||
- `ip_address` (String) Find by IP address
|
- `ip_address` (String) Find by IP address
|
||||||
- `name` (String) Find by name
|
- `name` (String) Find by name
|
||||||
@@ -30,6 +31,7 @@ description: |-
|
|||||||
- `rg_name` (String) Find by resgroup name
|
- `rg_name` (String) Find by resgroup name
|
||||||
- `size` (Number)
|
- `size` (Number)
|
||||||
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
||||||
|
- `stack_id` (Number) Find by stack ID
|
||||||
- `status` (String) Find by status
|
- `status` (String) Find by status
|
||||||
- `tech_status` (String) Find by tech status
|
- `tech_status` (String) Find by tech status
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
@@ -65,6 +67,7 @@ Read-Only:
|
|||||||
- `boot_order` (List of String)
|
- `boot_order` (List of String)
|
||||||
- `bootdisk_size` (Number)
|
- `bootdisk_size` (Number)
|
||||||
- `cd_image_id` (Number)
|
- `cd_image_id` (Number)
|
||||||
|
- `chipset` (String)
|
||||||
- `clone_reference` (Number)
|
- `clone_reference` (Number)
|
||||||
- `clones` (List of Number)
|
- `clones` (List of Number)
|
||||||
- `compute_id` (Number)
|
- `compute_id` (Number)
|
||||||
@@ -163,6 +166,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `disk_id` (Number)
|
- `disk_id` (Number)
|
||||||
- `pci_slot` (Number)
|
- `pci_slot` (Number)
|
||||||
|
|
||||||
@@ -172,6 +176,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -179,8 +184,10 @@ Read-Only:
|
|||||||
- `flip_group_id` (Number)
|
- `flip_group_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--items--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_type` (String)
|
- `net_type` (String)
|
||||||
@@ -192,6 +199,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--items--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `items.interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--items--interfaces--qos"></a>
|
<a id="nestedobjatt--items--interfaces--qos"></a>
|
||||||
### Nested Schema for `items.interfaces.qos`
|
### Nested Schema for `items.interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String)
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String)
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String)
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ Optional:
|
|||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
- `call` (String)
|
- `call` (String)
|
||||||
|
- `guid` (String)
|
||||||
- `response_time` (Number)
|
- `response_time` (Number)
|
||||||
- `status_code` (Number)
|
- `status_code` (Number)
|
||||||
- `time` (Number)
|
- `time` (Number)
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String) reason for action
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
@@ -139,6 +138,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -146,8 +146,10 @@ Read-Only:
|
|||||||
- `flipgroup_id` (Number)
|
- `flipgroup_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--vnf_dev--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_mask` (Number)
|
- `net_mask` (Number)
|
||||||
@@ -159,6 +161,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--vnf_dev--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `vnf_dev.interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
||||||
### Nested Schema for `vnf_dev.interfaces.qos`
|
### Nested Schema for `vnf_dev.interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ description: |-
|
|||||||
- `size` (Number) Page size
|
- `size` (Number) Page size
|
||||||
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
- `vnf_dev_id` (Number) Filter by VNF Device id
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String) reason for action
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
48
docs/data-sources/dpdknet.md
Normal file
48
docs/data-sources/dpdknet.md
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_dpdknet Data Source - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_dpdknet (Data Source)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Required
|
||||||
|
|
||||||
|
- `dpdk_id` (Number) The unique ID of the subscriber-owner of the DPDK network
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `account_access` (List of Number) List of accounts with access
|
||||||
|
- `compute_ids` (List of Number) Compute IDs which uses this DPDK network
|
||||||
|
- `created_time` (Number) Created time
|
||||||
|
- `desc` (String) Description of DPDK network
|
||||||
|
- `gid` (Number) ID of the grid (platform)
|
||||||
|
- `guid` (Number) DPDK network ID on the storage side
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
- `name` (String) Name of network
|
||||||
|
- `ovs_bridge` (String) OVS bridge in which interfaces for computers created
|
||||||
|
- `rg_access` (List of Number) List of resource groups with access
|
||||||
|
- `status` (String) DPDK network status
|
||||||
|
- `updated_time` (Number) Updated time
|
||||||
|
- `vlan_id` (Number) vlan ID
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `default` (String)
|
||||||
|
- `read` (String)
|
||||||
63
docs/data-sources/dpdknet_list.md
Normal file
63
docs/data-sources/dpdknet_list.md
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_dpdknet_list Data Source - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_dpdknet_list (Data Source)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `by_id` (Number) Find by ID
|
||||||
|
- `compute_ids` (List of Number) Find by compute IDs
|
||||||
|
- `desc` (String) Find by description
|
||||||
|
- `gid` (Number) Find by GID
|
||||||
|
- `name` (String) Find by name
|
||||||
|
- `page` (Number) Page number
|
||||||
|
- `size` (Number) Page size
|
||||||
|
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
||||||
|
- `status` (String) Find by status
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `entry_count` (Number)
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
- `items` (List of Object) (see [below for nested schema](#nestedatt--items))
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `default` (String)
|
||||||
|
- `read` (String)
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedatt--items"></a>
|
||||||
|
### Nested Schema for `items`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `account_access` (List of Number)
|
||||||
|
- `compute_ids` (List of Number)
|
||||||
|
- `created_time` (Number)
|
||||||
|
- `desc` (String)
|
||||||
|
- `dpdk_id` (Number)
|
||||||
|
- `gid` (Number)
|
||||||
|
- `guid` (Number)
|
||||||
|
- `name` (String)
|
||||||
|
- `ovs_bridge` (String)
|
||||||
|
- `rg_access` (List of Number)
|
||||||
|
- `status` (String)
|
||||||
|
- `updated_time` (Number)
|
||||||
|
- `vlan_id` (Number)
|
||||||
@@ -20,6 +20,7 @@ description: |-
|
|||||||
- `architecture` (String) Filter by architecture
|
- `architecture` (String) Filter by architecture
|
||||||
- `bootable` (Boolean) Find bootable images
|
- `bootable` (Boolean) Find bootable images
|
||||||
- `by_id` (Number) Filter by ID
|
- `by_id` (Number) Filter by ID
|
||||||
|
- `enabled` (Boolean) find by enabled True or False
|
||||||
- `hot_resize` (Boolean) Find hot resizable images
|
- `hot_resize` (Boolean) Find hot resizable images
|
||||||
- `image_size` (Number) Filter by image size
|
- `image_size` (Number) Filter by image size
|
||||||
- `name` (String) Filter by name
|
- `name` (String) Filter by name
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ description: |-
|
|||||||
- `boot_order` (List of String)
|
- `boot_order` (List of String)
|
||||||
- `bootdisk_size` (Number)
|
- `bootdisk_size` (Number)
|
||||||
- `cd_image_id` (Number)
|
- `cd_image_id` (Number)
|
||||||
|
- `chipset` (String)
|
||||||
- `clone_reference` (Number)
|
- `clone_reference` (Number)
|
||||||
- `clones` (List of Number)
|
- `clones` (List of Number)
|
||||||
- `computeci_id` (Number)
|
- `computeci_id` (Number)
|
||||||
@@ -187,6 +188,7 @@ Read-Only:
|
|||||||
- `account_id` (Number)
|
- `account_id` (Number)
|
||||||
- `acl` (String)
|
- `acl` (String)
|
||||||
- `boot_partition` (Number)
|
- `boot_partition` (Number)
|
||||||
|
- `bus_number` (Number)
|
||||||
- `created_time` (Number)
|
- `created_time` (Number)
|
||||||
- `deleted_time` (Number)
|
- `deleted_time` (Number)
|
||||||
- `description` (String)
|
- `description` (String)
|
||||||
@@ -278,6 +280,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -285,8 +288,10 @@ Read-Only:
|
|||||||
- `flip_group_id` (Number)
|
- `flip_group_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_type` (String)
|
- `net_type` (String)
|
||||||
@@ -298,6 +303,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--interfaces--qos"></a>
|
<a id="nestedobjatt--interfaces--qos"></a>
|
||||||
### Nested Schema for `interfaces.qos`
|
### Nested Schema for `interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -65,6 +65,7 @@ Read-Only:
|
|||||||
- `boot_order` (List of String)
|
- `boot_order` (List of String)
|
||||||
- `bootdisk_size` (Number)
|
- `bootdisk_size` (Number)
|
||||||
- `cd_image_id` (Number)
|
- `cd_image_id` (Number)
|
||||||
|
- `chipset` (String)
|
||||||
- `clone_reference` (Number)
|
- `clone_reference` (Number)
|
||||||
- `clones` (List of Number)
|
- `clones` (List of Number)
|
||||||
- `compute_id` (Number)
|
- `compute_id` (Number)
|
||||||
@@ -160,6 +161,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `disk_id` (Number)
|
- `disk_id` (Number)
|
||||||
- `pci_slot` (Number)
|
- `pci_slot` (Number)
|
||||||
|
|
||||||
@@ -169,6 +171,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -176,8 +179,10 @@ Read-Only:
|
|||||||
- `flip_group_id` (Number)
|
- `flip_group_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--items--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_type` (String)
|
- `net_type` (String)
|
||||||
@@ -189,6 +194,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--items--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `items.interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--items--interfaces--qos"></a>
|
<a id="nestedobjatt--items--interfaces--qos"></a>
|
||||||
### Nested Schema for `items.interfaces.qos`
|
### Nested Schema for `items.interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ Read-Only:
|
|||||||
- `boot_order` (List of String)
|
- `boot_order` (List of String)
|
||||||
- `bootdisk_size` (Number)
|
- `bootdisk_size` (Number)
|
||||||
- `cd_image_id` (Number)
|
- `cd_image_id` (Number)
|
||||||
|
- `chipset` (String)
|
||||||
- `clone_reference` (Number)
|
- `clone_reference` (Number)
|
||||||
- `clones` (List of Number)
|
- `clones` (List of Number)
|
||||||
- `compute_id` (Number)
|
- `compute_id` (Number)
|
||||||
@@ -158,6 +159,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `disk_id` (Number)
|
- `disk_id` (Number)
|
||||||
- `pci_slot` (Number)
|
- `pci_slot` (Number)
|
||||||
|
|
||||||
@@ -167,6 +169,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -174,8 +177,10 @@ Read-Only:
|
|||||||
- `flip_group_id` (Number)
|
- `flip_group_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--items--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_type` (String)
|
- `net_type` (String)
|
||||||
@@ -187,6 +192,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--items--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `items.interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--items--interfaces--qos"></a>
|
<a id="nestedobjatt--items--interfaces--qos"></a>
|
||||||
### Nested Schema for `items.interfaces.qos`
|
### Nested Schema for `items.interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String)
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
@@ -21,7 +21,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `reason` (String)
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
@@ -147,6 +147,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -154,8 +155,10 @@ Read-Only:
|
|||||||
- `flipgroup_id` (Number)
|
- `flipgroup_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--vnf_dev--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_mask` (Number)
|
- `net_mask` (Number)
|
||||||
@@ -167,6 +170,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--vnf_dev--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `vnf_dev.interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
||||||
### Nested Schema for `vnf_dev.interfaces.qos`
|
### Nested Schema for `vnf_dev.interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ description: |-
|
|||||||
- `size` (Number) Page size
|
- `size` (Number) Page size
|
||||||
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
- `sort_by` (String) sort by one of supported fields, format +|-(field)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
- `vnf_dev_id` (Number) Filter by VNF Device id
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|
||||||
|
|||||||
@@ -92,10 +92,6 @@ Required:
|
|||||||
- `access_type` (String)
|
- `access_type` (String)
|
||||||
- `user_id` (String)
|
- `user_id` (String)
|
||||||
|
|
||||||
Optional:
|
|
||||||
|
|
||||||
- `recursive_delete` (Boolean)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--acl"></a>
|
<a id="nestedatt--acl"></a>
|
||||||
### Nested Schema for `acl`
|
### Nested Schema for `acl`
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ description: |-
|
|||||||
- `compgroup_name` (String) name of the Compute Group to add
|
- `compgroup_name` (String) name of the Compute Group to add
|
||||||
- `cpu` (Number) compute CPU number. All computes in the group have the same CPU count
|
- `cpu` (Number) compute CPU number. All computes in the group have the same CPU count
|
||||||
- `disk` (Number) compute boot disk size in GB
|
- `disk` (Number) compute boot disk size in GB
|
||||||
- `driver` (String) compute driver like a KVM_X86, KVM_PPC, etc.
|
- `driver` (String) compute driver like a KVM_X86, etc.
|
||||||
- `image_id` (Number) OS image ID to create computes from
|
- `image_id` (Number) OS image ID to create computes from
|
||||||
- `ram` (Number) compute RAM volume in MB. All computes in the group have the same RAM volume
|
- `ram` (Number) compute RAM volume in MB. All computes in the group have the same RAM volume
|
||||||
- `service_id` (Number) ID of the Basic Service to add a group to
|
- `service_id` (Number) ID of the Basic Service to add a group to
|
||||||
|
|||||||
@@ -95,10 +95,6 @@ Required:
|
|||||||
- `access_type` (String)
|
- `access_type` (String)
|
||||||
- `user_id` (String)
|
- `user_id` (String)
|
||||||
|
|
||||||
Optional:
|
|
||||||
|
|
||||||
- `recursive_delete` (Boolean)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--acl"></a>
|
<a id="nestedatt--acl"></a>
|
||||||
### Nested Schema for `acl`
|
### Nested Schema for `acl`
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ description: |-
|
|||||||
|
|
||||||
### Required
|
### Required
|
||||||
|
|
||||||
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
|
||||||
- `gid` (Number) grid (platform) ID where this template should be create in
|
- `gid` (Number) grid (platform) ID where this template should be create in
|
||||||
- `name` (String) Name of the rescue disk
|
- `name` (String) Name of the rescue disk
|
||||||
- `url` (String) URL where to download ISO from
|
- `url` (String) URL where to download ISO from
|
||||||
@@ -25,14 +24,14 @@ description: |-
|
|||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `account_id` (Number) AccountId to make the image exclusive
|
- `account_id` (Number) AccountId to make the image exclusive
|
||||||
- `architecture` (String) binary architecture of this image, one of X86_64 of PPC64_LE
|
- `architecture` (String) binary architecture of this image, one of X86_64
|
||||||
- `bootable` (Boolean) Does this image boot OS
|
- `bootable` (Boolean) Does this image boot OS
|
||||||
- `computeci_id` (Number)
|
- `computeci_id` (Number)
|
||||||
|
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
||||||
- `enabled` (Boolean)
|
- `enabled` (Boolean)
|
||||||
- `enabled_stacks` (List of Number)
|
- `enabled_stacks` (List of Number)
|
||||||
- `hot_resize` (Boolean) Does this machine supports hot resize
|
- `hot_resize` (Boolean) Does this machine supports hot resize
|
||||||
- `password_dl` (String) password for upload binary media
|
- `password_dl` (String) password for upload binary media
|
||||||
- `permanently` (Boolean) Whether to completely delete the image
|
|
||||||
- `pool_name` (String) pool for image create
|
- `pool_name` (String) pool for image create
|
||||||
- `sep_id` (Number) storage endpoint provider ID
|
- `sep_id` (Number) storage endpoint provider ID
|
||||||
- `shared_with` (List of Number)
|
- `shared_with` (List of Number)
|
||||||
|
|||||||
@@ -32,7 +32,6 @@ description: |-
|
|||||||
- `node_ids` (Set of Number)
|
- `node_ids` (Set of Number)
|
||||||
- `permanently` (Boolean) whether to completely delete the disk, works only with non attached disks
|
- `permanently` (Boolean) whether to completely delete the disk, works only with non attached disks
|
||||||
- `pool` (String)
|
- `pool` (String)
|
||||||
- `reason` (String) reason for an action
|
|
||||||
- `restore` (Boolean) restore deleting disk
|
- `restore` (Boolean) restore deleting disk
|
||||||
- `sep_id` (Number)
|
- `sep_id` (Number)
|
||||||
- `shareable` (Boolean)
|
- `shareable` (Boolean)
|
||||||
|
|||||||
@@ -1,148 +0,0 @@
|
|||||||
---
|
|
||||||
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
|
||||||
page_title: "decort_cb_disk_replication Resource - terraform-provider-decort"
|
|
||||||
subcategory: ""
|
|
||||||
description: |-
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# decort_cb_disk_replication (Resource)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- schema generated by tfplugindocs -->
|
|
||||||
## Schema
|
|
||||||
|
|
||||||
### Required
|
|
||||||
|
|
||||||
- `disk_id` (Number) Id of primary disk
|
|
||||||
- `disk_name` (String) Name of disk replica
|
|
||||||
- `pool_name` (String) Pool for disk location
|
|
||||||
- `sep_id` (Number) Storage endpoint provider ID to create disk replica
|
|
||||||
|
|
||||||
### Optional
|
|
||||||
|
|
||||||
- `detach` (Boolean) Detach disk from machine first
|
|
||||||
- `pause` (Boolean) Resume replication
|
|
||||||
- `permanently` (Boolean) Delete disk permanently
|
|
||||||
- `reason` (String) Reason for disk deletion
|
|
||||||
- `reverse` (Boolean) Reverse replication
|
|
||||||
- `start` (Boolean) Start/Stop replication
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
|
||||||
|
|
||||||
### Read-Only
|
|
||||||
|
|
||||||
- `account_id` (Number)
|
|
||||||
- `account_name` (String)
|
|
||||||
- `acl` (String)
|
|
||||||
- `boot_partition` (Number)
|
|
||||||
- `computes` (List of Object) (see [below for nested schema](#nestedatt--computes))
|
|
||||||
- `created_time` (Number)
|
|
||||||
- `deleted_time` (Number)
|
|
||||||
- `desc` (String)
|
|
||||||
- `destruction_time` (Number)
|
|
||||||
- `devicename` (String)
|
|
||||||
- `disk_path` (String)
|
|
||||||
- `gid` (Number)
|
|
||||||
- `guid` (Number)
|
|
||||||
- `id` (String) The ID of this resource.
|
|
||||||
- `image_id` (Number)
|
|
||||||
- `images` (List of Number)
|
|
||||||
- `iotune` (List of Object) (see [below for nested schema](#nestedatt--iotune))
|
|
||||||
- `iqn` (String)
|
|
||||||
- `login` (String)
|
|
||||||
- `milestones` (Number)
|
|
||||||
- `order` (Number)
|
|
||||||
- `params` (String)
|
|
||||||
- `parent_id` (Number)
|
|
||||||
- `passwd` (String)
|
|
||||||
- `pci_slot` (Number)
|
|
||||||
- `present_to` (List of Number)
|
|
||||||
- `purge_attempts` (Number)
|
|
||||||
- `purge_time` (Number)
|
|
||||||
- `reality_device_number` (Number)
|
|
||||||
- `reference_id` (String)
|
|
||||||
- `replica_disk_id` (Number) Id of replica disk
|
|
||||||
- `replication` (List of Object) Replication status (see [below for nested schema](#nestedatt--replication))
|
|
||||||
- `res_id` (String)
|
|
||||||
- `res_name` (String)
|
|
||||||
- `role` (String)
|
|
||||||
- `sep_type` (String)
|
|
||||||
- `shareable` (Boolean)
|
|
||||||
- `size_max` (Number)
|
|
||||||
- `size_used` (Number)
|
|
||||||
- `snapshots` (List of Object) (see [below for nested schema](#nestedatt--snapshots))
|
|
||||||
- `status` (String)
|
|
||||||
- `status_replication` (String) Status of replication
|
|
||||||
- `tech_status` (String)
|
|
||||||
- `type` (String)
|
|
||||||
- `vmid` (Number)
|
|
||||||
|
|
||||||
<a id="nestedblock--timeouts"></a>
|
|
||||||
### Nested Schema for `timeouts`
|
|
||||||
|
|
||||||
Optional:
|
|
||||||
|
|
||||||
- `create` (String)
|
|
||||||
- `default` (String)
|
|
||||||
- `delete` (String)
|
|
||||||
- `read` (String)
|
|
||||||
- `update` (String)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--computes"></a>
|
|
||||||
### Nested Schema for `computes`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `compute_id` (String)
|
|
||||||
- `compute_name` (String)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--iotune"></a>
|
|
||||||
### Nested Schema for `iotune`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `read_bytes_sec` (Number)
|
|
||||||
- `read_bytes_sec_max` (Number)
|
|
||||||
- `read_iops_sec` (Number)
|
|
||||||
- `read_iops_sec_max` (Number)
|
|
||||||
- `size_iops_sec` (Number)
|
|
||||||
- `total_bytes_sec` (Number)
|
|
||||||
- `total_bytes_sec_max` (Number)
|
|
||||||
- `total_iops_sec` (Number)
|
|
||||||
- `total_iops_sec_max` (Number)
|
|
||||||
- `write_bytes_sec` (Number)
|
|
||||||
- `write_bytes_sec_max` (Number)
|
|
||||||
- `write_iops_sec` (Number)
|
|
||||||
- `write_iops_sec_max` (Number)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--replication"></a>
|
|
||||||
### Nested Schema for `replication`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `disk_id` (Number)
|
|
||||||
- `pool_id` (String)
|
|
||||||
- `role` (String)
|
|
||||||
- `self_volume_id` (String)
|
|
||||||
- `storage_id` (String)
|
|
||||||
- `volume_id` (String)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--snapshots"></a>
|
|
||||||
### Nested Schema for `snapshots`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `guid` (String)
|
|
||||||
- `label` (String)
|
|
||||||
- `reference_id` (String)
|
|
||||||
- `res_id` (String)
|
|
||||||
- `snap_set_guid` (String)
|
|
||||||
- `snap_set_time` (Number)
|
|
||||||
- `timestamp` (Number)
|
|
||||||
52
docs/resources/cb_dpdknet.md
Normal file
52
docs/resources/cb_dpdknet.md
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
---
|
||||||
|
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
||||||
|
page_title: "decort_cb_dpdknet Resource - terraform-provider-decort"
|
||||||
|
subcategory: ""
|
||||||
|
description: |-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# decort_cb_dpdknet (Resource)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- schema generated by tfplugindocs -->
|
||||||
|
## Schema
|
||||||
|
|
||||||
|
### Required
|
||||||
|
|
||||||
|
- `gid` (Number) ID of the grid (platform)
|
||||||
|
- `name` (String) Name of network
|
||||||
|
- `ovs_bridge` (String) OVS bridge in which interfaces for computers created
|
||||||
|
- `vlan_id` (Number) vlan ID
|
||||||
|
|
||||||
|
### Optional
|
||||||
|
|
||||||
|
- `account_access` (List of Number) List of accounts with access
|
||||||
|
- `desc` (String) Description of DPDK network
|
||||||
|
- `enabled` (Boolean) Enabled or disabled DPDK network
|
||||||
|
- `rg_access` (List of Number) List of resource groups with access
|
||||||
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
|
### Read-Only
|
||||||
|
|
||||||
|
- `compute_ids` (List of Number) Compute IDs which uses this DPDK network
|
||||||
|
- `created_time` (Number) Created time
|
||||||
|
- `dpdk_id` (Number) The unique ID of the subscriber-owner of the DPDK network
|
||||||
|
- `guid` (Number) DPDK network ID on the storage side
|
||||||
|
- `id` (String) The ID of this resource.
|
||||||
|
- `status` (String) DPDK network status
|
||||||
|
- `updated_time` (Number) Updated time
|
||||||
|
|
||||||
|
<a id="nestedblock--timeouts"></a>
|
||||||
|
### Nested Schema for `timeouts`
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `create` (String)
|
||||||
|
- `default` (String)
|
||||||
|
- `delete` (String)
|
||||||
|
- `read` (String)
|
||||||
|
- `update` (String)
|
||||||
@@ -26,7 +26,7 @@ description: |-
|
|||||||
|
|
||||||
- `account_id` (Number) AccountId to make the image exclusive
|
- `account_id` (Number) AccountId to make the image exclusive
|
||||||
- `accounts` (List of Number)
|
- `accounts` (List of Number)
|
||||||
- `architecture` (String) binary architecture of this image, one of X86_64 of PPC64_LE
|
- `architecture` (String) binary architecture of this image, one of X86_64
|
||||||
- `bootable` (Boolean) Does this image boot OS
|
- `bootable` (Boolean) Does this image boot OS
|
||||||
- `computeci_id` (Number)
|
- `computeci_id` (Number)
|
||||||
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
||||||
@@ -37,9 +37,7 @@ description: |-
|
|||||||
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
||||||
- `password` (String) Optional password for the image
|
- `password` (String) Optional password for the image
|
||||||
- `password_dl` (String) password for upload binary media
|
- `password_dl` (String) password for upload binary media
|
||||||
- `permanently` (Boolean) Whether to completely delete the image
|
|
||||||
- `pool_name` (String) pool for image create
|
- `pool_name` (String) pool for image create
|
||||||
- `reason` (String)
|
|
||||||
- `sep_id` (Number) storage endpoint provider ID
|
- `sep_id` (Number) storage endpoint provider ID
|
||||||
- `shared_with` (List of Number)
|
- `shared_with` (List of Number)
|
||||||
- `sync_mode` (Boolean) Create image from a media identified by URL (in synchronous mode)
|
- `sync_mode` (Boolean) Create image from a media identified by URL (in synchronous mode)
|
||||||
|
|||||||
@@ -34,9 +34,7 @@ description: |-
|
|||||||
- `hot_resize` (Boolean) Does this machine supports hot resize
|
- `hot_resize` (Boolean) Does this machine supports hot resize
|
||||||
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
||||||
- `password` (String) Optional password for the image
|
- `password` (String) Optional password for the image
|
||||||
- `permanently` (Boolean) whether to completely delete the image
|
|
||||||
- `pool_name` (String) pool for image create
|
- `pool_name` (String) pool for image create
|
||||||
- `reason` (String)
|
|
||||||
- `sep_id` (Number) storage endpoint provider ID
|
- `sep_id` (Number) storage endpoint provider ID
|
||||||
- `shared_with` (List of Number)
|
- `shared_with` (List of Number)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ description: |-
|
|||||||
- `architecture` (String) Image type linux, windows or other
|
- `architecture` (String) Image type linux, windows or other
|
||||||
- `boot_type` (String) Boot type of image BIOS or UEFI
|
- `boot_type` (String) Boot type of image BIOS or UEFI
|
||||||
- `disk_id` (Number) Disk Id
|
- `disk_id` (Number) Disk Id
|
||||||
|
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
||||||
- `image_type` (String) Image type linux, windows or other
|
- `image_type` (String) Image type linux, windows or other
|
||||||
- `name` (String) Name of the rescue disk
|
- `name` (String) Name of the rescue disk
|
||||||
|
|
||||||
@@ -30,15 +31,12 @@ description: |-
|
|||||||
- `async_mode` (Boolean) create an image in async/sync mode
|
- `async_mode` (Boolean) create an image in async/sync mode
|
||||||
- `bootable` (Boolean) Does this image boot OS
|
- `bootable` (Boolean) Does this image boot OS
|
||||||
- `computeci_id` (Number)
|
- `computeci_id` (Number)
|
||||||
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
|
||||||
- `enabled` (Boolean)
|
- `enabled` (Boolean)
|
||||||
- `enabled_stacks` (List of Number)
|
- `enabled_stacks` (List of Number)
|
||||||
- `hot_resize` (Boolean) Does this machine supports hot resize
|
- `hot_resize` (Boolean) Does this machine supports hot resize
|
||||||
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
||||||
- `password` (String) Optional password for the image
|
- `password` (String) Optional password for the image
|
||||||
- `permanently` (Boolean) whether to completely delete the image
|
|
||||||
- `pool_name` (String) pool for image create
|
- `pool_name` (String) pool for image create
|
||||||
- `reason` (String)
|
|
||||||
- `sep_id` (Number) storage endpoint provider ID
|
- `sep_id` (Number) storage endpoint provider ID
|
||||||
- `shared_with` (List of Number)
|
- `shared_with` (List of Number)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ description: |-
|
|||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `additional_sans` (List of String) Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names
|
- `additional_sans` (List of String) Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `cluster_config` (String) is used to define global settings and configurations for the entire cluster. It includes parameters such as cluster name, DNS settings, authentication methods, and other cluster-wide configurations. insert a valid JSON string with all levels of nesting.
|
- `cluster_config` (String) is used to define global settings and configurations for the entire cluster. It includes parameters such as cluster name, DNS settings, authentication methods, and other cluster-wide configurations. insert a valid JSON string with all levels of nesting.
|
||||||
- `cpu` (Number) Node CPU count.
|
- `cpu` (Number) Node CPU count.
|
||||||
- `desc` (String) Text description of this instance.
|
- `desc` (String) Text description of this instance.
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ description: |-
|
|||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `annotations` (List of String)
|
- `annotations` (List of String)
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `cloud_init` (String)
|
- `cloud_init` (String)
|
||||||
- `cpu` (Number) Worker node CPU count.
|
- `cpu` (Number) Worker node CPU count.
|
||||||
- `disk` (Number) Worker node boot disk size. If unspecified or 0, size is defined by OS image size.
|
- `disk` (Number) Worker node boot disk size. If unspecified or 0, size is defined by OS image size.
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ description: |-
|
|||||||
- `auto_start` (Boolean) Flag for redeploy compute
|
- `auto_start` (Boolean) Flag for redeploy compute
|
||||||
- `boot_disk_size` (Number) This compute instance boot disk size in GB. Make sure it is large enough to accomodate selected OS image.
|
- `boot_disk_size` (Number) This compute instance boot disk size in GB. Make sure it is large enough to accomodate selected OS image.
|
||||||
- `cd` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--cd))
|
- `cd` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--cd))
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `cloud_init` (String) Optional cloud_init parameters. Applied when creating new compute instance only, ignored in all other cases.
|
- `cloud_init` (String) Optional cloud_init parameters. Applied when creating new compute instance only, ignored in all other cases.
|
||||||
- `cpu_pin` (Boolean) Run VM on dedicated CPUs. To use this feature, the system must be pre-configured by allocating CPUs on the physical node.
|
- `cpu_pin` (Boolean) Run VM on dedicated CPUs. To use this feature, the system must be pre-configured by allocating CPUs on the physical node.
|
||||||
- `custom_fields` (String)
|
- `custom_fields` (String)
|
||||||
@@ -49,6 +50,7 @@ description: |-
|
|||||||
- `image_id` (Number) ID of the OS image to base this compute instance on.
|
- `image_id` (Number) ID of the OS image to base this compute instance on.
|
||||||
- `ipa_type` (String) compute purpose
|
- `ipa_type` (String) compute purpose
|
||||||
- `is` (String) system name
|
- `is` (String) system name
|
||||||
|
- `libvirt_settings` (Block Set) Configure libvirt virtio interface parameters. You can only delete values locally. Data on the platform cannot be deleted. (see [below for nested schema](#nestedblock--libvirt_settings))
|
||||||
- `network` (Block Set, Max: 8) Optional network connection(s) for this compute. You may specify several network blocks, one for each connection. (see [below for nested schema](#nestedblock--network))
|
- `network` (Block Set, Max: 8) Optional network connection(s) for this compute. You may specify several network blocks, one for each connection. (see [below for nested schema](#nestedblock--network))
|
||||||
- `numa_affinity` (String) Rule for VM placement with NUMA affinity.
|
- `numa_affinity` (String) Rule for VM placement with NUMA affinity.
|
||||||
- `pause` (Boolean)
|
- `pause` (Boolean)
|
||||||
@@ -57,7 +59,6 @@ description: |-
|
|||||||
- `pin_to_stack` (Boolean)
|
- `pin_to_stack` (Boolean)
|
||||||
- `pool` (String) Pool to use if sepId is set, can be also empty if needed to be chosen by system.
|
- `pool` (String) Pool to use if sepId is set, can be also empty if needed to be chosen by system.
|
||||||
- `port_forwarding` (Block Set) (see [below for nested schema](#nestedblock--port_forwarding))
|
- `port_forwarding` (Block Set) (see [below for nested schema](#nestedblock--port_forwarding))
|
||||||
- `reason` (String) reason for action
|
|
||||||
- `reset` (Boolean)
|
- `reset` (Boolean)
|
||||||
- `restore` (Boolean)
|
- `restore` (Boolean)
|
||||||
- `rollback` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--rollback))
|
- `rollback` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--rollback))
|
||||||
@@ -87,6 +88,7 @@ description: |-
|
|||||||
- `computeci_id` (Number)
|
- `computeci_id` (Number)
|
||||||
- `created_by` (String)
|
- `created_by` (String)
|
||||||
- `created_time` (Number)
|
- `created_time` (Number)
|
||||||
|
- `delete_async_mode` (Boolean) async mode
|
||||||
- `deleted_by` (String)
|
- `deleted_by` (String)
|
||||||
- `deleted_time` (Number)
|
- `deleted_time` (Number)
|
||||||
- `devices` (String)
|
- `devices` (String)
|
||||||
@@ -164,10 +166,6 @@ Required:
|
|||||||
|
|
||||||
- `cdrom_id` (Number)
|
- `cdrom_id` (Number)
|
||||||
|
|
||||||
Optional:
|
|
||||||
|
|
||||||
- `reason` (String) reason for action
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedblock--disks"></a>
|
<a id="nestedblock--disks"></a>
|
||||||
### Nested Schema for `disks`
|
### Nested Schema for `disks`
|
||||||
@@ -185,7 +183,6 @@ Optional:
|
|||||||
- `node_ids` (Set of Number)
|
- `node_ids` (Set of Number)
|
||||||
- `permanently` (Boolean) Disk deletion status
|
- `permanently` (Boolean) Disk deletion status
|
||||||
- `pool` (String) Pool name; by default will be chosen automatically
|
- `pool` (String) Pool name; by default will be chosen automatically
|
||||||
- `reason` (String) reason for action
|
|
||||||
- `sep_id` (Number) Storage endpoint provider ID; by default the same with boot disk
|
- `sep_id` (Number) Storage endpoint provider ID; by default the same with boot disk
|
||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
@@ -196,6 +193,24 @@ Read-Only:
|
|||||||
- `size_used` (Number)
|
- `size_used` (Number)
|
||||||
|
|
||||||
|
|
||||||
|
<a id="nestedblock--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `libvirt_settings`
|
||||||
|
|
||||||
|
Required:
|
||||||
|
|
||||||
|
- `net_id` (Number) ID of the network
|
||||||
|
- `net_type` (String) Type of the network
|
||||||
|
|
||||||
|
Optional:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedblock--network"></a>
|
<a id="nestedblock--network"></a>
|
||||||
### Nested Schema for `network`
|
### Nested Schema for `network`
|
||||||
|
|
||||||
@@ -207,6 +222,7 @@ Required:
|
|||||||
Optional:
|
Optional:
|
||||||
|
|
||||||
- `ip_address` (String) Optional IP address to assign to this connection. This IP should belong to the selected network and free for use.
|
- `ip_address` (String) Optional IP address to assign to this connection. This IP should belong to the selected network and free for use.
|
||||||
|
- `mtu` (Number) Maximum transmission unit, used only for DPDK type, must be 1-9216
|
||||||
- `weight` (Number) weight the network if you need to sort network list, the smallest attach first. zero or null weight attach last
|
- `weight` (Number) weight the network if you need to sort network list, the smallest attach first. zero or null weight attach last
|
||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
@@ -226,7 +242,6 @@ Optional:
|
|||||||
|
|
||||||
- `local_port` (Number)
|
- `local_port` (Number)
|
||||||
- `public_port_end` (Number)
|
- `public_port_end` (Number)
|
||||||
- `reason` (String) reason for action
|
|
||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
@@ -297,6 +312,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -304,8 +320,10 @@ Read-Only:
|
|||||||
- `flip_group_id` (Number)
|
- `flip_group_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_type` (String)
|
- `net_type` (String)
|
||||||
@@ -317,6 +335,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--interfaces--qos"></a>
|
<a id="nestedobjatt--interfaces--qos"></a>
|
||||||
### Nested Schema for `interfaces.qos`
|
### Nested Schema for `interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,6 @@ description: |-
|
|||||||
- `ipcidr` (String) Address of the netowrk inside the private network segment (aka ViNS) if def_net_type=PRIVATE
|
- `ipcidr` (String) Address of the netowrk inside the private network segment (aka ViNS) if def_net_type=PRIVATE
|
||||||
- `owner` (String) username - owner of this RG. Leave blank to set current user as owner
|
- `owner` (String) username - owner of this RG. Leave blank to set current user as owner
|
||||||
- `permanently` (Boolean) flag to permanently delete resource group
|
- `permanently` (Boolean) flag to permanently delete resource group
|
||||||
- `reason` (String)
|
|
||||||
- `register_computes` (Boolean) Register computes in registration system
|
- `register_computes` (Boolean) Register computes in registration system
|
||||||
- `resource_limits` (Block List, Max: 1) (see [below for nested schema](#nestedblock--resource_limits))
|
- `resource_limits` (Block List, Max: 1) (see [below for nested schema](#nestedblock--resource_limits))
|
||||||
- `restore` (Boolean) restore deleted rg
|
- `restore` (Boolean) restore deleted rg
|
||||||
@@ -74,10 +73,6 @@ Required:
|
|||||||
- `right` (String) Access rights to set, one of 'R', 'RCX' or 'ARCXDU'
|
- `right` (String) Access rights to set, one of 'R', 'RCX' or 'ARCXDU'
|
||||||
- `user` (String) User or group name to grant access
|
- `user` (String) User or group name to grant access
|
||||||
|
|
||||||
Optional:
|
|
||||||
|
|
||||||
- `reason` (String) Reason for action
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedblock--def_net"></a>
|
<a id="nestedblock--def_net"></a>
|
||||||
### Nested Schema for `def_net`
|
### Nested Schema for `def_net`
|
||||||
@@ -89,7 +84,6 @@ Required:
|
|||||||
Optional:
|
Optional:
|
||||||
|
|
||||||
- `net_id` (Number) Network segment ID. If netType is PUBLIC and netId is 0 then default external network segment will be selected. If netType is PRIVATE and netId=0, the first ViNS defined for this RG will be selected. Otherwise, netId identifies either existing external network segment or ViNS.
|
- `net_id` (Number) Network segment ID. If netType is PUBLIC and netId is 0 then default external network segment will be selected. If netType is PRIVATE and netId=0, the first ViNS defined for this RG will be selected. Otherwise, netId identifies either existing external network segment or ViNS.
|
||||||
- `reason` (String) Reason for action
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedblock--resource_limits"></a>
|
<a id="nestedblock--resource_limits"></a>
|
||||||
|
|||||||
@@ -35,7 +35,6 @@ description: |-
|
|||||||
- `nat_rule` (Block List) (see [below for nested schema](#nestedblock--nat_rule))
|
- `nat_rule` (Block List) (see [below for nested schema](#nestedblock--nat_rule))
|
||||||
- `permanently` (Boolean) permanently for delete request
|
- `permanently` (Boolean) permanently for delete request
|
||||||
- `pre_reservations_num` (Number)
|
- `pre_reservations_num` (Number)
|
||||||
- `reason` (String)
|
|
||||||
- `rg_id` (Number)
|
- `rg_id` (Number)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
- `vins_id` (Number) vins id
|
- `vins_id` (Number) vins id
|
||||||
@@ -98,7 +97,6 @@ Optional:
|
|||||||
- `compute_id` (Number)
|
- `compute_id` (Number)
|
||||||
- `ip_addr` (String)
|
- `ip_addr` (String)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
- `reason` (String)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedblock--nat_rule"></a>
|
<a id="nestedblock--nat_rule"></a>
|
||||||
@@ -206,6 +204,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -213,8 +212,10 @@ Read-Only:
|
|||||||
- `flipgroup_id` (Number)
|
- `flipgroup_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--vnf_dev--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_mask` (Number)
|
- `net_mask` (Number)
|
||||||
@@ -226,6 +227,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--vnf_dev--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `vnf_dev.interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
||||||
### Nested Schema for `vnf_dev.interfaces.qos`
|
### Nested Schema for `vnf_dev.interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -29,8 +29,6 @@ description: |-
|
|||||||
- `enabled_stacks` (List of Number)
|
- `enabled_stacks` (List of Number)
|
||||||
- `hot_resize` (Boolean) Does this machine supports hot resize
|
- `hot_resize` (Boolean) Does this machine supports hot resize
|
||||||
- `password` (String) Optional password for the image
|
- `password` (String) Optional password for the image
|
||||||
- `permanently` (Boolean) Whether to completely delete the image
|
|
||||||
- `reason` (String)
|
|
||||||
- `shared_with` (List of Number)
|
- `shared_with` (List of Number)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
- `username` (String) Optional username for the image
|
- `username` (String) Optional username for the image
|
||||||
@@ -38,7 +36,7 @@ description: |-
|
|||||||
### Read-Only
|
### Read-Only
|
||||||
|
|
||||||
- `acl` (List of Object) (see [below for nested schema](#nestedatt--acl))
|
- `acl` (List of Object) (see [below for nested schema](#nestedatt--acl))
|
||||||
- `architecture` (String) binary architecture of this image, one of X86_64 of PPC64_LE
|
- `architecture` (String) binary architecture of this image, one of X86_64
|
||||||
- `boot_type` (String) Boot type of image bios or uefi
|
- `boot_type` (String) Boot type of image bios or uefi
|
||||||
- `ckey` (String)
|
- `ckey` (String)
|
||||||
- `deleted_time` (Number)
|
- `deleted_time` (Number)
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ description: |-
|
|||||||
- `iotune` (Block List, Max: 1) (see [below for nested schema](#nestedblock--iotune))
|
- `iotune` (Block List, Max: 1) (see [below for nested schema](#nestedblock--iotune))
|
||||||
- `permanently` (Boolean) Whether to completely delete the disk, works only with non attached disks
|
- `permanently` (Boolean) Whether to completely delete the disk, works only with non attached disks
|
||||||
- `pool` (String) Pool for disk location
|
- `pool` (String) Pool for disk location
|
||||||
- `reason` (String) Reason for deletion
|
|
||||||
- `sep_id` (Number) Storage endpoint provider ID to create disk
|
- `sep_id` (Number) Storage endpoint provider ID to create disk
|
||||||
- `shareable` (Boolean)
|
- `shareable` (Boolean)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|||||||
@@ -1,137 +0,0 @@
|
|||||||
---
|
|
||||||
# generated by https://github.com/hashicorp/terraform-plugin-docs
|
|
||||||
page_title: "decort_disk_replication Resource - terraform-provider-decort"
|
|
||||||
subcategory: ""
|
|
||||||
description: |-
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# decort_disk_replication (Resource)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- schema generated by tfplugindocs -->
|
|
||||||
## Schema
|
|
||||||
|
|
||||||
### Required
|
|
||||||
|
|
||||||
- `disk_id` (Number) Id of primary disk
|
|
||||||
- `disk_name` (String) Name of disk replica
|
|
||||||
- `pool_name` (String) Pool for disk location
|
|
||||||
- `sep_id` (Number) Storage endpoint provider ID to create disk replica
|
|
||||||
|
|
||||||
### Optional
|
|
||||||
|
|
||||||
- `detach` (Boolean) Detach disk from machine first
|
|
||||||
- `pause` (Boolean) Resume replication
|
|
||||||
- `permanently` (Boolean) Delete disk permanently
|
|
||||||
- `reason` (String) Reason for disk deletion
|
|
||||||
- `reverse` (Boolean) Reverse replication
|
|
||||||
- `start` (Boolean) Start/Stop replication
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
|
||||||
|
|
||||||
### Read-Only
|
|
||||||
|
|
||||||
- `account_id` (Number) The unique ID of the subscriber-owner of the disk
|
|
||||||
- `account_name` (String) The name of the subscriber '(account') to whom this disk belongs
|
|
||||||
- `acl` (String)
|
|
||||||
- `computes` (List of Object) (see [below for nested schema](#nestedatt--computes))
|
|
||||||
- `created_time` (Number) Created time
|
|
||||||
- `deleted_time` (Number) Deleted time
|
|
||||||
- `desc` (String) Description of disk
|
|
||||||
- `destruction_time` (Number) Time of final deletion
|
|
||||||
- `devicename` (String) Name of the device
|
|
||||||
- `gid` (Number) ID of the grid (platform)
|
|
||||||
- `id` (String) The ID of this resource.
|
|
||||||
- `image_id` (Number) Image ID
|
|
||||||
- `images` (List of String) IDs of images using the disk
|
|
||||||
- `iotune` (List of Object) (see [below for nested schema](#nestedatt--iotune))
|
|
||||||
- `order` (Number) Disk order
|
|
||||||
- `params` (String) Disk params
|
|
||||||
- `parent_id` (Number) ID of the parent disk
|
|
||||||
- `pci_slot` (Number) ID of the pci slot to which the disk is connected
|
|
||||||
- `present_to` (List of Number)
|
|
||||||
- `purge_time` (Number) Time of the last deletion attempt
|
|
||||||
- `replica_disk_id` (Number) Id of replica disk
|
|
||||||
- `replication` (List of Object) Replication status (see [below for nested schema](#nestedatt--replication))
|
|
||||||
- `res_id` (String) Resource ID
|
|
||||||
- `res_name` (String) Name of the resource
|
|
||||||
- `role` (String) Disk role
|
|
||||||
- `sep_type` (String) Type SEP. Defines the type of storage system and contains one of the values set in the cloud platform
|
|
||||||
- `shareable` (Boolean)
|
|
||||||
- `size_max` (Number) Size in GB
|
|
||||||
- `size_used` (Number) Number of used space, in GB
|
|
||||||
- `snapshots` (List of Object) (see [below for nested schema](#nestedatt--snapshots))
|
|
||||||
- `status` (String) Disk status
|
|
||||||
- `status_replication` (String) Status of replication
|
|
||||||
- `tech_status` (String) Technical status of the disk
|
|
||||||
- `type` (String) The type of disk in terms of its role in compute: 'B=Boot, D=Data, T=Temp'
|
|
||||||
- `vmid` (Number) Virtual Machine ID (Deprecated)
|
|
||||||
|
|
||||||
<a id="nestedblock--timeouts"></a>
|
|
||||||
### Nested Schema for `timeouts`
|
|
||||||
|
|
||||||
Optional:
|
|
||||||
|
|
||||||
- `create` (String)
|
|
||||||
- `default` (String)
|
|
||||||
- `delete` (String)
|
|
||||||
- `read` (String)
|
|
||||||
- `update` (String)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--computes"></a>
|
|
||||||
### Nested Schema for `computes`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `compute_id` (String)
|
|
||||||
- `compute_name` (String)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--iotune"></a>
|
|
||||||
### Nested Schema for `iotune`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `read_bytes_sec` (Number)
|
|
||||||
- `read_bytes_sec_max` (Number)
|
|
||||||
- `read_iops_sec` (Number)
|
|
||||||
- `read_iops_sec_max` (Number)
|
|
||||||
- `size_iops_sec` (Number)
|
|
||||||
- `total_bytes_sec` (Number)
|
|
||||||
- `total_bytes_sec_max` (Number)
|
|
||||||
- `total_iops_sec` (Number)
|
|
||||||
- `total_iops_sec_max` (Number)
|
|
||||||
- `write_bytes_sec` (Number)
|
|
||||||
- `write_bytes_sec_max` (Number)
|
|
||||||
- `write_iops_sec` (Number)
|
|
||||||
- `write_iops_sec_max` (Number)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--replication"></a>
|
|
||||||
### Nested Schema for `replication`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `disk_id` (Number)
|
|
||||||
- `pool_id` (String)
|
|
||||||
- `role` (String)
|
|
||||||
- `self_volume_id` (String)
|
|
||||||
- `storage_id` (String)
|
|
||||||
- `volume_id` (String)
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedatt--snapshots"></a>
|
|
||||||
### Nested Schema for `snapshots`
|
|
||||||
|
|
||||||
Read-Only:
|
|
||||||
|
|
||||||
- `guid` (String)
|
|
||||||
- `label` (String)
|
|
||||||
- `res_id` (String)
|
|
||||||
- `snap_set_guid` (String)
|
|
||||||
- `snap_set_time` (Number)
|
|
||||||
- `timestamp` (Number)
|
|
||||||
@@ -26,13 +26,12 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `architecture` (String) binary architecture of this image, one of X86_64 of PPC64_LE
|
- `architecture` (String) binary architecture of this image, one of X86_64
|
||||||
- `hot_resize` (Boolean) Does this machine supports hot resize
|
- `hot_resize` (Boolean) Does this machine supports hot resize
|
||||||
- `image_id` (Number) image id
|
- `image_id` (Number) image id
|
||||||
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
- `network_interface_naming` (String) select a network interface naming pattern for your Linux machine. eth - onboard, ens - pci slot naming
|
||||||
- `password` (String) Optional password for the image
|
- `password` (String) Optional password for the image
|
||||||
- `password_dl` (String) password for upload binary media
|
- `password_dl` (String) password for upload binary media
|
||||||
- `permanently` (Boolean) whether to completely delete the image
|
|
||||||
- `pool_name` (String) pool for image create
|
- `pool_name` (String) pool for image create
|
||||||
- `sep_id` (Number) storage endpoint provider ID
|
- `sep_id` (Number) storage endpoint provider ID
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ description: |-
|
|||||||
- `async_mode` (Boolean) create an image in async/sync mode
|
- `async_mode` (Boolean) create an image in async/sync mode
|
||||||
- `hot_resize` (Boolean) Does this machine supports hot resize
|
- `hot_resize` (Boolean) Does this machine supports hot resize
|
||||||
- `password` (String) Optional password for the image
|
- `password` (String) Optional password for the image
|
||||||
- `permanently` (Boolean) whether to completely delete the image
|
|
||||||
- `pool_name` (String) pool for image create
|
- `pool_name` (String) pool for image create
|
||||||
- `sep_id` (Number) storage endpoint provider ID
|
- `sep_id` (Number) storage endpoint provider ID
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|||||||
@@ -17,9 +17,10 @@ description: |-
|
|||||||
|
|
||||||
### Required
|
### Required
|
||||||
|
|
||||||
- `architecture` (String) binary architecture of this image, one of X86_64 of PPC64_LE
|
- `architecture` (String) binary architecture of this image, one of X86_64
|
||||||
- `boot_type` (String) Boot type of image BIOS or UEFI
|
- `boot_type` (String) Boot type of image BIOS or UEFI
|
||||||
- `disk_id` (Number) Disk Id
|
- `disk_id` (Number) Disk Id
|
||||||
|
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
||||||
- `name` (String) Name of the rescue disk
|
- `name` (String) Name of the rescue disk
|
||||||
- `type` (String) Image type linux, windows or other
|
- `type` (String) Image type linux, windows or other
|
||||||
|
|
||||||
@@ -28,10 +29,8 @@ description: |-
|
|||||||
- `account_id` (Number) AccountId to make the image exclusive
|
- `account_id` (Number) AccountId to make the image exclusive
|
||||||
- `async_mode` (Boolean) create an image in async/sync mode
|
- `async_mode` (Boolean) create an image in async/sync mode
|
||||||
- `bootable` (Boolean) bootable image
|
- `bootable` (Boolean) bootable image
|
||||||
- `drivers` (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
|
|
||||||
- `hot_resize` (Boolean) Does this machine supports hot resize
|
- `hot_resize` (Boolean) Does this machine supports hot resize
|
||||||
- `password` (String) Optional password for the image
|
- `password` (String) Optional password for the image
|
||||||
- `permanently` (Boolean) whether to completely delete the image
|
|
||||||
- `pool_name` (String) pool for image create
|
- `pool_name` (String) pool for image create
|
||||||
- `sep_id` (Number) storage endpoint provider ID
|
- `sep_id` (Number) storage endpoint provider ID
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|||||||
@@ -22,7 +22,6 @@ description: |-
|
|||||||
|
|
||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `permanently` (Boolean) whether to completely delete the image
|
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ description: |-
|
|||||||
|
|
||||||
- `additional_sans` (List of String) Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names
|
- `additional_sans` (List of String) Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names
|
||||||
- `annotations` (List of String)
|
- `annotations` (List of String)
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `cloud_init` (String) Meta data for working group computes, format YAML 'user_data': 1111
|
- `cloud_init` (String) Meta data for working group computes, format YAML 'user_data': 1111
|
||||||
- `cluster_config` (String) is used to define global settings and configurations for the entire cluster. It includes parameters such as cluster name, DNS settings, authentication methods, and other cluster-wide configurations. insert a valid JSON string with all levels of nesting.
|
- `cluster_config` (String) is used to define global settings and configurations for the entire cluster. It includes parameters such as cluster name, DNS settings, authentication methods, and other cluster-wide configurations. insert a valid JSON string with all levels of nesting.
|
||||||
- `desc` (String) Text description of this instance.
|
- `desc` (String) Text description of this instance.
|
||||||
@@ -142,6 +143,7 @@ Required:
|
|||||||
Optional:
|
Optional:
|
||||||
|
|
||||||
- `annotations` (List of String)
|
- `annotations` (List of String)
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `labels` (List of String)
|
- `labels` (List of String)
|
||||||
- `sep_id` (Number)
|
- `sep_id` (Number)
|
||||||
- `sep_pool` (String)
|
- `sep_pool` (String)
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ description: |-
|
|||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `additional_sans` (List of String) Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names
|
- `additional_sans` (List of String) Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `cluster_config` (String) is used to define global settings and configurations for the entire cluster. It includes parameters such as cluster name, DNS settings, authentication methods, and other cluster-wide configurations. insert a valid JSON string with all levels of nesting.
|
- `cluster_config` (String) is used to define global settings and configurations for the entire cluster. It includes parameters such as cluster name, DNS settings, authentication methods, and other cluster-wide configurations. insert a valid JSON string with all levels of nesting.
|
||||||
- `cpu` (Number) Node CPU count.
|
- `cpu` (Number) Node CPU count.
|
||||||
- `desc` (String) Text description of this instance.
|
- `desc` (String) Text description of this instance.
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ description: |-
|
|||||||
### Optional
|
### Optional
|
||||||
|
|
||||||
- `annotations` (List of String)
|
- `annotations` (List of String)
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `cloud_init` (String)
|
- `cloud_init` (String)
|
||||||
- `cpu` (Number) Worker node CPU count.
|
- `cpu` (Number) Worker node CPU count.
|
||||||
- `disk` (Number) Worker node boot disk size. If unspecified or 0, size is defined by OS image size.
|
- `disk` (Number) Worker node boot disk size. If unspecified or 0, size is defined by OS image size.
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ description: |-
|
|||||||
- `auto_start` (Boolean) Flag for redeploy compute
|
- `auto_start` (Boolean) Flag for redeploy compute
|
||||||
- `boot_disk_size` (Number) This compute instance boot disk size in GB. Make sure it is large enough to accomodate selected OS image.
|
- `boot_disk_size` (Number) This compute instance boot disk size in GB. Make sure it is large enough to accomodate selected OS image.
|
||||||
- `cd` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--cd))
|
- `cd` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--cd))
|
||||||
|
- `chipset` (String) Type of the emulated system.
|
||||||
- `cloud_init` (String) Optional cloud_init parameters. Applied when creating new compute instance only, ignored in all other cases.
|
- `cloud_init` (String) Optional cloud_init parameters. Applied when creating new compute instance only, ignored in all other cases.
|
||||||
- `cpu_pin` (Boolean) Run VM on dedicated CPUs. To use this feature, the system must be pre-configured by allocating CPUs on the physical node.
|
- `cpu_pin` (Boolean) Run VM on dedicated CPUs. To use this feature, the system must be pre-configured by allocating CPUs on the physical node.
|
||||||
- `custom_fields` (String)
|
- `custom_fields` (String)
|
||||||
@@ -59,6 +60,7 @@ description: |-
|
|||||||
- `rollback` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--rollback))
|
- `rollback` (Block Set, Max: 1) (see [below for nested schema](#nestedblock--rollback))
|
||||||
- `sep_id` (Number) ID of SEP to create bootDisk on. Uses image's sepId if not set.
|
- `sep_id` (Number) ID of SEP to create bootDisk on. Uses image's sepId if not set.
|
||||||
- `snapshot` (Block Set) (see [below for nested schema](#nestedblock--snapshot))
|
- `snapshot` (Block Set) (see [below for nested schema](#nestedblock--snapshot))
|
||||||
|
- `snapshot_delete_async` (Boolean)
|
||||||
- `started` (Boolean) Is compute started.
|
- `started` (Boolean) Is compute started.
|
||||||
- `stateless` (Boolean) Compute will be stateless (SVA_KVM_X86) if set to True
|
- `stateless` (Boolean) Compute will be stateless (SVA_KVM_X86) if set to True
|
||||||
- `tags` (Block Set) (see [below for nested schema](#nestedblock--tags))
|
- `tags` (Block Set) (see [below for nested schema](#nestedblock--tags))
|
||||||
@@ -194,6 +196,7 @@ Required:
|
|||||||
Optional:
|
Optional:
|
||||||
|
|
||||||
- `ip_address` (String) Optional IP address to assign to this connection. This IP should belong to the selected network and free for use.
|
- `ip_address` (String) Optional IP address to assign to this connection. This IP should belong to the selected network and free for use.
|
||||||
|
- `mtu` (Number) Maximum transmission unit, used only for DPDK type, must be 1-9216
|
||||||
- `weight` (Number) weight the network if you need to sort network list, the smallest attach first. zero or null weight attach last
|
- `weight` (Number) weight the network if you need to sort network list, the smallest attach first. zero or null weight attach last
|
||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
@@ -285,6 +288,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -292,8 +296,10 @@ Read-Only:
|
|||||||
- `flip_group_id` (Number)
|
- `flip_group_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_type` (String)
|
- `net_type` (String)
|
||||||
@@ -305,6 +311,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--interfaces--qos"></a>
|
<a id="nestedobjatt--interfaces--qos"></a>
|
||||||
### Nested Schema for `interfaces.qos`
|
### Nested Schema for `interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
@@ -35,10 +35,10 @@ description: |-
|
|||||||
- `owner` (String)
|
- `owner` (String)
|
||||||
- `permanently` (Boolean) Set to True if you want force delete non-empty RG
|
- `permanently` (Boolean) Set to True if you want force delete non-empty RG
|
||||||
- `quota` (Block List, Max: 1) Quota settings for this resource group. (see [below for nested schema](#nestedblock--quota))
|
- `quota` (Block List, Max: 1) Quota settings for this resource group. (see [below for nested schema](#nestedblock--quota))
|
||||||
- `reason` (String) Set to True if you want force delete non-empty RG
|
|
||||||
- `register_computes` (Boolean) Register computes in registration system
|
- `register_computes` (Boolean) Register computes in registration system
|
||||||
- `restore` (Boolean)
|
- `restore` (Boolean)
|
||||||
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
|
||||||
|
- `uniq_pools` (List of String)
|
||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|
||||||
@@ -59,7 +59,6 @@ description: |-
|
|||||||
- `rg_id` (Number)
|
- `rg_id` (Number)
|
||||||
- `secret` (String)
|
- `secret` (String)
|
||||||
- `status` (String) Current status of this resource group.
|
- `status` (String) Current status of this resource group.
|
||||||
- `uniq_pools` (List of String)
|
|
||||||
- `updated_by` (String)
|
- `updated_by` (String)
|
||||||
- `updated_time` (Number)
|
- `updated_time` (Number)
|
||||||
- `vins` (List of Number) List of VINs deployed in this resource group.
|
- `vins` (List of Number) List of VINs deployed in this resource group.
|
||||||
@@ -73,10 +72,6 @@ Required:
|
|||||||
- `right` (String) Access rights to set, one of 'R', 'RCX' or 'ARCXDU'
|
- `right` (String) Access rights to set, one of 'R', 'RCX' or 'ARCXDU'
|
||||||
- `user` (String) User or group name to grant access
|
- `user` (String) User or group name to grant access
|
||||||
|
|
||||||
Optional:
|
|
||||||
|
|
||||||
- `reason` (String) Reason for action
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedblock--def_net"></a>
|
<a id="nestedblock--def_net"></a>
|
||||||
### Nested Schema for `def_net`
|
### Nested Schema for `def_net`
|
||||||
@@ -88,7 +83,6 @@ Required:
|
|||||||
Optional:
|
Optional:
|
||||||
|
|
||||||
- `net_id` (Number) Network segment ID. If netType is PUBLIC and netId is 0 then default external network segment will be selected. If netType is PRIVATE and netId=0, the first ViNS defined for this RG will be selected. Otherwise, netId identifies either existing external network segment or ViNS.
|
- `net_id` (Number) Network segment ID. If netType is PUBLIC and netId is 0 then default external network segment will be selected. If netType is PRIVATE and netId=0, the first ViNS defined for this RG will be selected. Otherwise, netId identifies either existing external network segment or ViNS.
|
||||||
- `reason` (String) Reason for action
|
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedblock--quota"></a>
|
<a id="nestedblock--quota"></a>
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ description: |-
|
|||||||
|
|
||||||
### Read-Only
|
### Read-Only
|
||||||
|
|
||||||
|
- `delete_async_mode` (Boolean) async mode
|
||||||
- `disks` (List of Number)
|
- `disks` (List of Number)
|
||||||
- `guid` (String) guid of the snapshot
|
- `guid` (String) guid of the snapshot
|
||||||
- `id` (String) The ID of this resource.
|
- `id` (String) The ID of this resource.
|
||||||
|
|||||||
@@ -202,6 +202,7 @@ Read-Only:
|
|||||||
|
|
||||||
Read-Only:
|
Read-Only:
|
||||||
|
|
||||||
|
- `bus_number` (Number)
|
||||||
- `conn_id` (Number)
|
- `conn_id` (Number)
|
||||||
- `conn_type` (String)
|
- `conn_type` (String)
|
||||||
- `def_gw` (String)
|
- `def_gw` (String)
|
||||||
@@ -209,8 +210,10 @@ Read-Only:
|
|||||||
- `flipgroup_id` (Number)
|
- `flipgroup_id` (Number)
|
||||||
- `guid` (String)
|
- `guid` (String)
|
||||||
- `ip_address` (String)
|
- `ip_address` (String)
|
||||||
|
- `libvirt_settings` (List of Object) (see [below for nested schema](#nestedobjatt--vnf_dev--interfaces--libvirt_settings))
|
||||||
- `listen_ssh` (Boolean)
|
- `listen_ssh` (Boolean)
|
||||||
- `mac` (String)
|
- `mac` (String)
|
||||||
|
- `mtu` (Number)
|
||||||
- `name` (String)
|
- `name` (String)
|
||||||
- `net_id` (Number)
|
- `net_id` (Number)
|
||||||
- `net_mask` (Number)
|
- `net_mask` (Number)
|
||||||
@@ -222,6 +225,20 @@ Read-Only:
|
|||||||
- `type` (String)
|
- `type` (String)
|
||||||
- `vnfs` (List of Number)
|
- `vnfs` (List of Number)
|
||||||
|
|
||||||
|
<a id="nestedobjatt--vnf_dev--interfaces--libvirt_settings"></a>
|
||||||
|
### Nested Schema for `vnf_dev.interfaces.libvirt_settings`
|
||||||
|
|
||||||
|
Read-Only:
|
||||||
|
|
||||||
|
- `event_idx` (String)
|
||||||
|
- `guid` (String)
|
||||||
|
- `ioeventfd` (String)
|
||||||
|
- `queues` (Number)
|
||||||
|
- `rx_queue_size` (Number)
|
||||||
|
- `tx_queue_size` (Number)
|
||||||
|
- `txmode` (String)
|
||||||
|
|
||||||
|
|
||||||
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
<a id="nestedobjatt--vnf_dev--interfaces--qos"></a>
|
||||||
### Nested Schema for `vnf_dev.interfaces.qos`
|
### Nested Schema for `vnf_dev.interfaces.qos`
|
||||||
|
|
||||||
|
|||||||
4
go.mod
4
go.mod
@@ -8,7 +8,7 @@ require (
|
|||||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0
|
github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0
|
||||||
github.com/sirupsen/logrus v1.9.0
|
github.com/sirupsen/logrus v1.9.0
|
||||||
golang.org/x/net v0.23.0
|
golang.org/x/net v0.23.0
|
||||||
repository.basistech.ru/BASIS/decort-golang-sdk v1.8.3
|
repository.basistech.ru/BASIS/decort-golang-sdk v1.9.2
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
@@ -58,7 +58,6 @@ require (
|
|||||||
github.com/mattn/go-colorable v0.1.13 // indirect
|
github.com/mattn/go-colorable v0.1.13 // indirect
|
||||||
github.com/mattn/go-isatty v0.0.20 // indirect
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
||||||
github.com/mattn/go-runewidth v0.0.9 // indirect
|
github.com/mattn/go-runewidth v0.0.9 // indirect
|
||||||
github.com/mitchellh/cli v1.1.5 // indirect
|
|
||||||
github.com/mitchellh/copystructure v1.2.0 // indirect
|
github.com/mitchellh/copystructure v1.2.0 // indirect
|
||||||
github.com/mitchellh/go-testing-interface v1.14.1 // indirect
|
github.com/mitchellh/go-testing-interface v1.14.1 // indirect
|
||||||
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
|
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
|
||||||
@@ -66,7 +65,6 @@ require (
|
|||||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||||
github.com/oklog/run v1.1.0 // indirect
|
github.com/oklog/run v1.1.0 // indirect
|
||||||
github.com/posener/complete v1.2.3 // indirect
|
github.com/posener/complete v1.2.3 // indirect
|
||||||
github.com/russross/blackfriday v1.6.0 // indirect
|
|
||||||
github.com/shopspring/decimal v1.3.1 // indirect
|
github.com/shopspring/decimal v1.3.1 // indirect
|
||||||
github.com/spf13/cast v1.5.0 // indirect
|
github.com/spf13/cast v1.5.0 // indirect
|
||||||
github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect
|
github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect
|
||||||
|
|||||||
50
go.sum
50
go.sum
@@ -5,15 +5,11 @@ github.com/Kunde21/markdownfmt/v3 v3.1.0 h1:KiZu9LKs+wFFBQKhrZJrFZwtLnCCWJahL+S+
|
|||||||
github.com/Kunde21/markdownfmt/v3 v3.1.0/go.mod h1:tPXN1RTyOzJwhfHoon9wUr4HGYmWgVxSQN6VBJDkrVc=
|
github.com/Kunde21/markdownfmt/v3 v3.1.0/go.mod h1:tPXN1RTyOzJwhfHoon9wUr4HGYmWgVxSQN6VBJDkrVc=
|
||||||
github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI=
|
github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI=
|
||||||
github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU=
|
github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU=
|
||||||
github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs=
|
|
||||||
github.com/Masterminds/semver/v3 v3.2.0 h1:3MEsd0SM6jqZojhjLWWeBY+Kcjy9i6MQAeY7YgDP83g=
|
github.com/Masterminds/semver/v3 v3.2.0 h1:3MEsd0SM6jqZojhjLWWeBY+Kcjy9i6MQAeY7YgDP83g=
|
||||||
github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ=
|
github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ=
|
||||||
github.com/Masterminds/sprig/v3 v3.2.1/go.mod h1:UoaO7Yp8KlPnJIYWTFkMaqPUYKTfGFPhxNuwnnxkKlk=
|
|
||||||
github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA=
|
github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA=
|
||||||
github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM=
|
github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM=
|
||||||
github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=
|
github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=
|
||||||
github.com/ProtonMail/go-crypto v1.1.0-alpha.0 h1:nHGfwXmFvJrSR9xu8qL7BkO4DqTHXE9N5vPhgY2I+j0=
|
|
||||||
github.com/ProtonMail/go-crypto v1.1.0-alpha.0/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE=
|
|
||||||
github.com/ProtonMail/go-crypto v1.1.0-alpha.2 h1:bkyFVUP+ROOARdgCiJzNQo2V2kiB97LyUpzH9P6Hrlg=
|
github.com/ProtonMail/go-crypto v1.1.0-alpha.2 h1:bkyFVUP+ROOARdgCiJzNQo2V2kiB97LyUpzH9P6Hrlg=
|
||||||
github.com/ProtonMail/go-crypto v1.1.0-alpha.2/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE=
|
github.com/ProtonMail/go-crypto v1.1.0-alpha.2/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE=
|
||||||
github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo=
|
github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo=
|
||||||
@@ -21,7 +17,6 @@ github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki
|
|||||||
github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec=
|
github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec=
|
||||||
github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY=
|
github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY=
|
||||||
github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4=
|
github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4=
|
||||||
github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
|
|
||||||
github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI=
|
github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI=
|
||||||
github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
|
github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
|
||||||
github.com/bgentry/speakeasy v0.1.0 h1:ByYyxL9InA1OWqxJqqp2A5pYHUrCiAL6K3J+LKSsQkY=
|
github.com/bgentry/speakeasy v0.1.0 h1:ByYyxL9InA1OWqxJqqp2A5pYHUrCiAL6K3J+LKSsQkY=
|
||||||
@@ -36,7 +31,6 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs
|
|||||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc=
|
github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc=
|
||||||
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
|
|
||||||
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
|
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
|
||||||
github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM=
|
github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM=
|
||||||
github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE=
|
github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE=
|
||||||
@@ -45,7 +39,6 @@ github.com/gabriel-vasile/mimetype v1.4.2 h1:w5qFW6JKBz9Y393Y4q372O9A7cUSequkh1Q
|
|||||||
github.com/gabriel-vasile/mimetype v1.4.2/go.mod h1:zApsH/mKG4w07erKIaJPFiX0Tsq9BFQgN3qGY5GnNgA=
|
github.com/gabriel-vasile/mimetype v1.4.2/go.mod h1:zApsH/mKG4w07erKIaJPFiX0Tsq9BFQgN3qGY5GnNgA=
|
||||||
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI=
|
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI=
|
||||||
github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU=
|
github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU=
|
||||||
github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4=
|
|
||||||
github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys=
|
github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys=
|
||||||
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
|
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
|
||||||
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
|
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
|
||||||
@@ -69,7 +62,6 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN
|
|||||||
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
|
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
|
||||||
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
|
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
|
||||||
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||||
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
|
||||||
github.com/google/uuid v1.4.0 h1:MtMxsa51/r9yyhkyLsVeVt0B+BGQZzpQiTQ4eHZ8bc4=
|
github.com/google/uuid v1.4.0 h1:MtMxsa51/r9yyhkyLsVeVt0B+BGQZzpQiTQ4eHZ8bc4=
|
||||||
github.com/google/uuid v1.4.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
github.com/google/uuid v1.4.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||||
github.com/hashicorp/cli v1.1.6 h1:CMOV+/LJfL1tXCOKrgAX0uRKnzjj/mpmqNXloRSy2K8=
|
github.com/hashicorp/cli v1.1.6 h1:CMOV+/LJfL1tXCOKrgAX0uRKnzjj/mpmqNXloRSy2K8=
|
||||||
@@ -94,28 +86,18 @@ github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/
|
|||||||
github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
|
github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
|
||||||
github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8=
|
github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8=
|
||||||
github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
|
github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
|
||||||
github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek=
|
|
||||||
github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
|
||||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||||
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||||
github.com/hashicorp/hc-install v0.6.3 h1:yE/r1yJvWbtrJ0STwScgEnCanb0U9v7zp0Gbkmcoxqs=
|
|
||||||
github.com/hashicorp/hc-install v0.6.3/go.mod h1:KamGdbodYzlufbWh4r9NRo8y6GLHWZP2GBtdnms1Ln0=
|
|
||||||
github.com/hashicorp/hc-install v0.7.0 h1:Uu9edVqjKQxxuD28mR5TikkKDd/p55S8vzPC1659aBk=
|
github.com/hashicorp/hc-install v0.7.0 h1:Uu9edVqjKQxxuD28mR5TikkKDd/p55S8vzPC1659aBk=
|
||||||
github.com/hashicorp/hc-install v0.7.0/go.mod h1:ELmmzZlGnEcqoUMKUuykHaPCIR1sYLYX+KSggWSKZuA=
|
github.com/hashicorp/hc-install v0.7.0/go.mod h1:ELmmzZlGnEcqoUMKUuykHaPCIR1sYLYX+KSggWSKZuA=
|
||||||
github.com/hashicorp/hcl/v2 v2.19.1 h1://i05Jqznmb2EXqa39Nsvyan2o5XyMowW5fnCKW5RPI=
|
github.com/hashicorp/hcl/v2 v2.19.1 h1://i05Jqznmb2EXqa39Nsvyan2o5XyMowW5fnCKW5RPI=
|
||||||
github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE=
|
github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE=
|
||||||
github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y=
|
github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y=
|
||||||
github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64=
|
github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64=
|
||||||
github.com/hashicorp/terraform-exec v0.20.0 h1:DIZnPsqzPGuUnq6cH8jWcPunBfY+C+M8JyYF3vpnuEo=
|
|
||||||
github.com/hashicorp/terraform-exec v0.20.0/go.mod h1:ckKGkJWbsNqFKV1itgMnE0hY9IYf1HoiekpuN0eWoDw=
|
|
||||||
github.com/hashicorp/terraform-exec v0.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ=
|
github.com/hashicorp/terraform-exec v0.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ=
|
||||||
github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg=
|
github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg=
|
||||||
github.com/hashicorp/terraform-json v0.21.0 h1:9NQxbLNqPbEMze+S6+YluEdXgJmhQykRyRNd+zTI05U=
|
|
||||||
github.com/hashicorp/terraform-json v0.21.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk=
|
|
||||||
github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec=
|
github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec=
|
||||||
github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A=
|
github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A=
|
||||||
github.com/hashicorp/terraform-plugin-docs v0.13.0 h1:6e+VIWsVGb6jYJewfzq2ok2smPzZrt1Wlm9koLeKazY=
|
|
||||||
github.com/hashicorp/terraform-plugin-docs v0.13.0/go.mod h1:W0oCmHAjIlTHBbvtppWHe8fLfZ2BznQbuv8+UD8OucQ=
|
|
||||||
github.com/hashicorp/terraform-plugin-docs v0.19.4 h1:G3Bgo7J22OMtegIgn8Cd/CaSeyEljqjH3G39w28JK4c=
|
github.com/hashicorp/terraform-plugin-docs v0.19.4 h1:G3Bgo7J22OMtegIgn8Cd/CaSeyEljqjH3G39w28JK4c=
|
||||||
github.com/hashicorp/terraform-plugin-docs v0.19.4/go.mod h1:4pLASsatTmRynVzsjEhbXZ6s7xBlUw/2Kt0zfrq8HxA=
|
github.com/hashicorp/terraform-plugin-docs v0.19.4/go.mod h1:4pLASsatTmRynVzsjEhbXZ6s7xBlUw/2Kt0zfrq8HxA=
|
||||||
github.com/hashicorp/terraform-plugin-go v0.22.0 h1:1OS1Jk5mO0f5hrziWJGXXIxBrMe2j/B8E+DVGw43Xmc=
|
github.com/hashicorp/terraform-plugin-go v0.22.0 h1:1OS1Jk5mO0f5hrziWJGXXIxBrMe2j/B8E+DVGw43Xmc=
|
||||||
@@ -130,8 +112,6 @@ github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S
|
|||||||
github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc=
|
github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc=
|
||||||
github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE=
|
github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE=
|
||||||
github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ=
|
github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ=
|
||||||
github.com/huandu/xstrings v1.3.1/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
|
|
||||||
github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
|
|
||||||
github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
|
github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
|
||||||
github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU=
|
github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU=
|
||||||
github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
|
github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE=
|
||||||
@@ -149,12 +129,10 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
|||||||
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
|
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
|
||||||
github.com/leodido/go-urn v1.2.4 h1:XlAE/cm/ms7TE/VMVoduSpNBoyc2dOxHs5MZSwAN63Q=
|
github.com/leodido/go-urn v1.2.4 h1:XlAE/cm/ms7TE/VMVoduSpNBoyc2dOxHs5MZSwAN63Q=
|
||||||
github.com/leodido/go-urn v1.2.4/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4=
|
github.com/leodido/go-urn v1.2.4/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4=
|
||||||
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
|
|
||||||
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
|
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
|
||||||
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
|
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
|
||||||
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
|
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
|
||||||
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
|
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
|
||||||
github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
|
|
||||||
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
||||||
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
||||||
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
|
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
|
||||||
@@ -162,8 +140,6 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
|
|||||||
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
|
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
|
||||||
github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0=
|
github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0=
|
||||||
github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
|
github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
|
||||||
github.com/mitchellh/cli v1.1.5 h1:OxRIeJXpAMztws/XHlN2vu6imG5Dpq+j61AzAX5fLng=
|
|
||||||
github.com/mitchellh/cli v1.1.5/go.mod h1:v8+iFts2sPIKUV1ltktPXMCC8fumSKFItNcD2cLtRR4=
|
|
||||||
github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw=
|
github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw=
|
||||||
github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
|
github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
|
||||||
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
|
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
|
||||||
@@ -181,21 +157,15 @@ github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DV
|
|||||||
github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4=
|
github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4=
|
||||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||||
github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI=
|
|
||||||
github.com/posener/complete v1.2.3 h1:NP0eAhjcjImqslEwo/1hq7gpajME0fTLTezBKDqfXqo=
|
github.com/posener/complete v1.2.3 h1:NP0eAhjcjImqslEwo/1hq7gpajME0fTLTezBKDqfXqo=
|
||||||
github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s=
|
github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s=
|
||||||
github.com/rogpeppe/go-internal v1.6.1 h1:/FiVV8dS/e+YqF2JvO3yXRFbBLTIuSDkuC7aBOAvL+k=
|
|
||||||
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
|
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
|
||||||
github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww=
|
|
||||||
github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY=
|
|
||||||
github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ=
|
|
||||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8=
|
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8=
|
||||||
github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
|
github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
|
||||||
github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8=
|
github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8=
|
||||||
github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
|
github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
|
||||||
github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0=
|
github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0=
|
||||||
github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
|
github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
|
||||||
github.com/skeema/knownhosts v1.2.1 h1:SHWdIUa82uGZz+F+47k8SY4QhhI291cXCpopT1lK2AQ=
|
|
||||||
github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A=
|
github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A=
|
||||||
github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
|
github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
|
||||||
github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
|
github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
|
||||||
@@ -206,7 +176,6 @@ github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpE
|
|||||||
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
|
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
|
||||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
||||||
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
|
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
|
||||||
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
|
||||||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||||
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||||
github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals=
|
github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals=
|
||||||
@@ -226,26 +195,18 @@ github.com/yuin/goldmark v1.7.1 h1:3bajkSilaCbjdKVsKdZjZCLBNPL9pYzrCakKaf4U49U=
|
|||||||
github.com/yuin/goldmark v1.7.1/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E=
|
github.com/yuin/goldmark v1.7.1/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E=
|
||||||
github.com/yuin/goldmark-meta v1.1.0 h1:pWw+JLHGZe8Rk0EGsMVssiNb/AaPMHfSRszZeUeiOUc=
|
github.com/yuin/goldmark-meta v1.1.0 h1:pWw+JLHGZe8Rk0EGsMVssiNb/AaPMHfSRszZeUeiOUc=
|
||||||
github.com/yuin/goldmark-meta v1.1.0/go.mod h1:U4spWENafuA7Zyg+Lj5RqK/MF+ovMYtBvXi1lBb2VP0=
|
github.com/yuin/goldmark-meta v1.1.0/go.mod h1:U4spWENafuA7Zyg+Lj5RqK/MF+ovMYtBvXi1lBb2VP0=
|
||||||
github.com/zclconf/go-cty v1.14.2 h1:kTG7lqmBou0Zkx35r6HJHUQTvaRPr5bIAf3AoHS0izI=
|
|
||||||
github.com/zclconf/go-cty v1.14.2/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE=
|
|
||||||
github.com/zclconf/go-cty v1.14.4 h1:uXXczd9QDGsgu0i/QFR/hzI5NYCHLf6NQw/atrbnhq8=
|
github.com/zclconf/go-cty v1.14.4 h1:uXXczd9QDGsgu0i/QFR/hzI5NYCHLf6NQw/atrbnhq8=
|
||||||
github.com/zclconf/go-cty v1.14.4/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE=
|
github.com/zclconf/go-cty v1.14.4/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE=
|
||||||
go.abhg.dev/goldmark/frontmatter v0.2.0 h1:P8kPG0YkL12+aYk2yU3xHv4tcXzeVnN+gU0tJ5JnxRw=
|
go.abhg.dev/goldmark/frontmatter v0.2.0 h1:P8kPG0YkL12+aYk2yU3xHv4tcXzeVnN+gU0tJ5JnxRw=
|
||||||
go.abhg.dev/goldmark/frontmatter v0.2.0/go.mod h1:XqrEkZuM57djk7zrlRUB02x8I5J0px76YjkOzhB4YlU=
|
go.abhg.dev/goldmark/frontmatter v0.2.0/go.mod h1:XqrEkZuM57djk7zrlRUB02x8I5J0px76YjkOzhB4YlU=
|
||||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||||
golang.org/x/crypto v0.0.0-20200414173820-0848c9571904/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
|
||||||
golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
|
||||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||||
golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
|
golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
|
||||||
golang.org/x/crypto v0.19.0 h1:ENy+Az/9Y1vSrlrvBSyna3PITt4tiZLf7sgCjZBX7Wo=
|
|
||||||
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
|
|
||||||
golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA=
|
golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA=
|
||||||
golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs=
|
golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs=
|
||||||
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
|
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
|
||||||
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
|
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
|
||||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
||||||
golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8=
|
|
||||||
golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
|
||||||
golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA=
|
golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA=
|
||||||
golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||||
@@ -253,15 +214,12 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL
|
|||||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||||
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
|
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
|
||||||
golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY=
|
golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY=
|
||||||
golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c=
|
|
||||||
golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U=
|
|
||||||
golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs=
|
golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs=
|
||||||
golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
|
golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
|
||||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
||||||
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
@@ -275,8 +233,6 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc
|
|||||||
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y=
|
|
||||||
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
|
||||||
golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
|
golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
|
||||||
golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||||
@@ -288,8 +244,6 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
|||||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||||
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
|
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
|
||||||
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
||||||
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
|
|
||||||
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
|
|
||||||
golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk=
|
golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk=
|
||||||
golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
|
golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
|
||||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||||
@@ -319,5 +273,5 @@ gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
|||||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
repository.basistech.ru/BASIS/decort-golang-sdk v1.8.3 h1:fCwFvZR+HID7ie4Aap7cJd6SbuJ+4gBWysKaMQDCPgc=
|
repository.basistech.ru/BASIS/decort-golang-sdk v1.9.2 h1:MPH1tMQrDN1Gri4FrQP3cx60uR3uZioEDb707D88/7c=
|
||||||
repository.basistech.ru/BASIS/decort-golang-sdk v1.8.3/go.mod h1:OaUynHHuSjWMzpfyoL4au6oLcUogqUkPPBKA15pbHWo=
|
repository.basistech.ru/BASIS/decort-golang-sdk v1.9.2/go.mod h1:OaUynHHuSjWMzpfyoL4au6oLcUogqUkPPBKA15pbHWo=
|
||||||
|
|||||||
@@ -23,8 +23,10 @@ package provider
|
|||||||
import (
|
import (
|
||||||
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/account"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/account"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/audit"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/bservice"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/bservice"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/disks"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/disks"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/dpdknet"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/extnet"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/extnet"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/flipgroup"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/flipgroup"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/image"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudapi/image"
|
||||||
@@ -41,6 +43,7 @@ import (
|
|||||||
cb_account "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/account"
|
cb_account "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/account"
|
||||||
cb_audit "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/audit"
|
cb_audit "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/audit"
|
||||||
cb_disks "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/disks"
|
cb_disks "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/disks"
|
||||||
|
cb_dpdknet "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/dpdknet"
|
||||||
cb_extnet "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/extnet"
|
cb_extnet "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/extnet"
|
||||||
cb_flipgroup "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/flipgroup"
|
cb_flipgroup "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/flipgroup"
|
||||||
cb_grid "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/grid"
|
cb_grid "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/grid"
|
||||||
@@ -63,6 +66,7 @@ import (
|
|||||||
func newDataSourcesMap() map[string]*schema.Resource {
|
func newDataSourcesMap() map[string]*schema.Resource {
|
||||||
return map[string]*schema.Resource{
|
return map[string]*schema.Resource{
|
||||||
"decort_account": account.DataSourceAccount(),
|
"decort_account": account.DataSourceAccount(),
|
||||||
|
"decort_audit": audit.DataSourceAudit(),
|
||||||
"decort_resgroup": rg.DataSourceResgroup(),
|
"decort_resgroup": rg.DataSourceResgroup(),
|
||||||
"decort_kvmvm": kvmvm.DataSourceCompute(),
|
"decort_kvmvm": kvmvm.DataSourceCompute(),
|
||||||
"decort_kvmvm_list": kvmvm.DataSourceComputeList(),
|
"decort_kvmvm_list": kvmvm.DataSourceComputeList(),
|
||||||
@@ -127,6 +131,8 @@ func newDataSourcesMap() map[string]*schema.Resource {
|
|||||||
"decort_bservice_snapshot_list": bservice.DataSourceBasicServiceSnapshotList(),
|
"decort_bservice_snapshot_list": bservice.DataSourceBasicServiceSnapshotList(),
|
||||||
"decort_bservice_group": bservice.DataSourceBasicServiceGroup(),
|
"decort_bservice_group": bservice.DataSourceBasicServiceGroup(),
|
||||||
"decort_bservice_deleted_list": bservice.DataSourceBasicServiceDeletedList(),
|
"decort_bservice_deleted_list": bservice.DataSourceBasicServiceDeletedList(),
|
||||||
|
"decort_dpdknet": dpdknet.DataSourceDPDKNet(),
|
||||||
|
"decort_dpdknet_list": dpdknet.DataSourceDPDKNetList(),
|
||||||
"decort_extnet_list": extnet.DataSourceExtnetList(),
|
"decort_extnet_list": extnet.DataSourceExtnetList(),
|
||||||
"decort_extnet_computes_list": extnet.DataSourceExtnetComputesList(),
|
"decort_extnet_computes_list": extnet.DataSourceExtnetComputesList(),
|
||||||
"decort_extnet": extnet.DataSourceExtnet(),
|
"decort_extnet": extnet.DataSourceExtnet(),
|
||||||
@@ -168,6 +174,9 @@ func newDataSourcesMap() map[string]*schema.Resource {
|
|||||||
"decort_cb_audit": cb_audit.DataSourceAudit(),
|
"decort_cb_audit": cb_audit.DataSourceAudit(),
|
||||||
"decort_cb_audit_list": cb_audit.DataSourceAuditList(),
|
"decort_cb_audit_list": cb_audit.DataSourceAuditList(),
|
||||||
"decort_cb_audit_linked_jobs": cb_audit.DataSourceAuditLinkedJobs(),
|
"decort_cb_audit_linked_jobs": cb_audit.DataSourceAuditLinkedJobs(),
|
||||||
|
"decort_cb_audits_export_to_file": cb_audit.DataSourceAuditsToFile(),
|
||||||
|
"decort_cb_dpdknet": cb_dpdknet.DataSourceDPDKNet(),
|
||||||
|
"decort_cb_dpdknet_list": cb_dpdknet.DataSourceDPDKNetList(),
|
||||||
"decort_cb_extnet": cb_extnet.DataSourceExtnetCB(),
|
"decort_cb_extnet": cb_extnet.DataSourceExtnetCB(),
|
||||||
"decort_cb_extnet_list": cb_extnet.DataSourceExtnetListCB(),
|
"decort_cb_extnet_list": cb_extnet.DataSourceExtnetListCB(),
|
||||||
"decort_cb_extnet_default": cb_extnet.DataSourceExtnetDefaultCB(),
|
"decort_cb_extnet_default": cb_extnet.DataSourceExtnetDefaultCB(),
|
||||||
@@ -179,6 +188,7 @@ func newDataSourcesMap() map[string]*schema.Resource {
|
|||||||
"decort_cb_grid_post_status": cb_grid.DataSourceGridPostStatus(),
|
"decort_cb_grid_post_status": cb_grid.DataSourceGridPostStatus(),
|
||||||
"decort_cb_grid_get_diagnosis": cb_grid.DataSourceGridGetDiagnosis(),
|
"decort_cb_grid_get_diagnosis": cb_grid.DataSourceGridGetDiagnosis(),
|
||||||
"decort_cb_grid_post_diagnosis": cb_grid.DataSourceGridPostDiagnosis(),
|
"decort_cb_grid_post_diagnosis": cb_grid.DataSourceGridPostDiagnosis(),
|
||||||
|
"decort_cb_grid_get_settings": cb_grid.DataSourceGridGetSettings(),
|
||||||
"decort_cb_grid_list": cb_grid.DataSourceGridList(),
|
"decort_cb_grid_list": cb_grid.DataSourceGridList(),
|
||||||
"decort_cb_grid_list_emails": cb_grid.DataSourceGridListEmails(),
|
"decort_cb_grid_list_emails": cb_grid.DataSourceGridListEmails(),
|
||||||
"decort_cb_grid_list_consumption": cb_grid.DataSourceGridListConsumption(),
|
"decort_cb_grid_list_consumption": cb_grid.DataSourceGridListConsumption(),
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ import (
|
|||||||
|
|
||||||
cb_account "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/account"
|
cb_account "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/account"
|
||||||
cb_disks "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/disks"
|
cb_disks "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/disks"
|
||||||
|
cb_dpdknet "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/dpdknet"
|
||||||
cb_extnet "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/extnet"
|
cb_extnet "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/extnet"
|
||||||
cb_flipgroup "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/flipgroup"
|
cb_flipgroup "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/flipgroup"
|
||||||
cb_image "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/image"
|
cb_image "repository.basistech.ru/BASIS/terraform-provider-decort/internal/service/cloudbroker/image"
|
||||||
@@ -54,11 +55,11 @@ import (
|
|||||||
|
|
||||||
func newResourcesMap() map[string]*schema.Resource {
|
func newResourcesMap() map[string]*schema.Resource {
|
||||||
return map[string]*schema.Resource{
|
return map[string]*schema.Resource{
|
||||||
"decort_resgroup": rg.ResourceResgroup(),
|
"decort_resgroup": rg.ResourceResgroup(),
|
||||||
"decort_kvmvm": kvmvm.ResourceCompute(),
|
"decort_kvmvm": kvmvm.ResourceCompute(),
|
||||||
"decort_disk": disks.ResourceDisk(),
|
"decort_disk": disks.ResourceDisk(),
|
||||||
"decort_disk_snapshot": disks.ResourceDiskSnapshot(),
|
"decort_disk_snapshot": disks.ResourceDiskSnapshot(),
|
||||||
"decort_disk_replication": disks.ResourceDiskReplication(),
|
//"decort_disk_replication": disks.ResourceDiskReplication(),
|
||||||
"decort_vins": vins.ResourceVins(),
|
"decort_vins": vins.ResourceVins(),
|
||||||
"decort_pfw": pfw.ResourcePfw(),
|
"decort_pfw": pfw.ResourcePfw(),
|
||||||
"decort_k8s": k8s.ResourceK8s(),
|
"decort_k8s": k8s.ResourceK8s(),
|
||||||
@@ -80,12 +81,13 @@ func newResourcesMap() map[string]*schema.Resource {
|
|||||||
"decort_flipgroup": flipgroup.ResourceFlipgroup(),
|
"decort_flipgroup": flipgroup.ResourceFlipgroup(),
|
||||||
"decort_vins_static_route": vins.ResourceStaticRoute(),
|
"decort_vins_static_route": vins.ResourceStaticRoute(),
|
||||||
|
|
||||||
"decort_cb_account": cb_account.ResourceAccount(),
|
"decort_cb_account": cb_account.ResourceAccount(),
|
||||||
"decort_cb_extnet": cb_extnet.ResourceExtnetCB(),
|
"decort_cb_dpdknet": cb_dpdknet.ResourceDPDKNet(),
|
||||||
"decort_cb_extnet_static_route": cb_extnet.ResourceStaticRoute(),
|
"decort_cb_extnet": cb_extnet.ResourceExtnetCB(),
|
||||||
"decort_cb_disk": cb_disks.ResourceDisk(),
|
"decort_cb_extnet_static_route": cb_extnet.ResourceStaticRoute(),
|
||||||
"decort_cb_disk_snapshot": cb_disks.ResourceDiskSnapshot(),
|
"decort_cb_disk": cb_disks.ResourceDisk(),
|
||||||
"decort_cb_disk_replication": cb_disks.ResourceDiskReplication(),
|
"decort_cb_disk_snapshot": cb_disks.ResourceDiskSnapshot(),
|
||||||
|
//"decort_cb_disk_replication": cb_disks.ResourceDiskReplication(),
|
||||||
"decort_cb_image": cb_image.ResourceImage(),
|
"decort_cb_image": cb_image.ResourceImage(),
|
||||||
"decort_cb_image_from_blank_compute": cb_image.ResourceImageFromBlankCompute(),
|
"decort_cb_image_from_blank_compute": cb_image.ResourceImageFromBlankCompute(),
|
||||||
"decort_cb_image_from_platform_disk": cb_image.ResourceImageFromPlatformDisk(),
|
"decort_cb_image_from_platform_disk": cb_image.ResourceImageFromPlatformDisk(),
|
||||||
|
|||||||
@@ -126,6 +126,11 @@ func dataSourceAccountFlipGroupsListSchemaMake() map[string]*schema.Schema {
|
|||||||
Optional: true,
|
Optional: true,
|
||||||
Description: "Filter by flipgroup ID",
|
Description: "Filter by flipgroup ID",
|
||||||
},
|
},
|
||||||
|
"sort_by": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "sort by one of supported fields, format +|-(field)",
|
||||||
|
},
|
||||||
"page": {
|
"page": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
|
|||||||
@@ -315,9 +315,8 @@ func resourceAccountUpdate(ctx context.Context, d *schema.ResourceData, m interf
|
|||||||
userConv := user.(map[string]interface{})
|
userConv := user.(map[string]interface{})
|
||||||
|
|
||||||
req := account.DeleteUserRequest{
|
req := account.DeleteUserRequest{
|
||||||
AccountID: accountId,
|
AccountID: accountId,
|
||||||
UserID: userConv["user_id"].(string),
|
UserID: userConv["user_id"].(string),
|
||||||
RecursiveDelete: userConv["recursive_delete"].(bool),
|
|
||||||
}
|
}
|
||||||
_, err := c.CloudAPI().Account().DeleteUser(ctx, req)
|
_, err := c.CloudAPI().Account().DeleteUser(ctx, req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -381,8 +380,7 @@ func isChangedUser(els []interface{}, el interface{}) bool {
|
|||||||
elOldConv := elOld.(map[string]interface{})
|
elOldConv := elOld.(map[string]interface{})
|
||||||
elConv := el.(map[string]interface{})
|
elConv := el.(map[string]interface{})
|
||||||
if elOldConv["user_id"].(string) == elConv["user_id"].(string) &&
|
if elOldConv["user_id"].(string) == elConv["user_id"].(string) &&
|
||||||
(!strings.EqualFold(elOldConv["access_type"].(string), elConv["access_type"].(string)) ||
|
(!strings.EqualFold(elOldConv["access_type"].(string), elConv["access_type"].(string))) {
|
||||||
elOldConv["recursive_delete"].(bool) != elConv["recursive_delete"].(bool)) {
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -424,11 +422,6 @@ func resourceAccountSchemaMake() map[string]*schema.Schema {
|
|||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Required: true,
|
Required: true,
|
||||||
},
|
},
|
||||||
"recursive_delete": {
|
|
||||||
Type: schema.TypeBool,
|
|
||||||
Optional: true,
|
|
||||||
Default: false,
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -72,6 +72,10 @@ func utilityAccountFlipGroupsListCheckPresence(ctx context.Context, d *schema.Re
|
|||||||
req.ByIP = by_ip.(string)
|
req.ByIP = by_ip.(string)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if sortBy, ok := d.GetOk("sort_by"); ok {
|
||||||
|
req.SortBy = sortBy.(string)
|
||||||
|
}
|
||||||
|
|
||||||
if flipgroup_id, ok := d.GetOk("flipgroup_id"); ok {
|
if flipgroup_id, ok := d.GetOk("flipgroup_id"); ok {
|
||||||
req.FLIPGroupID = uint64(flipgroup_id.(int))
|
req.FLIPGroupID = uint64(flipgroup_id.(int))
|
||||||
}
|
}
|
||||||
|
|||||||
128
internal/service/cloudapi/audit/data_source_audit.go
Normal file
128
internal/service/cloudapi/audit/data_source_audit.go
Normal file
@@ -0,0 +1,128 @@
|
|||||||
|
/*
|
||||||
|
Copyright (c) 2019-2023 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
|
Authors:
|
||||||
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
|
Sergey Kisil, <svkisil@digitalenergy.online>
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
|
Please see README.md to learn where to place source code so that it
|
||||||
|
builds seamlessly.
|
||||||
|
|
||||||
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
|
*/
|
||||||
|
|
||||||
|
package audit
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/constants"
|
||||||
|
)
|
||||||
|
|
||||||
|
func dataSourceAuditRead(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Diagnostics {
|
||||||
|
auditRec, err := utilityAuditCheckPresence(ctx, d, m)
|
||||||
|
if err != nil {
|
||||||
|
d.SetId("") // ensure ID is empty in this case
|
||||||
|
return diag.FromErr(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
flattenAudit(d, auditRec)
|
||||||
|
d.SetId(d.Get("audit_guid").(string))
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func DataSourceAudit() *schema.Resource {
|
||||||
|
return &schema.Resource{
|
||||||
|
SchemaVersion: 1,
|
||||||
|
|
||||||
|
ReadContext: dataSourceAuditRead,
|
||||||
|
|
||||||
|
Timeouts: &schema.ResourceTimeout{
|
||||||
|
Read: &constants.Timeout30s,
|
||||||
|
Default: &constants.Timeout60s,
|
||||||
|
},
|
||||||
|
|
||||||
|
Schema: dataSourceAuditSchemaMake(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func dataSourceAuditSchemaMake() map[string]*schema.Schema {
|
||||||
|
return map[string]*schema.Schema{
|
||||||
|
"audit_guid": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Required: true,
|
||||||
|
Description: "audit guid",
|
||||||
|
},
|
||||||
|
|
||||||
|
"args": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"call": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"guid": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"kwargs": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"remote_addr": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"responsetime": {
|
||||||
|
Type: schema.TypeFloat,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"status_code": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"tags": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"timestamp": {
|
||||||
|
Type: schema.TypeFloat,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"timestamp_end": {
|
||||||
|
Type: schema.TypeFloat,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"user": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
56
internal/service/cloudapi/audit/flattens.go
Normal file
56
internal/service/cloudapi/audit/flattens.go
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright (c) 2019-2023 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
|
Authors:
|
||||||
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
|
Sergey Kisil, <svkisil@digitalenergy.online>
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
|
Please see README.md to learn where to place source code so that it
|
||||||
|
builds seamlessly.
|
||||||
|
|
||||||
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
|
*/
|
||||||
|
|
||||||
|
package audit
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
log "github.com/sirupsen/logrus"
|
||||||
|
"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/audit"
|
||||||
|
)
|
||||||
|
|
||||||
|
func flattenAudit(d *schema.ResourceData, au *audit.RecordAudit) {
|
||||||
|
log.Debugf("flattenAudit: decoded audit guid %s", d.Get("audit_guid").(string))
|
||||||
|
|
||||||
|
d.Set("args", au.Arguments)
|
||||||
|
d.Set("call", au.Call)
|
||||||
|
d.Set("guid", au.GUID)
|
||||||
|
d.Set("kwargs", au.Kwargs)
|
||||||
|
d.Set("remote_addr", au.RemoteAddr)
|
||||||
|
d.Set("responsetime", au.ResponseTime)
|
||||||
|
d.Set("result", au.Result)
|
||||||
|
d.Set("status_code", au.StatusCode)
|
||||||
|
d.Set("tags", au.Tags)
|
||||||
|
d.Set("timestamp", au.Timestamp)
|
||||||
|
d.Set("timestamp_end", au.TimestampEnd)
|
||||||
|
d.Set("user", au.User)
|
||||||
|
}
|
||||||
62
internal/service/cloudapi/audit/utility_audit.go
Normal file
62
internal/service/cloudapi/audit/utility_audit.go
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
/*
|
||||||
|
Copyright (c) 2019-2023 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
|
Authors:
|
||||||
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
|
Sergey Kisil, <svkisil@digitalenergy.online>
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
|
Please see README.md to learn where to place source code so that it
|
||||||
|
builds seamlessly.
|
||||||
|
|
||||||
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
|
*/
|
||||||
|
|
||||||
|
package audit
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
log "github.com/sirupsen/logrus"
|
||||||
|
"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/audit"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/controller"
|
||||||
|
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
)
|
||||||
|
|
||||||
|
func utilityAuditCheckPresence(ctx context.Context, d *schema.ResourceData, m interface{}) (*audit.RecordAudit, error) {
|
||||||
|
c := m.(*controller.ControllerCfg)
|
||||||
|
req := audit.GetRequest{}
|
||||||
|
|
||||||
|
if d.Id() != "" {
|
||||||
|
req.AuditGuid = d.Id()
|
||||||
|
} else {
|
||||||
|
req.AuditGuid = d.Get("audit_guid").(string)
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Debugf("utilityStackCheckPresence: load audit")
|
||||||
|
auditInfo, err := c.CloudAPI().Audit().Get(ctx, req)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return auditInfo, nil
|
||||||
|
}
|
||||||
@@ -394,7 +394,7 @@ func resourceBasicServiceGroupSchemaMake() map[string]*schema.Schema {
|
|||||||
"driver": {
|
"driver": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Required: true,
|
Required: true,
|
||||||
Description: "compute driver like a KVM_X86, KVM_PPC, etc.",
|
Description: "compute driver like a KVM_X86, etc.",
|
||||||
},
|
},
|
||||||
///4.4.0
|
///4.4.0
|
||||||
"sep_id": {
|
"sep_id": {
|
||||||
|
|||||||
@@ -238,12 +238,6 @@ func resourceDiskUpdate(ctx context.Context, d *schema.ResourceData, m interface
|
|||||||
DiskID: disk.ID,
|
DiskID: disk.ID,
|
||||||
}
|
}
|
||||||
|
|
||||||
if reason, ok := d.GetOk("reason"); ok {
|
|
||||||
req.Reason = reason.(string)
|
|
||||||
} else {
|
|
||||||
req.Reason = "Terraform automatic restore"
|
|
||||||
}
|
|
||||||
|
|
||||||
_, err := c.CloudAPI().Disks().Restore(ctx, req)
|
_, err := c.CloudAPI().Disks().Restore(ctx, req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
warnings.Add(err)
|
warnings.Add(err)
|
||||||
@@ -362,7 +356,6 @@ func resourceDiskDelete(ctx context.Context, d *schema.ResourceData, m interface
|
|||||||
DiskID: disk.ID,
|
DiskID: disk.ID,
|
||||||
Detach: d.Get("detach").(bool),
|
Detach: d.Get("detach").(bool),
|
||||||
Permanently: d.Get("permanently").(bool),
|
Permanently: d.Get("permanently").(bool),
|
||||||
Reason: d.Get("reason").(string),
|
|
||||||
}
|
}
|
||||||
|
|
||||||
c := m.(*controller.ControllerCfg)
|
c := m.(*controller.ControllerCfg)
|
||||||
@@ -437,12 +430,6 @@ func resourceDiskSchemaMake() map[string]*schema.Schema {
|
|||||||
Default: false,
|
Default: false,
|
||||||
Description: "Whether to completely delete the disk, works only with non attached disks",
|
Description: "Whether to completely delete the disk, works only with non attached disks",
|
||||||
},
|
},
|
||||||
"reason": {
|
|
||||||
Type: schema.TypeString,
|
|
||||||
Optional: true,
|
|
||||||
Default: "",
|
|
||||||
Description: "Reason for deletion",
|
|
||||||
},
|
|
||||||
"shareable": {
|
"shareable": {
|
||||||
Type: schema.TypeBool,
|
Type: schema.TypeBool,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
@@ -677,27 +664,27 @@ func resourceDiskSchemaMake() map[string]*schema.Schema {
|
|||||||
Elem: &schema.Resource{
|
Elem: &schema.Resource{
|
||||||
Schema: map[string]*schema.Schema{
|
Schema: map[string]*schema.Schema{
|
||||||
"disk_id": {
|
"disk_id": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
"pool_id": {
|
"pool_id": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
"role": {
|
"role": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
"self_volume_id": {
|
"self_volume_id": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
"storage_id": {
|
"storage_id": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
"volume_id": {
|
"volume_id": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -177,7 +177,6 @@ func resourceDiskReplicationDelete(ctx context.Context, d *schema.ResourceData,
|
|||||||
DiskID: disk.ID,
|
DiskID: disk.ID,
|
||||||
Detach: d.Get("detach").(bool),
|
Detach: d.Get("detach").(bool),
|
||||||
Permanently: d.Get("permanently").(bool),
|
Permanently: d.Get("permanently").(bool),
|
||||||
Reason: d.Get("reason").(string),
|
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Debugf("resourceDiskReplicationDelete: delete disk replica for disk with ID: %d", diskId)
|
log.Debugf("resourceDiskReplicationDelete: delete disk replica for disk with ID: %d", diskId)
|
||||||
@@ -243,11 +242,6 @@ func resourceDiskReplicationSchemaMake() map[string]*schema.Schema {
|
|||||||
Default: false,
|
Default: false,
|
||||||
Description: "Delete disk permanently",
|
Description: "Delete disk permanently",
|
||||||
},
|
},
|
||||||
"reason": {
|
|
||||||
Type: schema.TypeString,
|
|
||||||
Optional: true,
|
|
||||||
Description: "Reason for disk deletion",
|
|
||||||
},
|
|
||||||
"replica_disk_id": {
|
"replica_disk_id": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
|
|||||||
153
internal/service/cloudapi/dpdknet/data_source_dpdk.go
Normal file
153
internal/service/cloudapi/dpdknet/data_source_dpdk.go
Normal file
@@ -0,0 +1,153 @@
|
|||||||
|
/*
|
||||||
|
Copyright (c) 2019-2022 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
|
Authors:
|
||||||
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
|
Kasim Baybikov, <kmbaybikov@basistech.ru>
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
|
Please see README.md to learn where to place source code so that it
|
||||||
|
builds seamlessly.
|
||||||
|
|
||||||
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
|
*/
|
||||||
|
|
||||||
|
package dpdknet
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/google/uuid"
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/constants"
|
||||||
|
)
|
||||||
|
|
||||||
|
func dataSourceDPDKNetRead(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Diagnostics {
|
||||||
|
dpdk, err := utilityDPDKNetCheckPresence(ctx, d, m)
|
||||||
|
if err != nil {
|
||||||
|
d.SetId("")
|
||||||
|
return diag.FromErr(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
id := uuid.New()
|
||||||
|
d.SetId(id.String())
|
||||||
|
|
||||||
|
flattenDPDKNet(d, dpdk)
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func dataSourceDPDKNetSchemaMake() map[string]*schema.Schema {
|
||||||
|
res := map[string]*schema.Schema{
|
||||||
|
"dpdk_id": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Required: true,
|
||||||
|
Description: "The unique ID of the subscriber-owner of the DPDK network",
|
||||||
|
},
|
||||||
|
"account_access": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
},
|
||||||
|
Description: "List of accounts with access",
|
||||||
|
},
|
||||||
|
"created_time": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Created time",
|
||||||
|
},
|
||||||
|
"desc": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Description of DPDK network",
|
||||||
|
},
|
||||||
|
"gid": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "ID of the grid (platform)",
|
||||||
|
},
|
||||||
|
"guid": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "DPDK network ID on the storage side",
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Name of network",
|
||||||
|
},
|
||||||
|
"rg_access": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
},
|
||||||
|
Description: "List of resource groups with access",
|
||||||
|
},
|
||||||
|
"status": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "DPDK network status",
|
||||||
|
},
|
||||||
|
"ovs_bridge": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "OVS bridge in which interfaces for computers created",
|
||||||
|
},
|
||||||
|
"vlan_id": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "vlan ID",
|
||||||
|
},
|
||||||
|
"compute_ids": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
},
|
||||||
|
Description: "Compute IDs which uses this DPDK network",
|
||||||
|
},
|
||||||
|
"updated_time": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Updated time",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
|
||||||
|
func DataSourceDPDKNet() *schema.Resource {
|
||||||
|
return &schema.Resource{
|
||||||
|
SchemaVersion: 1,
|
||||||
|
|
||||||
|
ReadContext: dataSourceDPDKNetRead,
|
||||||
|
|
||||||
|
Timeouts: &schema.ResourceTimeout{
|
||||||
|
Read: &constants.Timeout30s,
|
||||||
|
Default: &constants.Timeout60s,
|
||||||
|
},
|
||||||
|
|
||||||
|
Schema: dataSourceDPDKNetSchemaMake(),
|
||||||
|
}
|
||||||
|
}
|
||||||
212
internal/service/cloudapi/dpdknet/data_source_dpdk_list.go
Normal file
212
internal/service/cloudapi/dpdknet/data_source_dpdk_list.go
Normal file
@@ -0,0 +1,212 @@
|
|||||||
|
/*
|
||||||
|
Copyright (c) 2019-2022 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
|
Authors:
|
||||||
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
|
Kasim Baybikov, <kmbaybikov@basistech.ru>
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
|
Please see README.md to learn where to place source code so that it
|
||||||
|
builds seamlessly.
|
||||||
|
|
||||||
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
|
*/
|
||||||
|
|
||||||
|
package dpdknet
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/google/uuid"
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/constants"
|
||||||
|
)
|
||||||
|
|
||||||
|
func dataSourceDPDKNetListRead(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Diagnostics {
|
||||||
|
dpdkList, err := utilityDPDKNetListCheckPresence(ctx, d, m)
|
||||||
|
if err != nil {
|
||||||
|
d.SetId("")
|
||||||
|
return diag.FromErr(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
id := uuid.New()
|
||||||
|
d.SetId(id.String())
|
||||||
|
d.Set("items", flattenDPDKNetList(dpdkList))
|
||||||
|
d.Set("entry_count", dpdkList.EntryCount)
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func dataSourceDPDKNetListSchemaMake() map[string]*schema.Schema {
|
||||||
|
res := map[string]*schema.Schema{
|
||||||
|
"by_id": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Find by ID",
|
||||||
|
},
|
||||||
|
"gid": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Find by GID",
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Find by name",
|
||||||
|
},
|
||||||
|
"desc": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Find by description",
|
||||||
|
},
|
||||||
|
"status": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Find by status",
|
||||||
|
},
|
||||||
|
"compute_ids": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Optional: true,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
},
|
||||||
|
Description: "Find by compute IDs",
|
||||||
|
},
|
||||||
|
"sort_by": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "sort by one of supported fields, format +|-(field)",
|
||||||
|
},
|
||||||
|
"page": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Page number",
|
||||||
|
},
|
||||||
|
"size": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Page size",
|
||||||
|
},
|
||||||
|
"items": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Resource{
|
||||||
|
Schema: map[string]*schema.Schema{
|
||||||
|
"dpdk_id": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Required: true,
|
||||||
|
Description: "The unique ID of the subscriber-owner of the DPDK network",
|
||||||
|
},
|
||||||
|
"account_access": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
},
|
||||||
|
Description: "List of accounts with access",
|
||||||
|
},
|
||||||
|
"created_time": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Created time",
|
||||||
|
},
|
||||||
|
"desc": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Description of DPDK network",
|
||||||
|
},
|
||||||
|
"gid": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "ID of the grid (platform)",
|
||||||
|
},
|
||||||
|
"guid": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "DPDK network ID on the storage side",
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Name of network",
|
||||||
|
},
|
||||||
|
"rg_access": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
},
|
||||||
|
Description: "List of resource groups with access",
|
||||||
|
},
|
||||||
|
"status": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "DPDK network status",
|
||||||
|
},
|
||||||
|
"ovs_bridge": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
Description: "OVS bridge in which interfaces for computers created",
|
||||||
|
},
|
||||||
|
"vlan_id": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "vlan ID",
|
||||||
|
},
|
||||||
|
"compute_ids": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Schema{
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
},
|
||||||
|
Description: "Compute IDs which uses this DPDK network",
|
||||||
|
},
|
||||||
|
"updated_time": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
Description: "Updated time",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"entry_count": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
|
||||||
|
func DataSourceDPDKNetList() *schema.Resource {
|
||||||
|
return &schema.Resource{
|
||||||
|
SchemaVersion: 1,
|
||||||
|
|
||||||
|
ReadContext: dataSourceDPDKNetListRead,
|
||||||
|
|
||||||
|
Timeouts: &schema.ResourceTimeout{
|
||||||
|
Read: &constants.Timeout30s,
|
||||||
|
Default: &constants.Timeout60s,
|
||||||
|
},
|
||||||
|
|
||||||
|
Schema: dataSourceDPDKNetListSchemaMake(),
|
||||||
|
}
|
||||||
|
}
|
||||||
44
internal/service/cloudapi/dpdknet/flattens.go
Normal file
44
internal/service/cloudapi/dpdknet/flattens.go
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
package dpdknet
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
dpdk "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/dpdknet"
|
||||||
|
)
|
||||||
|
|
||||||
|
func flattenDPDKNet(d *schema.ResourceData, dpdk *dpdk.RecordDPDKNet) {
|
||||||
|
d.Set("dpdk_id", dpdk.ID)
|
||||||
|
d.Set("account_access", dpdk.AccountAccess)
|
||||||
|
d.Set("created_time", dpdk.CreatedTime)
|
||||||
|
d.Set("desc", dpdk.Description)
|
||||||
|
d.Set("gid", dpdk.GID)
|
||||||
|
d.Set("guid", dpdk.GUID)
|
||||||
|
d.Set("name", dpdk.Name)
|
||||||
|
d.Set("rg_access", dpdk.RGAccess)
|
||||||
|
d.Set("status", dpdk.Status)
|
||||||
|
d.Set("ovs_bridge", dpdk.OVSBridge)
|
||||||
|
d.Set("vlan_id", dpdk.VlanID)
|
||||||
|
d.Set("compute_ids", dpdk.ComputeIDs)
|
||||||
|
d.Set("updated_time", dpdk.UpdatedTime)
|
||||||
|
}
|
||||||
|
|
||||||
|
func flattenDPDKNetList(list *dpdk.ListDPDKNet) []map[string]interface{} {
|
||||||
|
res := make([]map[string]interface{}, 0, len(list.Data))
|
||||||
|
for _, dpdk := range list.Data {
|
||||||
|
temp := map[string]interface{}{
|
||||||
|
"dpdk_id": dpdk.ID,
|
||||||
|
"account_access": dpdk.AccountAccess,
|
||||||
|
"desc": dpdk.Description,
|
||||||
|
"gid": dpdk.GID,
|
||||||
|
"guid": dpdk.GUID,
|
||||||
|
"name": dpdk.Name,
|
||||||
|
"rg_access": dpdk.RGAccess,
|
||||||
|
"status": dpdk.Status,
|
||||||
|
"ovs_bridge": dpdk.OVSBridge,
|
||||||
|
"vlan_id": dpdk.VlanID,
|
||||||
|
"compute_ids": dpdk.ComputeIDs,
|
||||||
|
"updated_time": dpdk.UpdatedTime,
|
||||||
|
}
|
||||||
|
res = append(res, temp)
|
||||||
|
}
|
||||||
|
return res
|
||||||
|
}
|
||||||
68
internal/service/cloudapi/dpdknet/utility_dpdk.go
Normal file
68
internal/service/cloudapi/dpdknet/utility_dpdk.go
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
/*
|
||||||
|
Copyright (c) 2019-2022 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
|
Authors:
|
||||||
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
|
Kasim Baybikov, <kmbaybikov@basistech.ru>
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
|
Please see README.md to learn where to place source code so that it
|
||||||
|
builds seamlessly.
|
||||||
|
|
||||||
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
|
*/
|
||||||
|
|
||||||
|
package dpdknet
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"strconv"
|
||||||
|
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
log "github.com/sirupsen/logrus"
|
||||||
|
dpdk "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/dpdknet"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/controller"
|
||||||
|
)
|
||||||
|
|
||||||
|
func utilityDPDKNetCheckPresence(ctx context.Context, d *schema.ResourceData, m interface{}) (*dpdk.RecordDPDKNet, error) {
|
||||||
|
c := m.(*controller.ControllerCfg)
|
||||||
|
req := dpdk.GetRequest{}
|
||||||
|
|
||||||
|
if d.Get("dpdk_id") != nil {
|
||||||
|
if d.Get("dpdk_id").(int) == 0 {
|
||||||
|
id, _ := strconv.ParseUint(d.Id(), 10, 64)
|
||||||
|
req.DPDKID = id
|
||||||
|
} else {
|
||||||
|
req.DPDKID = uint64(d.Get("dpdk_id").(int))
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
id, _ := strconv.ParseUint(d.Id(), 10, 64)
|
||||||
|
req.DPDKID = id
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Debugf("utilityDPDKCheckPresence: get DPDK network")
|
||||||
|
dpdk, err := c.CloudAPI().DPDKNet().Get(ctx, req)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return dpdk, nil
|
||||||
|
}
|
||||||
87
internal/service/cloudapi/dpdknet/utility_dpdk_list.go
Normal file
87
internal/service/cloudapi/dpdknet/utility_dpdk_list.go
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
/*
|
||||||
|
Copyright (c) 2019-2022 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
|
Authors:
|
||||||
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
|
Kasim Baybikov, <kmbaybikov@basistech.ru>
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
|
Please see README.md to learn where to place source code so that it
|
||||||
|
builds seamlessly.
|
||||||
|
|
||||||
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
|
*/
|
||||||
|
|
||||||
|
package dpdknet
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
log "github.com/sirupsen/logrus"
|
||||||
|
dpdk "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/dpdknet"
|
||||||
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/controller"
|
||||||
|
|
||||||
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
|
)
|
||||||
|
|
||||||
|
func utilityDPDKNetListCheckPresence(ctx context.Context, d *schema.ResourceData, m interface{}) (*dpdk.ListDPDKNet, error) {
|
||||||
|
c := m.(*controller.ControllerCfg)
|
||||||
|
req := dpdk.ListRequest{}
|
||||||
|
|
||||||
|
if byID, ok := d.GetOk("by_id"); ok {
|
||||||
|
req.ByID = uint64(byID.(int))
|
||||||
|
}
|
||||||
|
if GID, ok := d.GetOk("gid"); ok {
|
||||||
|
req.GID = uint64(GID.(int))
|
||||||
|
}
|
||||||
|
if name, ok := d.GetOk("name"); ok {
|
||||||
|
req.Name = name.(string)
|
||||||
|
}
|
||||||
|
if desc, ok := d.GetOk("description"); ok {
|
||||||
|
req.Description = desc.(string)
|
||||||
|
}
|
||||||
|
if status, ok := d.GetOk("status"); ok {
|
||||||
|
req.Status = status.(string)
|
||||||
|
}
|
||||||
|
if computeIDs, ok := d.GetOk("compute_ids"); ok {
|
||||||
|
IDs := computeIDs.([]interface{})
|
||||||
|
for _, ID := range IDs {
|
||||||
|
req.ComputeIDs = append(req.ComputeIDs, uint64(ID.(int)))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if sortBy, ok := d.GetOk("sort_by"); ok {
|
||||||
|
req.SortBy = sortBy.(string)
|
||||||
|
}
|
||||||
|
if page, ok := d.GetOk("page"); ok {
|
||||||
|
req.Page = uint64(page.(int))
|
||||||
|
}
|
||||||
|
if size, ok := d.GetOk("size"); ok {
|
||||||
|
req.Size = uint64(size.(int))
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Debugf("utilityDPDKListCheckPresence: load DPDK network list")
|
||||||
|
dpdkList, err := c.CloudAPI().DPDKNet().List(ctx, req)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return dpdkList, nil
|
||||||
|
}
|
||||||
@@ -132,6 +132,11 @@ func dataSourceImageListSchemaMake() map[string]*schema.Schema {
|
|||||||
Optional: true,
|
Optional: true,
|
||||||
Description: "page size",
|
Description: "page size",
|
||||||
},
|
},
|
||||||
|
"enabled": {
|
||||||
|
Type: schema.TypeBool,
|
||||||
|
Optional: true,
|
||||||
|
Description: "find by enabled True or False",
|
||||||
|
},
|
||||||
"items": {
|
"items": {
|
||||||
Type: schema.TypeList,
|
Type: schema.TypeList,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
|
|||||||
@@ -129,8 +129,8 @@ func resourceImageSchemaMake(sch map[string]*schema.Schema) map[string]*schema.S
|
|||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
ValidateFunc: validation.StringInSlice([]string{"X86_64", "PPC64_LE"}, true),
|
ValidateFunc: validation.StringInSlice([]string{"X86_64"}, true),
|
||||||
Description: "binary architecture of this image, one of X86_64 of PPC64_LE",
|
Description: "binary architecture of this image, one of X86_64",
|
||||||
}
|
}
|
||||||
|
|
||||||
sch["drivers"] = &schema.Schema{
|
sch["drivers"] = &schema.Schema{
|
||||||
@@ -141,13 +141,6 @@ func resourceImageSchemaMake(sch map[string]*schema.Schema) map[string]*schema.S
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
sch["permanently"] = &schema.Schema{
|
|
||||||
Type: schema.TypeBool,
|
|
||||||
Optional: true,
|
|
||||||
Default: false,
|
|
||||||
Description: "whether to completely delete the image",
|
|
||||||
}
|
|
||||||
|
|
||||||
sch["network_interface_naming"] = &schema.Schema{
|
sch["network_interface_naming"] = &schema.Schema{
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
|
|||||||
@@ -1,67 +1,60 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2019-2022 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
Copyright (c) 2019-2022 Digital Energy Cloud Solutions LLC. All Rights Reserved.
|
||||||
Authors:
|
Authors:
|
||||||
Petr Krutov, <petr.krutov@digitalenergy.online>
|
Petr Krutov, <petr.krutov@digitalenergy.online>
|
||||||
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
Stanislav Solovev, <spsolovev@digitalenergy.online>
|
||||||
Kasim Baybikov, <kmbaybikov@basistech.ru>
|
Kasim Baybikov, <kmbaybikov@basistech.ru>
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
You may obtain a copy of the License at
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
Unless required by applicable law or agreed to in writing, software
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
Terraform DECORT provider - manage resources provided by DECORT (Digital Energy Cloud
|
||||||
Orchestration Technology) with Terraform by Hashicorp.
|
Orchestration Technology) with Terraform by Hashicorp.
|
||||||
|
|
||||||
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
Source code: https://repository.basistech.ru/BASIS/terraform-provider-decort
|
||||||
|
|
||||||
Please see README.md to learn where to place source code so that it
|
Please see README.md to learn where to place source code so that it
|
||||||
builds seamlessly.
|
builds seamlessly.
|
||||||
|
|
||||||
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
Documentation: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package image
|
package image
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
)
|
)
|
||||||
|
|
||||||
func resourceImageVirtualSchemaMake(sch map[string]*schema.Schema) map[string]*schema.Schema {
|
func resourceImageVirtualSchemaMake(sch map[string]*schema.Schema) map[string]*schema.Schema {
|
||||||
delete(sch, "show_all")
|
delete(sch, "show_all")
|
||||||
sch["name"] = &schema.Schema{
|
sch["name"] = &schema.Schema{
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Required: true,
|
Required: true,
|
||||||
Description: "Name of the rescue disk",
|
Description: "Name of the rescue disk",
|
||||||
}
|
}
|
||||||
|
|
||||||
sch["link_to"] = &schema.Schema{
|
sch["link_to"] = &schema.Schema{
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Required: true,
|
Required: true,
|
||||||
Description: "ID of real image to link this virtual image to upon creation",
|
Description: "ID of real image to link this virtual image to upon creation",
|
||||||
}
|
}
|
||||||
|
|
||||||
sch["permanently"] = &schema.Schema{
|
sch["image_id"] = &schema.Schema{
|
||||||
Type: schema.TypeBool,
|
Type: schema.TypeInt,
|
||||||
Optional: true,
|
Computed: true,
|
||||||
Default: false,
|
Description: "Image id",
|
||||||
Description: "whether to completely delete the image",
|
}
|
||||||
}
|
|
||||||
|
return sch
|
||||||
sch["image_id"] = &schema.Schema{
|
}
|
||||||
Type: schema.TypeInt,
|
|
||||||
Computed: true,
|
|
||||||
Description: "Image id",
|
|
||||||
}
|
|
||||||
|
|
||||||
return sch
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -157,10 +157,6 @@ func resourceImageDelete(ctx context.Context, d *schema.ResourceData, m interfac
|
|||||||
ImageID: uint64(d.Get("image_id").(int)),
|
ImageID: uint64(d.Get("image_id").(int)),
|
||||||
}
|
}
|
||||||
|
|
||||||
if permanently, ok := d.GetOk("permanently"); ok {
|
|
||||||
req.Permanently = permanently.(bool)
|
|
||||||
}
|
|
||||||
|
|
||||||
_, err = c.CloudAPI().Image().Delete(ctx, req)
|
_, err = c.CloudAPI().Image().Delete(ctx, req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return diag.FromErr(err)
|
return diag.FromErr(err)
|
||||||
|
|||||||
@@ -194,10 +194,6 @@ func resourceImageFromBlankComputeDelete(ctx context.Context, d *schema.Resource
|
|||||||
ImageID: uint64(d.Get("image_id").(int)),
|
ImageID: uint64(d.Get("image_id").(int)),
|
||||||
}
|
}
|
||||||
|
|
||||||
if permanently, ok := d.GetOk("permanently"); ok {
|
|
||||||
req.Permanently = permanently.(bool)
|
|
||||||
}
|
|
||||||
|
|
||||||
_, err = c.CloudAPI().Image().Delete(ctx, req)
|
_, err = c.CloudAPI().Image().Delete(ctx, req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return diag.FromErr(err)
|
return diag.FromErr(err)
|
||||||
@@ -352,12 +348,6 @@ func resourceImageFromBlankComputeSchemaMake() map[string]*schema.Schema {
|
|||||||
Default: false,
|
Default: false,
|
||||||
Description: "create an image in async/sync mode",
|
Description: "create an image in async/sync mode",
|
||||||
},
|
},
|
||||||
"permanently": {
|
|
||||||
Type: schema.TypeBool,
|
|
||||||
Optional: true,
|
|
||||||
Default: false,
|
|
||||||
Description: "whether to completely delete the image",
|
|
||||||
},
|
|
||||||
|
|
||||||
"image_id": {
|
"image_id": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
|
|||||||
@@ -201,10 +201,6 @@ func resourceImageFromPlatformDiskDelete(ctx context.Context, d *schema.Resource
|
|||||||
ImageID: uint64(d.Get("image_id").(int)),
|
ImageID: uint64(d.Get("image_id").(int)),
|
||||||
}
|
}
|
||||||
|
|
||||||
if permanently, ok := d.GetOk("permanently"); ok {
|
|
||||||
req.Permanently = permanently.(bool)
|
|
||||||
}
|
|
||||||
|
|
||||||
_, err = c.CloudAPI().Image().Delete(ctx, req)
|
_, err = c.CloudAPI().Image().Delete(ctx, req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return diag.FromErr(err)
|
return diag.FromErr(err)
|
||||||
@@ -302,8 +298,8 @@ func resourceImageFromPlatformDiskSchemaMake() map[string]*schema.Schema {
|
|||||||
"architecture": {
|
"architecture": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Required: true,
|
Required: true,
|
||||||
ValidateFunc: validation.StringInSlice([]string{"X86_64", "PPC64_LE"}, true),
|
ValidateFunc: validation.StringInSlice([]string{"X86_64"}, true),
|
||||||
Description: "binary architecture of this image, one of X86_64 of PPC64_LE",
|
Description: "binary architecture of this image, one of X86_64",
|
||||||
},
|
},
|
||||||
|
|
||||||
"username": {
|
"username": {
|
||||||
@@ -338,11 +334,10 @@ func resourceImageFromPlatformDiskSchemaMake() map[string]*schema.Schema {
|
|||||||
},
|
},
|
||||||
"drivers": {
|
"drivers": {
|
||||||
Type: schema.TypeList,
|
Type: schema.TypeList,
|
||||||
Optional: true,
|
Required: true,
|
||||||
Computed: true,
|
|
||||||
Elem: &schema.Schema{
|
Elem: &schema.Schema{
|
||||||
StateFunc: statefuncs.StateFuncToUpper,
|
StateFunc: statefuncs.StateFuncToUpper,
|
||||||
ValidateFunc: validation.StringInSlice([]string{"SVA_KVM_X86", "KVM_X86", "KVM_PPC"}, false), // observe case while validating
|
ValidateFunc: validation.StringInSlice([]string{"SVA_KVM_X86", "KVM_X86"}, false), // observe case while validating
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
},
|
},
|
||||||
Description: "List of types of compute suitable for image. Example: [ \"KVM_X86\" ]",
|
Description: "List of types of compute suitable for image. Example: [ \"KVM_X86\" ]",
|
||||||
@@ -365,12 +360,6 @@ func resourceImageFromPlatformDiskSchemaMake() map[string]*schema.Schema {
|
|||||||
Default: false,
|
Default: false,
|
||||||
Description: "create an image in async/sync mode",
|
Description: "create an image in async/sync mode",
|
||||||
},
|
},
|
||||||
"permanently": {
|
|
||||||
Type: schema.TypeBool,
|
|
||||||
Optional: true,
|
|
||||||
Default: false,
|
|
||||||
Description: "whether to completely delete the image",
|
|
||||||
},
|
|
||||||
|
|
||||||
"image_id": {
|
"image_id": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
|
|||||||
@@ -46,12 +46,12 @@ func utilityImageListCheckPresence(ctx context.Context, d *schema.ResourceData,
|
|||||||
c := m.(*controller.ControllerCfg)
|
c := m.(*controller.ControllerCfg)
|
||||||
req := image.ListRequest{}
|
req := image.ListRequest{}
|
||||||
|
|
||||||
if sep_id, ok := d.GetOk("sep_id"); ok {
|
if sepID, ok := d.GetOk("sep_id"); ok {
|
||||||
req.SEPID = uint64(sep_id.(int))
|
req.SEPID = uint64(sepID.(int))
|
||||||
}
|
}
|
||||||
|
|
||||||
if by_id, ok := d.GetOk("by_id"); ok {
|
if byID, ok := d.GetOk("by_id"); ok {
|
||||||
req.ByID = uint64(by_id.(int))
|
req.ByID = uint64(byID.(int))
|
||||||
}
|
}
|
||||||
|
|
||||||
if name, ok := d.GetOk("name"); ok {
|
if name, ok := d.GetOk("name"); ok {
|
||||||
@@ -66,31 +66,31 @@ func utilityImageListCheckPresence(ctx context.Context, d *schema.ResourceData,
|
|||||||
req.Architecture = architecture.(string)
|
req.Architecture = architecture.(string)
|
||||||
}
|
}
|
||||||
|
|
||||||
if type_image, ok := d.GetOk("type_image"); ok {
|
if typeImage, ok := d.GetOk("type_image"); ok {
|
||||||
req.TypeImage = type_image.(string)
|
req.TypeImage = typeImage.(string)
|
||||||
}
|
}
|
||||||
|
|
||||||
if image_size, ok := d.GetOk("image_size"); ok {
|
if imageSize, ok := d.GetOk("image_size"); ok {
|
||||||
req.ImageSize = uint64(image_size.(int))
|
req.ImageSize = uint64(imageSize.(int))
|
||||||
}
|
}
|
||||||
|
|
||||||
if sep_name, ok := d.GetOk("sep_name"); ok {
|
if sepName, ok := d.GetOk("sep_name"); ok {
|
||||||
req.SEPName = sep_name.(string)
|
req.SEPName = sepName.(string)
|
||||||
}
|
}
|
||||||
|
|
||||||
if pool, ok := d.GetOk("pool"); ok {
|
if pool, ok := d.GetOk("pool"); ok {
|
||||||
req.Pool = pool.(string)
|
req.Pool = pool.(string)
|
||||||
}
|
}
|
||||||
|
|
||||||
if public, ok := d.GetOk("public"); ok {
|
if public, ok := d.GetOkExists("public"); ok {
|
||||||
req.Public = public.(bool)
|
req.Public = public.(bool)
|
||||||
}
|
}
|
||||||
|
|
||||||
if hot_resize, ok := d.GetOk("hot_resize"); ok {
|
if hotResize, ok := d.GetOkExists("hot_resize"); ok {
|
||||||
req.HotResize = hot_resize.(bool)
|
req.HotResize = hotResize.(bool)
|
||||||
}
|
}
|
||||||
|
|
||||||
if bootable, ok := d.GetOk("bootable"); ok {
|
if bootable, ok := d.GetOkExists("bootable"); ok {
|
||||||
req.Bootable = bootable.(bool)
|
req.Bootable = bootable.(bool)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -104,6 +104,9 @@ func utilityImageListCheckPresence(ctx context.Context, d *schema.ResourceData,
|
|||||||
if size, ok := d.GetOk("size"); ok {
|
if size, ok := d.GetOk("size"); ok {
|
||||||
req.Size = uint64(size.(int))
|
req.Size = uint64(size.(int))
|
||||||
}
|
}
|
||||||
|
if enabled, ok := d.GetOkExists("enabled"); ok {
|
||||||
|
req.Enabled = enabled.(bool)
|
||||||
|
}
|
||||||
|
|
||||||
log.Debugf("utilityImageListCheckPresence: load image list")
|
log.Debugf("utilityImageListCheckPresence: load image list")
|
||||||
imageList, err := c.CloudAPI().Image().List(ctx, req)
|
imageList, err := c.CloudAPI().Image().List(ctx, req)
|
||||||
|
|||||||
@@ -103,16 +103,17 @@ func dataSourceK8sRead(ctx context.Context, d *schema.ResourceData, m interface{
|
|||||||
}
|
}
|
||||||
|
|
||||||
d.Set("kubeconfig", kubeconfig)
|
d.Set("kubeconfig", kubeconfig)
|
||||||
|
if cluster.LBID != 0 {
|
||||||
|
getLbReq := lb.GetRequest{LBID: cluster.LBID}
|
||||||
|
lb, err := c.CloudAPI().LB().Get(ctx, getLbReq)
|
||||||
|
if err != nil {
|
||||||
|
return diag.FromErr(err)
|
||||||
|
}
|
||||||
|
|
||||||
getLbReq := lb.GetRequest{LBID: cluster.LBID}
|
d.Set("extnet_id", lb.ExtNetID)
|
||||||
lb, err := c.CloudAPI().LB().Get(ctx, getLbReq)
|
d.Set("lb_ip", lb.PrimaryNode.FrontendIP)
|
||||||
if err != nil {
|
|
||||||
return diag.FromErr(err)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
d.Set("extnet_id", lb.ExtNetID)
|
|
||||||
d.Set("lb_ip", lb.PrimaryNode.FrontendIP)
|
|
||||||
|
|
||||||
flattenK8sData(d, *cluster, masterComputeList, workersComputeList)
|
flattenK8sData(d, *cluster, masterComputeList, workersComputeList)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -254,6 +254,20 @@ func flattenK8sData(d *schema.ResourceData, cluster k8s.RecordK8S, masters []com
|
|||||||
d.Set("tech_status", cluster.TechStatus)
|
d.Set("tech_status", cluster.TechStatus)
|
||||||
d.Set("updated_by", cluster.UpdatedBy)
|
d.Set("updated_by", cluster.UpdatedBy)
|
||||||
d.Set("updated_time", cluster.UpdatedTime)
|
d.Set("updated_time", cluster.UpdatedTime)
|
||||||
|
d.Set("highly_available_lb", cluster.HighlyAvailableLB)
|
||||||
|
d.Set("address_vip", flattenAddressVIP(cluster.AddressVIP))
|
||||||
|
d.Set("extnet_only", cluster.ExtnetOnly)
|
||||||
|
d.Set("with_lb", cluster.WithLB)
|
||||||
|
}
|
||||||
|
|
||||||
|
func flattenAddressVIP(addressVIP k8s.K8SAddressVIP) []map[string]interface{} {
|
||||||
|
res := make([]map[string]interface{}, 0)
|
||||||
|
temp := map[string]interface{}{
|
||||||
|
"backend_ip": addressVIP.BackendIP,
|
||||||
|
"frontend_ip": addressVIP.FrontendIP,
|
||||||
|
}
|
||||||
|
res = append(res, temp)
|
||||||
|
return res
|
||||||
}
|
}
|
||||||
|
|
||||||
func flattenServiceAccount(serviceAccount k8s.RecordServiceAccount) []map[string]interface{} {
|
func flattenServiceAccount(serviceAccount k8s.RecordServiceAccount) []map[string]interface{} {
|
||||||
|
|||||||
@@ -153,6 +153,11 @@ func workersSchemaMake() map[string]*schema.Schema {
|
|||||||
Schema: detailedInfoSchemaMake(),
|
Schema: detailedInfoSchemaMake(),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
"chipset": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Type of the emulated system.",
|
||||||
|
},
|
||||||
"guid": {
|
"guid": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
|
|||||||
@@ -202,8 +202,13 @@ func resourceK8sCreate(ctx context.Context, d *schema.ResourceData, m interface{
|
|||||||
if oidcCertificate, ok := d.GetOk("oidc_cert"); ok {
|
if oidcCertificate, ok := d.GetOk("oidc_cert"); ok {
|
||||||
createReq.OidcCertificate = oidcCertificate.(string)
|
createReq.OidcCertificate = oidcCertificate.(string)
|
||||||
}
|
}
|
||||||
|
|
||||||
///
|
///
|
||||||
|
|
||||||
|
if chipset, ok := d.GetOk("chipset"); ok {
|
||||||
|
createReq.Chipset = chipset.(string)
|
||||||
|
}
|
||||||
|
|
||||||
createReq.ExtNetOnly = d.Get("extnet_only").(bool)
|
createReq.ExtNetOnly = d.Get("extnet_only").(bool)
|
||||||
|
|
||||||
if extNet, ok := d.GetOk("extnet_id"); ok {
|
if extNet, ok := d.GetOk("extnet_id"); ok {
|
||||||
@@ -745,6 +750,12 @@ func resourceK8sSchemaMake() map[string]*schema.Schema {
|
|||||||
Description: "insert ssl certificate in x509 pem format",
|
Description: "insert ssl certificate in x509 pem format",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"chipset": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Type of the emulated system.",
|
||||||
|
},
|
||||||
|
|
||||||
"desc": {
|
"desc": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
|
|||||||
@@ -124,6 +124,10 @@ func resourceK8sCPCreate(ctx context.Context, d *schema.ResourceData, m interfac
|
|||||||
createReq.MasterSEPID = uint64(sepId.(int))
|
createReq.MasterSEPID = uint64(sepId.(int))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if chipset, ok := d.GetOk("chipset"); ok {
|
||||||
|
createReq.Chipset = chipset.(string)
|
||||||
|
}
|
||||||
|
|
||||||
if sepPool, ok := d.GetOk("sep_pool"); ok {
|
if sepPool, ok := d.GetOk("sep_pool"); ok {
|
||||||
createReq.MasterSEPPool = sepPool.(string)
|
createReq.MasterSEPPool = sepPool.(string)
|
||||||
}
|
}
|
||||||
@@ -532,10 +536,10 @@ func resourceK8sCPUpdate(ctx context.Context, d *schema.ResourceData, m interfac
|
|||||||
oldVal, newVal := d.GetChange("num")
|
oldVal, newVal := d.GetChange("num")
|
||||||
|
|
||||||
if oldVal.(int) > newVal.(int) {
|
if oldVal.(int) > newVal.(int) {
|
||||||
ids := make([]string, 0)
|
ids := make([]uint64, 0)
|
||||||
for i := oldVal.(int) - 1; i >= newVal.(int); i-- {
|
for i := oldVal.(int) - 1; i >= newVal.(int); i-- {
|
||||||
id := cluster.K8SGroups.Masters.DetailedInfo[i].ID
|
id := cluster.K8SGroups.Masters.DetailedInfo[i].ID
|
||||||
ids = append(ids, strconv.FormatUint(id, 10))
|
ids = append(ids, id)
|
||||||
}
|
}
|
||||||
|
|
||||||
req := k8s.DeleteMasterFromGroupRequest{
|
req := k8s.DeleteMasterFromGroupRequest{
|
||||||
@@ -656,6 +660,11 @@ func resourceK8sCPSchemaMake() map[string]*schema.Schema {
|
|||||||
),
|
),
|
||||||
Description: "Node RAM in MB.",
|
Description: "Node RAM in MB.",
|
||||||
},
|
},
|
||||||
|
"chipset": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Type of the emulated system.",
|
||||||
|
},
|
||||||
"disk": {
|
"disk": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
"time"
|
||||||
|
|
||||||
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
|
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
|
||||||
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
||||||
@@ -44,6 +45,7 @@ import (
|
|||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/compute"
|
"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/compute"
|
||||||
"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/k8s"
|
"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/k8s"
|
||||||
|
"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/tasks"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/constants"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/constants"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/controller"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/controller"
|
||||||
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/validators"
|
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/validators"
|
||||||
@@ -70,6 +72,7 @@ func resourceK8sWgCreate(ctx context.Context, d *schema.ResourceData, m interfac
|
|||||||
WorkerRAM: uint64(d.Get("ram").(int)),
|
WorkerRAM: uint64(d.Get("ram").(int)),
|
||||||
WorkerSEPID: uint64(d.Get("worker_sep_id").(int)),
|
WorkerSEPID: uint64(d.Get("worker_sep_id").(int)),
|
||||||
WorkerSEPPool: d.Get("worker_sep_pool").(string),
|
WorkerSEPPool: d.Get("worker_sep_pool").(string),
|
||||||
|
Chipset: d.Get("chipset").(string),
|
||||||
}
|
}
|
||||||
|
|
||||||
labels, _ := d.Get("labels").([]interface{})
|
labels, _ := d.Get("labels").([]interface{})
|
||||||
@@ -104,7 +107,33 @@ func resourceK8sWgCreate(ctx context.Context, d *schema.ResourceData, m interfac
|
|||||||
return diag.FromErr(err)
|
return diag.FromErr(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
d.SetId(fmt.Sprintf("%d#%d", d.Get("k8s_id").(int), resp))
|
taskReq := tasks.GetRequest{
|
||||||
|
AuditID: strings.Trim(resp, `"`),
|
||||||
|
}
|
||||||
|
|
||||||
|
for {
|
||||||
|
task, err := c.CloudAPI().Tasks().Get(ctx, taskReq)
|
||||||
|
if err != nil {
|
||||||
|
return diag.FromErr(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Debugf("resourceK8sWgCreate: instance creating - %s", task.Stage)
|
||||||
|
|
||||||
|
if task.Completed {
|
||||||
|
if task.Error != "" {
|
||||||
|
return diag.FromErr(fmt.Errorf("cannot create k8s wg instance: %v", task.Error))
|
||||||
|
}
|
||||||
|
|
||||||
|
id, err := task.Result.ID()
|
||||||
|
if err != nil {
|
||||||
|
return diag.FromErr(err)
|
||||||
|
}
|
||||||
|
d.SetId(fmt.Sprint(d.Get("k8s_id").(int), "#", strconv.Itoa(id)))
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
time.Sleep(time.Second * 20)
|
||||||
|
}
|
||||||
|
|
||||||
return resourceK8sWgRead(ctx, d, m)
|
return resourceK8sWgRead(ctx, d, m)
|
||||||
}
|
}
|
||||||
@@ -168,6 +197,7 @@ func resourceK8sWgUpdate(ctx context.Context, d *schema.ResourceData, m interfac
|
|||||||
K8SID: uint64(d.Get("k8s_id").(int)),
|
K8SID: uint64(d.Get("k8s_id").(int)),
|
||||||
WorkersGroupID: wg.ID,
|
WorkersGroupID: wg.ID,
|
||||||
Num: uint64(newNum) - wg.Num,
|
Num: uint64(newNum) - wg.Num,
|
||||||
|
Chipset: d.Get("chipset").(string),
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err := c.CloudAPI().K8S().WorkerAdd(ctx, req)
|
_, err := c.CloudAPI().K8S().WorkerAdd(ctx, req)
|
||||||
@@ -253,6 +283,12 @@ func resourceK8sWgSchemaMake() map[string]*schema.Schema {
|
|||||||
Description: "Number of worker nodes to create.",
|
Description: "Number of worker nodes to create.",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"chipset": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Optional: true,
|
||||||
|
Description: "Type of the emulated system.",
|
||||||
|
},
|
||||||
|
|
||||||
"cpu": {
|
"cpu": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
|
|||||||
@@ -84,6 +84,7 @@ func updateNum(ctx context.Context, c *controller.ControllerCfg, cluster *k8s.Re
|
|||||||
K8SID: cluster.ID,
|
K8SID: cluster.ID,
|
||||||
WorkersGroupID: uint64(wgNew["id"].(int)),
|
WorkersGroupID: uint64(wgNew["id"].(int)),
|
||||||
Num: uint64(newNum - oldNum),
|
Num: uint64(newNum - oldNum),
|
||||||
|
Chipset: wgNew["chipset"].(string),
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err := c.CloudAPI().K8S().WorkerAdd(ctx, req)
|
_, err := c.CloudAPI().K8S().WorkerAdd(ctx, req)
|
||||||
@@ -145,6 +146,7 @@ func addWGs(ctx context.Context, c *controller.ControllerCfg, cluster *k8s.Recor
|
|||||||
WorkerCPU: uint64(found_wg["cpu"].(int)),
|
WorkerCPU: uint64(found_wg["cpu"].(int)),
|
||||||
WorkerRAM: uint64(found_wg["ram"].(int)),
|
WorkerRAM: uint64(found_wg["ram"].(int)),
|
||||||
WorkerDisk: uint64(found_wg["disk"].(int)),
|
WorkerDisk: uint64(found_wg["disk"].(int)),
|
||||||
|
Chipset: found_wg["chipset"].(string),
|
||||||
}
|
}
|
||||||
|
|
||||||
labels, _ := found_wg["labels"].([]interface{})
|
labels, _ := found_wg["labels"].([]interface{})
|
||||||
|
|||||||
@@ -260,6 +260,10 @@ func computeListDisksSchemaMake() map[string]*schema.Schema {
|
|||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
|
"bus_number": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
"created_time": {
|
"created_time": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
@@ -475,6 +479,10 @@ func computeQOSSchemaMake() map[string]*schema.Schema {
|
|||||||
|
|
||||||
func computeInterfacesSchemaMake() map[string]*schema.Schema {
|
func computeInterfacesSchemaMake() map[string]*schema.Schema {
|
||||||
return map[string]*schema.Schema{
|
return map[string]*schema.Schema{
|
||||||
|
"bus_number": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
"conn_id": {
|
"conn_id": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
@@ -511,6 +519,10 @@ func computeInterfacesSchemaMake() map[string]*schema.Schema {
|
|||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
|
"mtu": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
"name": {
|
"name": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
@@ -542,6 +554,13 @@ func computeInterfacesSchemaMake() map[string]*schema.Schema {
|
|||||||
Schema: computeQOSSchemaMake(),
|
Schema: computeQOSSchemaMake(),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
"libvirt_settings": {
|
||||||
|
Type: schema.TypeList,
|
||||||
|
Computed: true,
|
||||||
|
Elem: &schema.Resource{
|
||||||
|
Schema: computeLibvirtSettingsSchemaMake(),
|
||||||
|
},
|
||||||
|
},
|
||||||
"target": {
|
"target": {
|
||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
@@ -559,6 +578,40 @@ func computeInterfacesSchemaMake() map[string]*schema.Schema {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func computeLibvirtSettingsSchemaMake() map[string]*schema.Schema {
|
||||||
|
return map[string]*schema.Schema{
|
||||||
|
"guid": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"txmode": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"ioeventfd": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"event_idx": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"queues": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"rx_queue_size": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
"tx_queue_size": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func computeOsUsersSchemaMake() map[string]*schema.Schema {
|
func computeOsUsersSchemaMake() map[string]*schema.Schema {
|
||||||
return map[string]*schema.Schema{
|
return map[string]*schema.Schema{
|
||||||
"guid": {
|
"guid": {
|
||||||
@@ -650,6 +703,10 @@ func dataSourceComputeSchemaMake() map[string]*schema.Schema {
|
|||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
|
"chipset": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
"boot_order": {
|
"boot_order": {
|
||||||
Type: schema.TypeList,
|
Type: schema.TypeList,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
|
|||||||
@@ -64,6 +64,10 @@ func dataSourceComputeListRead(ctx context.Context, d *schema.ResourceData, m in
|
|||||||
|
|
||||||
func computeDisksSchemaMake() map[string]*schema.Schema {
|
func computeDisksSchemaMake() map[string]*schema.Schema {
|
||||||
return map[string]*schema.Schema{
|
return map[string]*schema.Schema{
|
||||||
|
"bus_number": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
"disk_id": {
|
"disk_id": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
@@ -136,6 +140,10 @@ func itemComputeSchemaMake() map[string]*schema.Schema {
|
|||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
},
|
},
|
||||||
|
"chipset": {
|
||||||
|
Type: schema.TypeString,
|
||||||
|
Computed: true,
|
||||||
|
},
|
||||||
"clones": {
|
"clones": {
|
||||||
Type: schema.TypeList,
|
Type: schema.TypeList,
|
||||||
Computed: true,
|
Computed: true,
|
||||||
|
|||||||
@@ -47,8 +47,9 @@ func flattenDisks(disks []compute.InfoDisk) []map[string]interface{} {
|
|||||||
res := make([]map[string]interface{}, 0)
|
res := make([]map[string]interface{}, 0)
|
||||||
for _, disk := range disks {
|
for _, disk := range disks {
|
||||||
temp := map[string]interface{}{
|
temp := map[string]interface{}{
|
||||||
"disk_id": disk.ID,
|
"bus_number": disk.BusNumber,
|
||||||
"pci_slot": disk.PCISlot,
|
"disk_id": disk.ID,
|
||||||
|
"pci_slot": disk.PCISlot,
|
||||||
}
|
}
|
||||||
res = append(res, temp)
|
res = append(res, temp)
|
||||||
}
|
}
|
||||||
@@ -69,30 +70,49 @@ func flattenInterfaces(interfaces compute.ListInterfaces) []map[string]interface
|
|||||||
res := make([]map[string]interface{}, 0, len(interfaces))
|
res := make([]map[string]interface{}, 0, len(interfaces))
|
||||||
for _, interfaceItem := range interfaces {
|
for _, interfaceItem := range interfaces {
|
||||||
temp := map[string]interface{}{
|
temp := map[string]interface{}{
|
||||||
"conn_id": interfaceItem.ConnID,
|
"bus_number": interfaceItem.BusNumber,
|
||||||
"conn_type": interfaceItem.ConnType,
|
"conn_id": interfaceItem.ConnID,
|
||||||
"def_gw": interfaceItem.DefGW,
|
"conn_type": interfaceItem.ConnType,
|
||||||
"enabled": interfaceItem.Enabled,
|
"def_gw": interfaceItem.DefGW,
|
||||||
"flip_group_id": interfaceItem.FLIPGroupID,
|
"enabled": interfaceItem.Enabled,
|
||||||
"guid": interfaceItem.GUID,
|
"flip_group_id": interfaceItem.FLIPGroupID,
|
||||||
"ip_address": interfaceItem.IPAddress,
|
"guid": interfaceItem.GUID,
|
||||||
"listen_ssh": interfaceItem.ListenSSH,
|
"ip_address": interfaceItem.IPAddress,
|
||||||
"mac": interfaceItem.MAC,
|
"listen_ssh": interfaceItem.ListenSSH,
|
||||||
"name": interfaceItem.Name,
|
"mac": interfaceItem.MAC,
|
||||||
"net_id": interfaceItem.NetID,
|
"mtu": interfaceItem.MTU,
|
||||||
"netmask": interfaceItem.NetMask,
|
"name": interfaceItem.Name,
|
||||||
"net_type": interfaceItem.NetType,
|
"net_id": interfaceItem.NetID,
|
||||||
"node_id": interfaceItem.NodeID,
|
"netmask": interfaceItem.NetMask,
|
||||||
"pci_slot": interfaceItem.PCISlot,
|
"net_type": interfaceItem.NetType,
|
||||||
"qos": flattenQOS(interfaceItem.QOS),
|
"node_id": interfaceItem.NodeID,
|
||||||
"target": interfaceItem.Target,
|
"pci_slot": interfaceItem.PCISlot,
|
||||||
"type": interfaceItem.Type,
|
"qos": flattenQOS(interfaceItem.QOS),
|
||||||
"vnfs": interfaceItem.VNFs,
|
"target": interfaceItem.Target,
|
||||||
|
"type": interfaceItem.Type,
|
||||||
|
"vnfs": interfaceItem.VNFs,
|
||||||
|
"libvirt_settings": flattenLibvirtSettings(interfaceItem.LibvirtSettings),
|
||||||
}
|
}
|
||||||
res = append(res, temp)
|
res = append(res, temp)
|
||||||
}
|
}
|
||||||
return res
|
return res
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func flattenLibvirtSettings(libvirtSettings compute.LibvirtSettings) []map[string]interface{} {
|
||||||
|
res := make([]map[string]interface{}, 0)
|
||||||
|
temp := map[string]interface{}{
|
||||||
|
"guid": libvirtSettings.GUID,
|
||||||
|
"txmode": libvirtSettings.TXMode,
|
||||||
|
"ioeventfd": libvirtSettings.IOEventFD,
|
||||||
|
"event_idx": libvirtSettings.EventIDx,
|
||||||
|
"queues": libvirtSettings.Queues,
|
||||||
|
"rx_queue_size": libvirtSettings.RXQueueSize,
|
||||||
|
"tx_queue_size": libvirtSettings.TXQueueSize,
|
||||||
|
}
|
||||||
|
res = append(res, temp)
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
|
||||||
func flattenSnapSets(snapSets compute.ListSnapSets) []map[string]interface{} {
|
func flattenSnapSets(snapSets compute.ListSnapSets) []map[string]interface{} {
|
||||||
res := make([]map[string]interface{}, 0, len(snapSets))
|
res := make([]map[string]interface{}, 0, len(snapSets))
|
||||||
for _, snapSet := range snapSets {
|
for _, snapSet := range snapSets {
|
||||||
@@ -165,6 +185,7 @@ func flattenComputeList(computes *compute.ListComputes) []map[string]interface{}
|
|||||||
"arch": compute.Architecture,
|
"arch": compute.Architecture,
|
||||||
"boot_order": compute.BootOrder,
|
"boot_order": compute.BootOrder,
|
||||||
"bootdisk_size": compute.BootDiskSize,
|
"bootdisk_size": compute.BootDiskSize,
|
||||||
|
"chipset": compute.Chipset,
|
||||||
"cd_image_id": compute.CdImageId,
|
"cd_image_id": compute.CdImageId,
|
||||||
"clone_reference": compute.CloneReference,
|
"clone_reference": compute.CloneReference,
|
||||||
"clones": compute.Clones,
|
"clones": compute.Clones,
|
||||||
@@ -295,6 +316,7 @@ func flattenNetwork(networks []interface{}, interfaces compute.ListInterfaces) [
|
|||||||
"net_type": network.NetType,
|
"net_type": network.NetType,
|
||||||
"ip_address": network.IPAddress,
|
"ip_address": network.IPAddress,
|
||||||
"mac": network.MAC,
|
"mac": network.MAC,
|
||||||
|
"mtu": network.MTU,
|
||||||
"weight": flattenNetworkWeight(networks, network.NetID, network.NetType),
|
"weight": flattenNetworkWeight(networks, network.NetID, network.NetType),
|
||||||
}
|
}
|
||||||
res = append(res, temp)
|
res = append(res, temp)
|
||||||
@@ -348,6 +370,7 @@ func flattenCompute(d *schema.ResourceData, computeRec compute.RecordCompute, pc
|
|||||||
d.Set("cd_image_id", computeRec.CdImageId)
|
d.Set("cd_image_id", computeRec.CdImageId)
|
||||||
d.Set("sep_id", bootDisk.SepID)
|
d.Set("sep_id", bootDisk.SepID)
|
||||||
d.Set("pool", bootDisk.Pool)
|
d.Set("pool", bootDisk.Pool)
|
||||||
|
d.Set("chipset", computeRec.Chipset)
|
||||||
d.Set("clone_reference", computeRec.CloneReference)
|
d.Set("clone_reference", computeRec.CloneReference)
|
||||||
d.Set("clones", computeRec.Clones)
|
d.Set("clones", computeRec.Clones)
|
||||||
d.Set("computeci_id", computeRec.ComputeCIID)
|
d.Set("computeci_id", computeRec.ComputeCIID)
|
||||||
@@ -503,6 +526,7 @@ func flattenListComputeDisks(disks compute.ListComputeDisks) []map[string]interf
|
|||||||
"acl": string(acl),
|
"acl": string(acl),
|
||||||
"account_id": disk.AccountID,
|
"account_id": disk.AccountID,
|
||||||
"boot_partition": disk.BootPartition,
|
"boot_partition": disk.BootPartition,
|
||||||
|
"bus_number": disk.BusNumber,
|
||||||
"created_time": disk.CreatedTime,
|
"created_time": disk.CreatedTime,
|
||||||
"deleted_time": disk.DeletedTime,
|
"deleted_time": disk.DeletedTime,
|
||||||
"description": disk.Description,
|
"description": disk.Description,
|
||||||
@@ -590,6 +614,7 @@ func flattenDataCompute(d *schema.ResourceData, computeRec compute.RecordCompute
|
|||||||
d.Set("affinity_weight", computeRec.AffinityWeight)
|
d.Set("affinity_weight", computeRec.AffinityWeight)
|
||||||
d.Set("anti_affinity_rules", flattenListRules(computeRec.AntiAffinityRules))
|
d.Set("anti_affinity_rules", flattenListRules(computeRec.AntiAffinityRules))
|
||||||
d.Set("arch", computeRec.Architecture)
|
d.Set("arch", computeRec.Architecture)
|
||||||
|
d.Set("chipset", computeRec.Chipset)
|
||||||
d.Set("boot_order", computeRec.BootOrder)
|
d.Set("boot_order", computeRec.BootOrder)
|
||||||
d.Set("bootdisk_size", computeRec.BootDiskSize)
|
d.Set("bootdisk_size", computeRec.BootDiskSize)
|
||||||
d.Set("cd_image_id", computeRec.CdImageId)
|
d.Set("cd_image_id", computeRec.CdImageId)
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ func networkSubresourceSchemaMake() map[string]*schema.Schema {
|
|||||||
Type: schema.TypeString,
|
Type: schema.TypeString,
|
||||||
Required: true,
|
Required: true,
|
||||||
StateFunc: statefuncs.StateFuncToUpper,
|
StateFunc: statefuncs.StateFuncToUpper,
|
||||||
ValidateFunc: validation.StringInSlice([]string{"EXTNET", "VINS", "VFNIC"}, false), // observe case while validating
|
ValidateFunc: validation.StringInSlice([]string{"EXTNET", "VINS", "VFNIC", "DPDK"}, false), // observe case while validating
|
||||||
Description: "Type of the network for this connection, either EXTNET or VINS.",
|
Description: "Type of the network for this connection, either EXTNET or VINS.",
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -155,8 +155,18 @@ func networkSubresourceSchemaMake() map[string]*schema.Schema {
|
|||||||
"weight": {
|
"weight": {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Optional: true,
|
Optional: true,
|
||||||
|
Computed: true,
|
||||||
Description: "weight the network if you need to sort network list, the smallest attach first. zero or null weight attach last",
|
Description: "weight the network if you need to sort network list, the smallest attach first. zero or null weight attach last",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"mtu": {
|
||||||
|
Type: schema.TypeInt,
|
||||||
|
Optional: true,
|
||||||
|
Computed: true,
|
||||||
|
//Default: 1500,
|
||||||
|
ValidateFunc: validation.IntBetween(1, 9216),
|
||||||
|
Description: "Maximum transmission unit, used only for DPDK type, must be 1-9216",
|
||||||
|
},
|
||||||
}
|
}
|
||||||
return rets
|
return rets
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user