diff --git a/docs/resources/check.md b/docs/resources/check.md index ec625dd..2b03f7d 100644 --- a/docs/resources/check.md +++ b/docs/resources/check.md @@ -141,7 +141,6 @@ resource "towerops_check" "wan_ping" { - `hostname` (String) - The hostname to resolve. Required for DNS checks. - `record_type` (String) - DNS record type (`A`, `AAAA`, `CNAME`, `MX`, `TXT`, `NS`, `PTR`). Default: `"A"`. -- `dns_server` (String) - DNS server to query. Uses system default if not set. - `expected_result` (String) - Expected DNS resolution result. #### Ping Check Fields (used when `check_type = "ping"`) diff --git a/examples/resources/towerops_check/resource.tf b/examples/resources/towerops_check/resource.tf index b9123b1..2660ddf 100644 --- a/examples/resources/towerops_check/resource.tf +++ b/examples/resources/towerops_check/resource.tf @@ -15,12 +15,11 @@ resource "towerops_check" "radius_port" { port = 1812 } -# DNS resolution check +# DNS resolution check (uses device IP as DNS server when device_id is set) resource "towerops_check" "dns_resolution" { name = "DNS Resolution" check_type = "dns" hostname = "google.com" - dns_server = "10.0.0.1" record_type = "A" } diff --git a/internal/provider/check_resource.go b/internal/provider/check_resource.go index 0de77d9..1959b5e 100644 --- a/internal/provider/check_resource.go +++ b/internal/provider/check_resource.go @@ -55,7 +55,6 @@ type CheckResourceModel struct { // DNS config Hostname types.String `tfsdk:"hostname"` RecordType types.String `tfsdk:"record_type"` - DNSServer types.String `tfsdk:"dns_server"` ExpectedResult types.String `tfsdk:"expected_result"` // Ping config @@ -205,10 +204,6 @@ func (r *CheckResource) Schema(ctx context.Context, req resource.SchemaRequest, Computed: true, Default: stringdefault.StaticString("A"), }, - "dns_server": schema.StringAttribute{ - Description: "DNS server to query. Uses system default if not set.", - Optional: true, - }, "expected_result": schema.StringAttribute{ Description: "Expected DNS resolution result.", Optional: true, @@ -490,9 +485,6 @@ func buildConfig(data CheckResourceModel) map[string]any { if !data.RecordType.IsNull() { config["record_type"] = data.RecordType.ValueString() } - if !data.DNSServer.IsNull() { - config["server"] = data.DNSServer.ValueString() - } if !data.ExpectedResult.IsNull() { config["expected"] = data.ExpectedResult.ValueString() } @@ -624,9 +616,6 @@ func unpackConfig(config map[string]any, checkType string, data *CheckResourceMo if v, ok := config["record_type"].(string); ok { data.RecordType = types.StringValue(v) } - if v, ok := config["server"].(string); ok { - data.DNSServer = types.StringValue(v) - } if v, ok := config["expected"].(string); ok { data.ExpectedResult = types.StringValue(v) } diff --git a/internal/provider/client.go b/internal/provider/client.go index ef13ca3..3f864cf 100644 --- a/internal/provider/client.go +++ b/internal/provider/client.go @@ -62,7 +62,6 @@ type Device struct { SNMPPort *int `json:"snmp_port,omitempty"` CheckIntervalSeconds *int `json:"check_interval_seconds,omitempty"` DeviceRole *string `json:"device_role,omitempty"` - DeviceRoleSource *string `json:"device_role_source,omitempty"` // SNMPv3 fields SNMPv3SecurityLevel *string `json:"snmpv3_security_level,omitempty"` SNMPv3Username *string `json:"snmpv3_username,omitempty"` diff --git a/internal/provider/device_resource.go b/internal/provider/device_resource.go index 05f497b..49ea774 100644 --- a/internal/provider/device_resource.go +++ b/internal/provider/device_resource.go @@ -37,7 +37,6 @@ type DeviceResourceModel struct { SNMPVersion types.String `tfsdk:"snmp_version"` SNMPPort types.Int64 `tfsdk:"snmp_port"` DeviceRole types.String `tfsdk:"device_role"` - DeviceRoleSource types.String `tfsdk:"device_role_source"` SNMPv3SecurityLevel types.String `tfsdk:"snmpv3_security_level"` SNMPv3Username types.String `tfsdk:"snmpv3_username"` SNMPv3AuthProtocol types.String `tfsdk:"snmpv3_auth_protocol"` @@ -122,14 +121,10 @@ func (r *DeviceResource) Schema(ctx context.Context, req resource.SchemaRequest, Default: int64default.StaticInt64(161), }, "device_role": schema.StringAttribute{ - Description: "The device type/role. Valid values: server, switch, router, access_point, backhaul, other. Required field.", + Description: "The device type/role. Valid values: server, switch, router, access_point, backhaul, other. Defaults to 'other' if not specified.", Optional: true, Computed: true, }, - "device_role_source": schema.StringAttribute{ - Description: "The source of the device role (manual or inferred). Automatically set to 'manual' when device_role is provided.", - Computed: true, - }, "snmpv3_security_level": schema.StringAttribute{ Description: "SNMPv3 security level (noAuthNoPriv, authNoPriv, or authPriv). Only used when snmp_version is '3'.", Optional: true, @@ -306,11 +301,6 @@ func (r *DeviceResource) Create(ctx context.Context, req resource.CreateRequest, data.DeviceRole = types.StringNull() } - if created.DeviceRoleSource != nil { - data.DeviceRoleSource = types.StringValue(*created.DeviceRoleSource) - } else { - data.DeviceRoleSource = types.StringNull() - } if created.MonitoringEnabled != nil { data.MonitoringEnabled = types.BoolValue(*created.MonitoringEnabled) @@ -374,12 +364,6 @@ func (r *DeviceResource) Read(ctx context.Context, req resource.ReadRequest, res data.DeviceRole = types.StringNull() } - if device.DeviceRoleSource != nil { - data.DeviceRoleSource = types.StringValue(*device.DeviceRoleSource) - } else { - data.DeviceRoleSource = types.StringNull() - } - if device.MonitoringEnabled != nil { data.MonitoringEnabled = types.BoolValue(*device.MonitoringEnabled) } @@ -563,11 +547,6 @@ func (r *DeviceResource) Update(ctx context.Context, req resource.UpdateRequest, } else { data.DeviceRole = types.StringNull() } - if created.DeviceRoleSource != nil { - data.DeviceRoleSource = types.StringValue(*created.DeviceRoleSource) - } else { - data.DeviceRoleSource = types.StringNull() - } if created.MonitoringEnabled != nil { data.MonitoringEnabled = types.BoolValue(*created.MonitoringEnabled) } @@ -612,11 +591,6 @@ func (r *DeviceResource) Update(ctx context.Context, req resource.UpdateRequest, } else { data.DeviceRole = types.StringNull() } - if updated.DeviceRoleSource != nil { - data.DeviceRoleSource = types.StringValue(*updated.DeviceRoleSource) - } else { - data.DeviceRoleSource = types.StringNull() - } if updated.MonitoringEnabled != nil { data.MonitoringEnabled = types.BoolValue(*updated.MonitoringEnabled) }