Fixed asyncs tasks parsing; Applied k8s API changes; Updated docs

2.0
kjubybot 3 years ago
parent d9c10c0d9c
commit bf1afc66dd

@ -25,7 +25,8 @@ Visit https://github.com/rudecs/terraform-provider-decort for full source code p
package decort
import (
"bytes"
"encoding/json"
"fmt"
"strconv"
"time"
)
@ -35,6 +36,7 @@ import (
var Timeout30s = time.Second * 30
var Timeout60s = time.Second * 60
var Timeout180s = time.Second * 180
var Timeout10m = time.Minute * 10
//
// structures related to /cloudapi/rg/list API
@ -581,11 +583,12 @@ const VinsDeleteAPI = "/restmachine/cloudapi/vins/delete"
//K8sNodeRecord represents a worker/master group
type K8sNodeRecord struct {
ID int `json:"id"`
Disk int `json:"disk"`
Cpu int `json:"cpu"`
Num int `json:"num"`
Ram int `json:"ram"`
ID int `json:"id"`
Name string `json:"name"`
Disk int `json:"disk"`
Cpu int `json:"cpu"`
Num int `json:"num"`
Ram int `json:"ram"`
}
//K8sRecord represents k8s instance
@ -611,22 +614,35 @@ const K8sDeleteAPI = "/restmachine/cloudapi/k8s/delete"
const K8sWgCreateAPI = "/restmachine/cloudapi/k8s/workersGroupAdd"
const K8sWgDeleteAPI = "/restmachine/cloudapi/k8s/workersGroupDelete"
const K8sGetConfigAPI = "/restmachine/cloudapi/k8s/getConfig"
//Blasphemous workaround for parsing Result value
type TaskResult int
func (r *TaskResult) UnmarshalJSON(b []byte) error {
b = bytes.Trim(b, `"`)
if len(b) == 0 {
*r = 0
return nil
}
n, err := strconv.Atoi(string(b))
if err != nil {
return err
if b[0] == '"' {
b := b[1 : len(b)-1]
if len(b) == 0 {
*r = 0
return nil
}
n, err := strconv.Atoi(string(b))
if err != nil {
return err
}
*r = TaskResult(n)
} else if b[0] == '[' {
res := []interface{}{}
if err := json.Unmarshal(b, &res); err != nil {
return err
}
if n, ok := res[0].(float64); ok {
*r = TaskResult(n)
} else {
return fmt.Errorf("could not unmarshal %v into int", res[0])
}
}
*r = TaskResult(n)
return nil
}

@ -44,6 +44,7 @@ func resourceK8sCreate(d *schema.ResourceData, m interface{}) error {
urlValues.Add("name", d.Get("name").(string))
urlValues.Add("rgId", strconv.Itoa(d.Get("rg_id").(int)))
urlValues.Add("k8ciId", strconv.Itoa(d.Get("k8sci_id").(int)))
urlValues.Add("workerGroupName", d.Get("wg_name").(string))
var masterNode K8sNodeRecord
if masters, ok := d.GetOk("masters"); ok {
@ -67,7 +68,6 @@ func resourceK8sCreate(d *schema.ResourceData, m interface{}) error {
urlValues.Add("workerRam", strconv.Itoa(workerNode.Ram))
urlValues.Add("workerDisk", strconv.Itoa(workerNode.Disk))
//TODO find a way to avoid hardcoding these values
//if withLB, ok := d.GetOk("with_lb"); ok {
//urlValues.Add("withLB", strconv.FormatBool(withLB.(bool)))
//}
@ -121,6 +121,11 @@ func resourceK8sCreate(d *schema.ResourceData, m interface{}) error {
d.Set("default_wg_id", k8s.Groups.Workers[0].ID)
urlValues = &url.Values{}
urlValues.Add("k8sId", d.Id())
kubeconfig, err := controller.decortAPICall("POST", K8sGetConfigAPI, urlValues)
d.Set("kubeconfig", kubeconfig)
return nil
}
@ -136,6 +141,7 @@ func resourceK8sRead(d *schema.ResourceData, m interface{}) error {
d.Set("name", k8s.Name)
d.Set("rg_id", k8s.RgID)
d.Set("k8sci_id", k8s.CI)
d.Set("wg_name", k8s.Groups.Workers[0].Name)
d.Set("masters", nodeToResource(k8s.Groups.Masters))
d.Set("workers", nodeToResource(k8s.Groups.Workers[0]))
d.Set("default_wg_id", k8s.Groups.Workers[0].ID)
@ -216,6 +222,13 @@ func resourceK8sSchemaMake() map[string]*schema.Schema {
Description: "ID of the k8s catalog item to base this instance on.",
},
"wg_name": {
Type: schema.TypeString,
Required: true,
ForceNew: true,
Description: "Name for first worker group created with cluster.",
},
"masters": {
Type: schema.TypeList,
Optional: true,
@ -265,6 +278,12 @@ func resourceK8sSchemaMake() map[string]*schema.Schema {
Computed: true,
Description: "ID of default workers group for this instace.",
},
"kubeconfig": {
Type: schema.TypeString,
Computed: true,
Description: "Kubeconfig for cluster access.",
},
}
}
@ -282,7 +301,13 @@ func resourceK8s() *schema.Resource {
State: schema.ImportStatePassthrough,
},
//TODO timeouts
Timeouts: &schema.ResourceTimeout{
Create: &Timeout10m,
Read: &Timeout30s,
Update: &Timeout60s,
Delete: &Timeout60s,
Default: &Timeout60s,
},
Schema: resourceK8sSchemaMake(),
}

@ -28,7 +28,6 @@ import (
"net/url"
"strconv"
"github.com/google/uuid"
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
log "github.com/sirupsen/logrus"
)
@ -39,7 +38,7 @@ func resourceK8sWgCreate(d *schema.ResourceData, m interface{}) error {
controller := m.(*ControllerCfg)
urlValues := &url.Values{}
urlValues.Add("k8sId", strconv.Itoa(d.Get("k8s_id").(int)))
urlValues.Add("name", uuid.New().String())
urlValues.Add("name", d.Get("name").(string))
urlValues.Add("workerNum", strconv.Itoa(d.Get("num").(int)))
urlValues.Add("workerCpu", strconv.Itoa(d.Get("cpu").(int)))
urlValues.Add("workerRam", strconv.Itoa(d.Get("ram").(int)))
@ -51,6 +50,9 @@ func resourceK8sWgCreate(d *schema.ResourceData, m interface{}) error {
}
d.SetId(resp)
// This code is the supposed flow, but at the time of writing it's not yet implemented by the platfom
//urlValues = &url.Values{}
//urlValues.Add("auditId", strings.Trim(resp, `"`))
@ -90,6 +92,7 @@ func resourceK8sWgRead(d *schema.ResourceData, m interface{}) error {
return err
}
d.Set("name", wg.Name)
d.Set("num", wg.Num)
d.Set("cpu", wg.Cpu)
d.Set("ram", wg.Ram)
@ -145,13 +148,12 @@ func resourceK8sWgSchemaMake() map[string]*schema.Schema {
Description: "ID of k8s instance.",
},
//Unused but required by creation API. Sending generated UUID each time
//"name": {
//Type: schema.TypeString,
//Required: true,
//ForceNew: true,
//Description: "Name of the worker group.",
//},
"name": {
Type: schema.TypeString,
Required: true,
ForceNew: true,
Description: "Name of the worker group.",
},
"num": {
Type: schema.TypeInt,
@ -200,7 +202,12 @@ func resourceK8sWg() *schema.Resource {
State: schema.ImportStatePassthrough,
},
//TODO timeouts
Timeouts: &schema.ResourceTimeout{
Create: &Timeout10m,
Read: &Timeout30s,
Delete: &Timeout60s,
Default: &Timeout60s,
},
Schema: resourceK8sWgSchemaMake(),
}

@ -0,0 +1,43 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_grid Data Source - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_grid (Data Source)
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- **grid_id** (Number)
### Optional
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
### Read-Only
- **flag** (String)
- **gid** (Number)
- **guid** (Number)
- **id** (Number) The ID of this resource.
- **location_code** (String)
- **name** (String)
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
Optional:
- **default** (String)
- **read** (String)

@ -0,0 +1,50 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_grid_list Data Source - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_grid_list (Data Source)
<!-- schema generated by tfplugindocs -->
## Schema
### Optional
- **id** (String) The ID of this resource.
- **page** (Number) page number
- **size** (Number) page size
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
### Read-Only
- **items** (List of Object) grid list (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:
- **flag** (String)
- **gid** (Number)
- **guid** (Number)
- **id** (Number)
- **location_code** (String)
- **name** (String)

@ -17,21 +17,53 @@ description: |-
### Required
- **name** (String) Name of the image to locate. This parameter is case sensitive.
- **image_id** (Number) image id
### Optional
- **account_id** (Number) Optional ID of the account to limit image search to.
- **id** (String) The ID of this resource.
- **shared_with** (List of Number)
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
### Read-Only
- **arch** (String) Binary architecture of this image.
- **pool** (String) Pool where this image is located.
- **sep_id** (Number) Storage end-point provider serving this image.
- **size** (Number) Size of the image in GB.
- **status** (String) Current model status of this image.
- **account_id** (Number) AccountId to make the image exclusive
- **architecture** (String) binary architecture of this image, one of X86_64 of PPC64_LE
- **boot_type** (String) Boot type of image bios or uefi
- **bootable** (Boolean) Does this image boot OS
- **computeci_id** (Number)
- **desc** (String)
- **drivers** (List of String) List of types of compute suitable for image. Example: [ "KVM_X86" ]
- **enabled** (Boolean)
- **gid** (Number) grid (platform) ID where this template should be create in
- **guid** (Number)
- **history** (List of Object) (see [below for nested schema](#nestedatt--history))
- **hot_resize** (Boolean) Does this machine supports hot resize
- **image_type** (String) Image type linux, windows or other
- **last_modified** (Number)
- **link_to** (Number)
- **meta** (List of String) meta
- **milestones** (Number)
- **name** (String) Name of the rescue disk
- **password** (String) Optional password for the image
- **password_dl** (String) password for upload binary media
- **permanently** (Boolean) Whether to completely delete the image
- **pool_name** (String) pool for image create
- **provider_name** (String)
- **purge_attempts** (Number)
- **reference_id** (String)
- **res_id** (String)
- **res_name** (String)
- **rescuecd** (Boolean)
- **sep_id** (Number) storage endpoint provider ID
- **size** (Number) image size
- **status** (String) status
- **tech_status** (String) tech atatus
- **unc_path** (String) unc path
- **url** (String) URL where to download media from
- **username** (String) Optional username for the image
- **username_dl** (String) username for upload binary media
- **version** (String) version
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
@ -42,3 +74,13 @@ Optional:
- **read** (String)
<a id="nestedatt--history"></a>
### Nested Schema for `history`
Read-Only:
- **guid** (String)
- **id** (Number)
- **timestamp** (Number)

@ -0,0 +1,94 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_image_list Data Source - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_image_list (Data Source)
<!-- schema generated by tfplugindocs -->
## Schema
### Optional
- **id** (String) The ID of this resource.
- **page** (Number) page number
- **sep_id** (Number) filter images by storage endpoint provider ID
- **shared_with** (Number) filter images by account ID availability
- **size** (Number) page size
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
### Read-Only
- **items** (List of Object) image list (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_id** (Number)
- **architecture** (String)
- **boot_type** (String)
- **bootable** (Boolean)
- **computeci_id** (Number)
- **desc** (String)
- **drivers** (List of String)
- **enabled** (Boolean)
- **gid** (Number)
- **guid** (Number)
- **history** (List of Object) (see [below for nested schema](#nestedobjatt--items--history))
- **hot_resize** (Boolean)
- **image_id** (Number)
- **image_type** (String)
- **last_modified** (Number)
- **link_to** (Number)
- **meta** (List of String)
- **milestones** (Number)
- **name** (String)
- **password** (String)
- **password_dl** (String)
- **permanently** (Boolean)
- **pool_name** (String)
- **provider_name** (String)
- **purge_attempts** (Number)
- **reference_id** (String)
- **res_id** (String)
- **res_name** (String)
- **rescuecd** (Boolean)
- **sep_id** (Number)
- **shared_with** (List of Number)
- **size** (Number)
- **status** (String)
- **tech_status** (String)
- **unc_path** (String)
- **url** (String)
- **username** (String)
- **username_dl** (String)
- **version** (String)
<a id="nestedobjatt--items--history"></a>
### Nested Schema for `items.history`
Read-Only:
- **guid** (String)
- **id** (Number)
- **timestamp** (Number)

@ -0,0 +1,63 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_image_list_stacks Data Source - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_image_list_stacks (Data Source)
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- **image_id** (Number) image id
### Optional
- **id** (String) The ID of this resource.
- **page** (Number) page number
- **size** (Number) page size
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
### Read-Only
- **items** (List of Object) items of stacks list (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:
- **api_key** (String)
- **api_url** (String)
- **app_id** (String)
- **desc** (String)
- **drivers** (List of String)
- **error** (Number)
- **guid** (Number)
- **id** (Number)
- **images** (List of Number)
- **login** (String)
- **name** (String)
- **passwd** (String)
- **reference_id** (String)
- **status** (String)
- **type** (String)

@ -0,0 +1,89 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_cdrom_image Resource - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_cdrom_image (Resource)
<!-- schema generated by tfplugindocs -->
## Schema
### 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
- **name** (String) Name of the rescue disk
- **url** (String) URL where to download ISO from
### Optional
- **account_id** (Number) AccountId to make the image exclusive
- **architecture** (String) binary architecture of this image, one of X86_64 of PPC64_LE
- **bootable** (Boolean) Does this image boot OS
- **computeci_id** (Number)
- **enabled** (Boolean)
- **enabled_stacks** (List of String)
- **hot_resize** (Boolean) Does this machine supports hot resize
- **id** (String) The ID of this resource.
- **password** (String) Optional password for the image
- **password_dl** (String) password for upload binary media
- **permanently** (Boolean) Whether to completely delete the image
- **pool_name** (String) pool for image create
- **sep_id** (Number) storage endpoint provider ID
- **shared_with** (List of Number)
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
- **username** (String) Optional username for the image
- **username_dl** (String) username for upload binary media
### Read-Only
- **boot_type** (String) Boot type of image bios or uefi
- **desc** (String)
- **guid** (Number)
- **history** (List of Object) (see [below for nested schema](#nestedatt--history))
- **image_id** (Number) image id
- **image_type** (String) Image type linux, windows or other
- **link_to** (Number)
- **meta** (List of String) meta
- **milestones** (Number)
- **provider_name** (String)
- **purge_attempts** (Number)
- **reference_id** (String)
- **res_id** (String)
- **res_name** (String)
- **rescuecd** (Boolean)
- **size** (Number) image size
- **status** (String) status
- **tech_status** (String) tech atatus
- **unc_path** (String) unc path
- **version** (String) version
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
Optional:
- **create** (String)
- **default** (String)
- **delete** (String)
- **read** (String)
- **update** (String)
<a id="nestedatt--history"></a>
### Nested Schema for `history`
Read-Only:
- **guid** (String)
- **id** (Number)
- **timestamp** (Number)

@ -0,0 +1,40 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_delete_images Resource - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_delete_images (Resource)
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- **image_ids** (List of Number) images ids for deleting
- **reason** (String) reason for deleting the images
### Optional
- **id** (String) The ID of this resource.
- **permanently** (Boolean) whether to completely delete the images
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
Optional:
- **create** (String)
- **default** (String)
- **delete** (String)
- **read** (String)
- **update** (String)

@ -0,0 +1,92 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_image Resource - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_image (Resource)
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- **boot_type** (String) Boot type of image bios or uefi
- **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
- **image_type** (String) Image type linux, windows or other
- **name** (String) Name of the rescue disk
- **url** (String) URL where to download media from
### Optional
- **account_id** (Number) AccountId to make the image exclusive
- **architecture** (String) binary architecture of this image, one of X86_64 of PPC64_LE
- **bootable** (Boolean) Does this image boot OS
- **computeci_id** (Number)
- **enabled** (Boolean)
- **enabled_stacks** (List of String)
- **hot_resize** (Boolean) Does this machine supports hot resize
- **id** (String) The ID of this resource.
- **image_id** (Number) image id
- **password** (String) Optional password for the image
- **password_dl** (String) password for upload binary media
- **permanently** (Boolean) Whether to completely delete the image
- **pool_name** (String) pool for image create
- **reason** (String)
- **sep_id** (Number) storage endpoint provider ID
- **shared_with** (List of Number)
- **sync** (Boolean) Create image from a media identified by URL (in synchronous mode)
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
- **username** (String) Optional username for the image
- **username_dl** (String) username for upload binary media
### Read-Only
- **desc** (String)
- **guid** (Number)
- **history** (List of Object) (see [below for nested schema](#nestedatt--history))
- **last_modified** (Number)
- **link_to** (Number)
- **meta** (List of String) meta
- **milestones** (Number)
- **provider_name** (String)
- **purge_attempts** (Number)
- **reference_id** (String)
- **res_id** (String)
- **res_name** (String)
- **rescuecd** (Boolean)
- **size** (Number) image size
- **status** (String) status
- **tech_status** (String) tech atatus
- **unc_path** (String) unc path
- **version** (String) version
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
Optional:
- **create** (String)
- **default** (String)
- **delete** (String)
- **read** (String)
- **update** (String)
<a id="nestedatt--history"></a>
### Nested Schema for `history`
Read-Only:
- **guid** (String)
- **id** (Number)
- **timestamp** (Number)

@ -20,16 +20,19 @@ description: |-
- **k8sci_id** (Number) ID of the k8s catalog item to base this instance on.
- **name** (String) Name of the cluster.
- **rg_id** (Number) Resource group ID that this instance belongs to.
- **wg_name** (String) Name for first worker group created with cluster.
### Optional
- **id** (String) The ID of this resource.
- **masters** (Block List, Max: 1) Master node(s) configuration. (see [below for nested schema](#nestedblock--masters))
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
- **workers** (Block List, Max: 1) Worker node(s) configuration. (see [below for nested schema](#nestedblock--workers))
### Read-Only
- **default_wg_id** (Number) ID of default workers group for this instace.
- **kubeconfig** (String) Kubeconfig for cluster access.
<a id="nestedblock--masters"></a>
### Nested Schema for `masters`
@ -42,6 +45,18 @@ Required:
- **ram** (Number) Node RAM in MB.
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
Optional:
- **create** (String)
- **default** (String)
- **delete** (String)
- **read** (String)
- **update** (String)
<a id="nestedblock--workers"></a>
### Nested Schema for `workers`

@ -18,6 +18,7 @@ description: |-
### Required
- **k8s_id** (Number) ID of k8s instance.
- **name** (String) Name of the worker group.
### Optional
@ -26,5 +27,16 @@ description: |-
- **id** (String) The ID of this resource.
- **num** (Number) Number of worker nodes to create.
- **ram** (Number) Worker node RAM in MB.
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
Optional:
- **create** (String)
- **default** (String)
- **delete** (String)
- **read** (String)

@ -0,0 +1,92 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "decort_virtual_image Resource - terraform-provider-decort"
subcategory: ""
description: |-
---
# decort_virtual_image (Resource)
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- **name** (String) name of the virtual image to create
- **target_id** (Number) ID of real image to link this virtual image to upon creation
### Optional
- **account_id** (Number) AccountId to make the image exclusive
- **architecture** (String) binary architecture of this image, one of X86_64 of PPC64_LE
- **bootable** (Boolean) Does this image boot OS
- **computeci_id** (Number)
- **enabled** (Boolean)
- **enabled_stacks** (List of String)
- **hot_resize** (Boolean) Does this machine supports hot resize
- **id** (String) The ID of this resource.
- **link_to** (Number)
- **password** (String) Optional password for the image
- **password_dl** (String) password for upload binary media
- **permanently** (Boolean) Whether to completely delete the image
- **pool_name** (String) pool for image create
- **reason** (String)
- **sep_id** (Number) storage endpoint provider ID
- **shared_with** (List of Number)
- **timeouts** (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
- **username** (String) Optional username for the image
- **username_dl** (String) username for upload binary media
### Read-Only
- **boot_type** (String) Boot type of image bios or uefi
- **desc** (String)
- **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
- **guid** (Number)
- **history** (List of Object) (see [below for nested schema](#nestedatt--history))
- **image_id** (Number) image id
- **image_type** (String) Image type linux, windows or other
- **last_modified** (Number)
- **meta** (List of String) meta
- **milestones** (Number)
- **provider_name** (String)
- **purge_attempts** (Number)
- **reference_id** (String)
- **res_id** (String)
- **res_name** (String)
- **rescuecd** (Boolean)
- **size** (Number) image size
- **status** (String) status
- **tech_status** (String) tech atatus
- **unc_path** (String) unc path
- **url** (String) URL where to download media from
- **version** (String) version
<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`
Optional:
- **create** (String)
- **default** (String)
- **delete** (String)
- **read** (String)
- **update** (String)
<a id="nestedatt--history"></a>
### Nested Schema for `history`
Read-Only:
- **guid** (String)
- **id** (Number)
- **timestamp** (Number)

@ -169,7 +169,6 @@ github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hf
github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.1.2 h1:EVhdT+1Kseyi1/pUmXKaFxYsDNy9RQYkMWRH68J/W7Y=
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=
github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=

Loading…
Cancel
Save