Documentation
¶
Index ¶
- Constants
- func NewCloudPcsDataSource() datasource.DataSource
- type CloudPcItemModel
- type CloudPcsDataSource
- func (d *CloudPcsDataSource) Configure(ctx context.Context, req datasource.ConfigureRequest, ...)
- func (d *CloudPcsDataSource) Metadata(ctx context.Context, req datasource.MetadataRequest, ...)
- func (d *CloudPcsDataSource) Read(ctx context.Context, req datasource.ReadRequest, resp *datasource.ReadResponse)
- func (d *CloudPcsDataSource) Schema(ctx context.Context, _ datasource.SchemaRequest, ...)
- type CloudPcsDataSourceModel
Constants ¶
View Source
const ( DataSourceName = "graph_beta_windows_365_cloud_pcs" ReadTimeout = 180 )
Variables ¶
This section is empty.
Functions ¶
func NewCloudPcsDataSource ¶
func NewCloudPcsDataSource() datasource.DataSource
Types ¶
type CloudPcItemModel ¶
type CloudPcItemModel struct {
ID types.String `tfsdk:"id"`
DisplayName types.String `tfsdk:"display_name"`
AADDeviceID types.String `tfsdk:"aad_device_id"`
ImageDisplayName types.String `tfsdk:"image_display_name"`
ManagedDeviceID types.String `tfsdk:"managed_device_id"`
ManagedDeviceName types.String `tfsdk:"managed_device_name"`
ProvisioningPolicyID types.String `tfsdk:"provisioning_policy_id"`
ProvisioningPolicyName types.String `tfsdk:"provisioning_policy_name"`
OnPremisesConnectionName types.String `tfsdk:"on_premises_connection_name"`
ServicePlanID types.String `tfsdk:"service_plan_id"`
ServicePlanName types.String `tfsdk:"service_plan_name"`
ServicePlanType types.String `tfsdk:"service_plan_type"`
Status types.String `tfsdk:"status"`
UserPrincipalName types.String `tfsdk:"user_principal_name"`
LastModifiedDateTime types.String `tfsdk:"last_modified_date_time"`
StatusDetailCode types.String `tfsdk:"status_detail_code"`
StatusDetailMessage types.String `tfsdk:"status_detail_message"`
GracePeriodEndDateTime types.String `tfsdk:"grace_period_end_date_time"`
ProvisioningType types.String `tfsdk:"provisioning_type"`
DeviceRegionName types.String `tfsdk:"device_region_name"`
DiskEncryptionState types.String `tfsdk:"disk_encryption_state"`
ProductType types.String `tfsdk:"product_type"`
UserAccountType types.String `tfsdk:"user_account_type"`
EnableSingleSignOn types.Bool `tfsdk:"enable_single_sign_on"`
}
CloudPcItemModel represents an individual Cloud PC
func MapRemoteStateToDataSource ¶
func MapRemoteStateToDataSource(ctx context.Context, data graphmodels.CloudPCable) CloudPcItemModel
type CloudPcsDataSource ¶
type CloudPcsDataSource struct {
ProviderTypeName string
TypeName string
ReadPermissions []string
// contains filtered or unexported fields
}
func (*CloudPcsDataSource) Configure ¶
func (d *CloudPcsDataSource) Configure(ctx context.Context, req datasource.ConfigureRequest, resp *datasource.ConfigureResponse)
func (*CloudPcsDataSource) Metadata ¶
func (d *CloudPcsDataSource) Metadata(ctx context.Context, req datasource.MetadataRequest, resp *datasource.MetadataResponse)
func (*CloudPcsDataSource) Read ¶
func (d *CloudPcsDataSource) Read(ctx context.Context, req datasource.ReadRequest, resp *datasource.ReadResponse)
Read implements the data source Read method. It handles three main filtering approaches: 1. Get by ID: Direct lookup of a single Cloud PC by its unique identifier (most efficient) 2. Server-side filtering: Uses OData query parameters for server-side filtering 3. Client-side filtering: Retrieves a list ofall Cloud PCs and filters locally for simple operations
func (*CloudPcsDataSource) Schema ¶
func (d *CloudPcsDataSource) Schema(ctx context.Context, _ datasource.SchemaRequest, resp *datasource.SchemaResponse)
type CloudPcsDataSourceModel ¶
type CloudPcsDataSourceModel struct {
FilterType types.String `tfsdk:"filter_type"`
FilterValue types.String `tfsdk:"filter_value"`
ODataFilter types.String `tfsdk:"odata_filter"`
ODataSelect types.String `tfsdk:"odata_select"`
ODataTop types.Int64 `tfsdk:"odata_top"`
ODataCount types.Bool `tfsdk:"odata_count"`
Items []CloudPcItemModel `tfsdk:"items"`
Timeouts timeouts.Value `tfsdk:"timeouts"`
}
CloudPcsDataSourceModel represents the Terraform data source model for Cloud PCs
Click to show internal directories.
Click to hide internal directories.