You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
472 lines
10 KiB
472 lines
10 KiB
package flipgroup
|
|
|
|
import (
|
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
|
|
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
|
|
)
|
|
|
|
func dataSourceFlipgroupSchemaMake() map[string]*schema.Schema {
|
|
rets := map[string]*schema.Schema{
|
|
"flipgroup_id": {
|
|
Type: schema.TypeInt,
|
|
Required: true,
|
|
Description: "flipgroup_id",
|
|
},
|
|
"account_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "account_id",
|
|
},
|
|
"account_name": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "account_name",
|
|
},
|
|
"client_ids": {
|
|
Type: schema.TypeList,
|
|
Computed: true,
|
|
Elem: &schema.Schema{
|
|
Type: schema.TypeInt,
|
|
},
|
|
Description: "client_ids",
|
|
},
|
|
"client_names": {
|
|
Type: schema.TypeList,
|
|
Computed: true,
|
|
Elem: &schema.Schema{
|
|
Type: schema.TypeString,
|
|
},
|
|
Description: "client_names",
|
|
},
|
|
"client_type": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "client_type",
|
|
},
|
|
"conn_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "conn_id",
|
|
},
|
|
"conn_type": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "conn_type",
|
|
},
|
|
"created_by": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "created_by",
|
|
},
|
|
"created_time": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "created_time",
|
|
},
|
|
"default_gw": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "default_gw",
|
|
},
|
|
"deleted_by": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "deleted_by",
|
|
},
|
|
"deleted_time": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "deleted_time",
|
|
},
|
|
"description": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "description",
|
|
},
|
|
"gid": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "gid",
|
|
},
|
|
"guid": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "guid",
|
|
},
|
|
"ip": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "ip",
|
|
},
|
|
"milestones": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "milestones",
|
|
},
|
|
"name": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "name",
|
|
},
|
|
"net_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "net_id",
|
|
},
|
|
"net_type": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "net_type",
|
|
},
|
|
"network": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "network",
|
|
},
|
|
"rg_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "rg_id",
|
|
},
|
|
"rg_name": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "rg_name",
|
|
},
|
|
"status": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "status",
|
|
},
|
|
"updated_by": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "updated_by",
|
|
},
|
|
"updated_time": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "updated_time",
|
|
},
|
|
}
|
|
return rets
|
|
}
|
|
|
|
func dataSourceFlipgroupsListSchemaMake() map[string]*schema.Schema {
|
|
res := map[string]*schema.Schema{
|
|
"name": {
|
|
Type: schema.TypeString,
|
|
Optional: true,
|
|
Description: "name",
|
|
},
|
|
"vins_id": {
|
|
Type: schema.TypeInt,
|
|
Optional: true,
|
|
Description: "vins_id",
|
|
},
|
|
"vins_name": {
|
|
Type: schema.TypeString,
|
|
Optional: true,
|
|
Description: "vins_name",
|
|
},
|
|
"extnet_id": {
|
|
Type: schema.TypeInt,
|
|
Optional: true,
|
|
Description: "extnet_id",
|
|
},
|
|
"by_ip": {
|
|
Type: schema.TypeString,
|
|
Optional: true,
|
|
Description: "by_ip",
|
|
},
|
|
"rg_id": {
|
|
Type: schema.TypeInt,
|
|
Optional: true,
|
|
Description: "rg_id",
|
|
},
|
|
"by_id": {
|
|
Type: schema.TypeInt,
|
|
Optional: true,
|
|
Description: "by_id",
|
|
},
|
|
"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{
|
|
"ckey": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "ckey",
|
|
},
|
|
"meta": {
|
|
Type: schema.TypeList,
|
|
Computed: true,
|
|
Elem: &schema.Schema{
|
|
Type: schema.TypeString,
|
|
},
|
|
},
|
|
"account_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "account_id",
|
|
},
|
|
"client_ids": {
|
|
Type: schema.TypeList,
|
|
Computed: true,
|
|
Elem: &schema.Schema{
|
|
Type: schema.TypeInt,
|
|
},
|
|
Description: "client_ids",
|
|
},
|
|
"client_type": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "client_type",
|
|
},
|
|
"conn_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "conn_id",
|
|
},
|
|
"conn_type": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "conn_type",
|
|
},
|
|
"default_gw": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "default_gw",
|
|
},
|
|
"description": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "description",
|
|
},
|
|
"gid": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "gid",
|
|
},
|
|
"guid": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "guid",
|
|
},
|
|
"flipgroup_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "flipgroup_id",
|
|
},
|
|
"ip": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "ip",
|
|
},
|
|
"milestones": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "milestones",
|
|
},
|
|
"name": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "name",
|
|
},
|
|
"net_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "net_id",
|
|
},
|
|
"net_type": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "net_type",
|
|
},
|
|
"net_mask": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "net_mask",
|
|
},
|
|
"status": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "status",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
"entry_count": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "entry_count",
|
|
},
|
|
}
|
|
return res
|
|
}
|
|
|
|
func resourceFlipgroupSchemaMake() map[string]*schema.Schema {
|
|
return map[string]*schema.Schema{
|
|
"account_id": {
|
|
Type: schema.TypeInt,
|
|
Required: true,
|
|
Description: "Account ID",
|
|
},
|
|
"name": {
|
|
Type: schema.TypeString,
|
|
Required: true,
|
|
Description: "Flipgroup name",
|
|
},
|
|
"net_id": {
|
|
Type: schema.TypeInt,
|
|
Required: true,
|
|
Description: "EXTNET or ViNS ID",
|
|
},
|
|
"net_type": {
|
|
Type: schema.TypeString,
|
|
Required: true,
|
|
ValidateFunc: validation.StringInSlice([]string{"EXTNET", "VINS"}, true),
|
|
Description: "Network type, EXTNET or VINS",
|
|
},
|
|
"client_type": {
|
|
Type: schema.TypeString,
|
|
Required: true,
|
|
Description: "Type of client, 'compute' ('vins' will be later)",
|
|
ValidateFunc: validation.StringInSlice([]string{"compute"}, true),
|
|
},
|
|
"ip": {
|
|
Type: schema.TypeString,
|
|
Optional: true,
|
|
Computed: true,
|
|
Description: "IP address to associate with this group. If empty, the platform will autoselect IP address",
|
|
},
|
|
"desc": {
|
|
Type: schema.TypeString,
|
|
Optional: true,
|
|
Computed: true,
|
|
Description: "Text description of this Flipgroup instance",
|
|
},
|
|
"client_ids": {
|
|
Type: schema.TypeList,
|
|
Optional: true,
|
|
Computed: true,
|
|
Elem: &schema.Schema{
|
|
Type: schema.TypeInt,
|
|
},
|
|
Description: "List of clients attached to this Flipgroup instance",
|
|
},
|
|
"client_names": {
|
|
Type: schema.TypeList,
|
|
Computed: true,
|
|
Elem: &schema.Schema{
|
|
Type: schema.TypeString,
|
|
},
|
|
Description: "client_names",
|
|
},
|
|
"account_name": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "account_name",
|
|
},
|
|
"flipgroup_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
},
|
|
"conn_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
},
|
|
"conn_type": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
},
|
|
"created_by": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "created_by",
|
|
},
|
|
"created_time": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "created_time",
|
|
},
|
|
"default_gw": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
},
|
|
"deleted_by": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "deleted_by",
|
|
},
|
|
"deleted_time": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "deleted_time",
|
|
},
|
|
"gid": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "gid",
|
|
},
|
|
"guid": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "guid",
|
|
},
|
|
"milestones": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "milestones",
|
|
},
|
|
"network": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "network",
|
|
},
|
|
"rg_id": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "rg_id",
|
|
},
|
|
"rg_name": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "rg_name",
|
|
},
|
|
"status": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
},
|
|
"updated_by": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
Description: "updated_by",
|
|
},
|
|
"updated_time": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
Description: "updated_time",
|
|
},
|
|
"net_mask": {
|
|
Type: schema.TypeInt,
|
|
Computed: true,
|
|
},
|
|
"ckey": {
|
|
Type: schema.TypeString,
|
|
Computed: true,
|
|
},
|
|
}
|
|
}
|