Commit graph

14 commits

Author SHA1 Message Date
b922dbda22
refactor: remove device_role_source field
- Removed DeviceRoleSource field from Device struct and DeviceResourceModel
- Updated device_role description to reflect default value "other"
- Device role is now optional and defaults to "other" if not specified
- Cleaned up all CRUD operations to remove device_role_source handling

All device types are now manually selected with "other" as default.
2026-03-22 11:20:04 -05:00
80e800baf4
feat: add device_role and device_role_source fields to device resource
- Add device_role field to Device struct in client
- Add device_role and device_role_source to DeviceResourceModel
- Add schema attributes for device_role (optional/computed) and device_role_source (computed)
- Handle device_role in Create, Read, and Update operations
- Valid device_role values: server, switch, router, access_point, backhaul, other
- device_role_source automatically set to 'manual' by API when device_role is provided
2026-03-22 11:06:14 -05:00
bc3dbfe419
add towerops_check resource for service check management
- new towerops_check resource supporting HTTP, TCP, DNS, and ping checks
- flat schema with type-specific fields (url, host, port, hostname, etc.)
- client CRUD methods for /api/v1/checks endpoints
- resource documentation, examples, and provider index updated
- acceptance tests for all check types, update, import, and error handling
2026-03-16 18:33:56 -05:00
4960adaf37
add address, latitude, longitude to site resource
Support geographic coordinates and street address in towerops_site.
All three fields are optional; server validates lat/long ranges.
2026-03-13 17:35:16 -05:00
bbe1babdf7
add agent, integration, and maintenance window resources
New Terraform resources: towerops_agent, towerops_integration,
towerops_maintenance_window with full CRUD, docs, and examples.
2026-03-11 14:33:52 -05:00
9d204a7ba3
feat: add schedule and escalation policy resources
Add towerops_schedule and towerops_escalation_policy Terraform resources
with client CRUD methods, resource models, and provider registration.
2026-03-11 14:01:37 -05:00
96bb767c83
feat: add SNMP community string support to organization resource
- Add snmp_community field to Organization struct (client.go)
- Add snmp_community attribute to organization resource schema
- Mark as Optional and Sensitive in Terraform
- Include in Create and Update operations
- Only settable by organization owners (enforced by API)

Example usage:
  resource "towerops_organization" "main" {
    name           = "My Organization"
    use_sites      = true
    snmp_community = "public"
  }
2026-03-10 13:59:54 -05:00
70c7a5cfbb
feat: allow setting organization name via Terraform
- Make 'name' field optional and computed in organization resource
- Include name in Create and Update operations when provided
- Name can only be changed by organization owners (enforced by API)
- Matches API capability to update organization name
- Backwards compatible: name remains optional

Example usage:
  resource "towerops_organization" "main" {
    name      = "My Organization"
    use_sites = true
  }
2026-03-10 13:32:56 -05:00
4cdb96e189
feat: add site-less devices and SNMPv3 support
- Make site_id optional, add organization_id field
- Devices can be created without sites (directly in organization)
- Add SNMPv3 authentication and privacy fields
- Update documentation with new examples
2026-02-04 15:07:09 -06:00
233be61d3e
allow creating entities when they dont exist 2026-01-29 12:34:58 -06:00
3eef94f685
allow base url change 2026-01-26 14:00:20 -06:00
3a970ac852
Name for devices is now optional 2026-01-26 13:36:06 -06:00
797fe93a9a
fix base url 2026-01-26 13:12:43 -06:00
8fed566e22
init 2026-01-26 11:02:26 -06:00