Documentation
¶
Index ¶
- func NewDataSource() datasource.DataSource
- func NewResource() resource.Resource
- type DataSource
- func (d *DataSource) Configure(_ context.Context, req datasource.ConfigureRequest, ...)
- func (d *DataSource) Metadata(ctx context.Context, req datasource.MetadataRequest, ...)
- func (d *DataSource) Read(ctx context.Context, req datasource.ReadRequest, resp *datasource.ReadResponse)
- func (d *DataSource) Schema(ctx context.Context, req datasource.SchemaRequest, ...)
- type DataSourceModel
- type LocalSourceValidator
- type ReadOnlySourceValidator
- type Resource
- func (r *Resource) ConfigValidators(_ context.Context) []resource.ConfigValidator
- func (r *Resource) Configure(_ context.Context, req resource.ConfigureRequest, ...)
- func (r *Resource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse)
- func (r *Resource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse)
- func (r *Resource) ImportState(ctx context.Context, req resource.ImportStateRequest, ...)
- func (r *Resource) Metadata(_ context.Context, req resource.MetadataRequest, ...)
- func (r *Resource) Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse)
- func (r *Resource) Schema(ctx context.Context, _ resource.SchemaRequest, resp *resource.SchemaResponse)
- func (r *Resource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse)
- type ResourceModel
- type StateDataSourceModel
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewDataSource ¶
func NewDataSource() datasource.DataSource
NewDataSource is a helper function to simplify the provider implementation.
func NewResource ¶
NewResource is a helper function to simplify the provider implementation.
Types ¶
type DataSource ¶
type DataSource struct {
// contains filtered or unexported fields
}
DataSource is the data source implementation.
func (*DataSource) Configure ¶
func (d *DataSource) Configure( _ context.Context, req datasource.ConfigureRequest, _ *datasource.ConfigureResponse, )
Configure adds the provider configured client to the data source.
func (*DataSource) Metadata ¶
func (d *DataSource) Metadata( ctx context.Context, req datasource.MetadataRequest, resp *datasource.MetadataResponse, )
Metadata sets the resource type name.
func (*DataSource) Read ¶
func (d *DataSource) Read( ctx context.Context, req datasource.ReadRequest, resp *datasource.ReadResponse, )
Read refreshes the Terraform state with the latest data.
func (*DataSource) Schema ¶
func (d *DataSource) Schema( ctx context.Context, req datasource.SchemaRequest, resp *datasource.SchemaResponse, )
Schema defines the schema for the data source.
type DataSourceModel ¶
type DataSourceModel struct {
ID types.String `tfsdk:"id"`
Name types.String `tfsdk:"name"`
Description types.String `tfsdk:"description"`
BlockSize types.Int64 `tfsdk:"block_size"`
DevicePath types.String `tfsdk:"device_path"`
ProjectName types.String `tfsdk:"project_name"`
ProjectID types.String `tfsdk:"project_id"`
Size types.Int64 `tfsdk:"size"`
State *StateDataSourceModel `tfsdk:"state"`
ImageID types.String `tfsdk:"image_id"`
SnapshotID types.String `tfsdk:"snapshot_id"`
DiskType types.String `tfsdk:"disk_type"`
ReadOnly types.Bool `tfsdk:"read_only"`
TimeCreated types.String `tfsdk:"time_created"`
TimeModified types.String `tfsdk:"time_modified"`
Timeouts timeouts.Value `tfsdk:"timeouts"`
}
DataSourceModel are the attributes that are supported on this data source.
type LocalSourceValidator ¶
type LocalSourceValidator struct{}
LocalSourceValidator validates that source-related fields are not set when disk_type is "local".
func (*LocalSourceValidator) Description ¶
func (v *LocalSourceValidator) Description(_ context.Context) string
func (*LocalSourceValidator) MarkdownDescription ¶
func (v *LocalSourceValidator) MarkdownDescription(ctx context.Context) string
func (*LocalSourceValidator) ValidateResource ¶
func (v *LocalSourceValidator) ValidateResource( ctx context.Context, req resource.ValidateConfigRequest, resp *resource.ValidateConfigResponse, )
type ReadOnlySourceValidator ¶
type ReadOnlySourceValidator struct{}
ReadOnlySourceValidator validates that one of source_image_id or source_snapshot_id is set when read_only is set.
func (*ReadOnlySourceValidator) Description ¶
func (v *ReadOnlySourceValidator) Description(_ context.Context) string
func (*ReadOnlySourceValidator) MarkdownDescription ¶
func (v *ReadOnlySourceValidator) MarkdownDescription(ctx context.Context) string
func (*ReadOnlySourceValidator) ValidateResource ¶
func (v *ReadOnlySourceValidator) ValidateResource( ctx context.Context, req resource.ValidateConfigRequest, resp *resource.ValidateConfigResponse, )
type Resource ¶
type Resource struct {
// contains filtered or unexported fields
}
Resource is the resource implementation.
func (*Resource) ConfigValidators ¶
func (r *Resource) ConfigValidators(_ context.Context) []resource.ConfigValidator
ConfigValidators returns the config validators for the resource.
func (*Resource) Configure ¶
func (r *Resource) Configure( _ context.Context, req resource.ConfigureRequest, _ *resource.ConfigureResponse, )
Configure adds the provider configured client to the data source.
func (*Resource) Create ¶
func (r *Resource) Create( ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse, )
Create creates the resource and sets the initial Terraform state.
func (*Resource) Delete ¶
func (r *Resource) Delete( ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse, )
Delete deletes the resource and removes the Terraform state on success.
func (*Resource) ImportState ¶
func (r *Resource) ImportState( ctx context.Context, req resource.ImportStateRequest, resp *resource.ImportStateResponse, )
ImportState imports an existing disk resource into Terraform state.
func (*Resource) Metadata ¶
func (r *Resource) Metadata( _ context.Context, req resource.MetadataRequest, resp *resource.MetadataResponse, )
Metadata returns the resource type name.
func (*Resource) Read ¶
func (r *Resource) Read( ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse, )
Read refreshes the Terraform state with the latest data.
func (*Resource) Schema ¶
func (r *Resource) Schema( ctx context.Context, _ resource.SchemaRequest, resp *resource.SchemaResponse, )
Schema defines the schema for the resource.
func (*Resource) Update ¶
func (r *Resource) Update( ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse, )
Update updates the resource and sets the updated Terraform state on success.
type ResourceModel ¶
type ResourceModel struct {
BlockSize types.Int64 `tfsdk:"block_size"`
Description types.String `tfsdk:"description"`
DevicePath types.String `tfsdk:"device_path"`
DiskType types.String `tfsdk:"disk_type"`
ID types.String `tfsdk:"id"`
SourceImageID types.String `tfsdk:"source_image_id"`
Name types.String `tfsdk:"name"`
ProjectID types.String `tfsdk:"project_id"`
Size types.Int64 `tfsdk:"size"`
SourceSnapshotID types.String `tfsdk:"source_snapshot_id"`
ReadOnly types.Bool `tfsdk:"read_only"`
TimeCreated types.String `tfsdk:"time_created"`
TimeModified types.String `tfsdk:"time_modified"`
Timeouts timeouts.Value `tfsdk:"timeouts"`
}