fix(wireless): support write-only PSK rotation revisions #1

Closed
Andreas wants to merge 0 commits from fix/psk-revision into main
Owner

Small downstream fork of wncservices/terraform-provider-omada, preserving upstream history and MPL-2.0 licensing. Baseline: 14aff94242. Reviewed source pin: 7d6d1f2.

Add optional non-secret psk_revision (>=1): revision changes trigger in-place password rotation; unchanged revisions suppress password writes during unrelated updates. Missing keys are rejected during planning and again at apply. Omitted revision preserves legacy behavior. Imports leave the revision unset. No controller API expansion or production ownership changes.

Regression coverage: create, password-only rotation with Update action and stable SSID ID, unchanged-key revision no-op, unrelated update preservation, missing/invalid key revision rejection, import, and absence of ephemeral passwords from the entire plan and state. Generated documentation and ephemeral-variable example included.

Validation: full unit and mock-controller acceptance suite with Terraform 1.16.4; all wireless acceptance tests with exact cluster OpenTofu 1.12.1 (TF_ACC_PROVIDER_NAMESPACE=wncservices); go vet; golangci-lint 2.14.0 (0 issues); go generate; gofmt and git diff checks. Go 1.26.8, CGO_ENABLED=0. No real controller writes or network changes. Upstream submission follows from the same commit. No binary release or production adoption yet.

Small downstream fork of wncservices/terraform-provider-omada, preserving upstream history and MPL-2.0 licensing. Baseline: 14aff942422bb0dbdce20ac050348674c55d4e82. Reviewed source pin: 7d6d1f2. Add optional non-secret psk_revision (>=1): revision changes trigger in-place password rotation; unchanged revisions suppress password writes during unrelated updates. Missing keys are rejected during planning and again at apply. Omitted revision preserves legacy behavior. Imports leave the revision unset. No controller API expansion or production ownership changes. Regression coverage: create, password-only rotation with Update action and stable SSID ID, unchanged-key revision no-op, unrelated update preservation, missing/invalid key revision rejection, import, and absence of ephemeral passwords from the entire plan and state. Generated documentation and ephemeral-variable example included. Validation: full unit and mock-controller acceptance suite with Terraform 1.16.4; all wireless acceptance tests with exact cluster OpenTofu 1.12.1 (TF_ACC_PROVIDER_NAMESPACE=wncservices); go vet; golangci-lint 2.14.0 (0 issues); go generate; gofmt and git diff checks. Go 1.26.8, CGO_ENABLED=0. No real controller writes or network changes. Upstream submission follows from the same commit. No binary release or production adoption yet.
fix(wireless): support write-only PSK rotation revisions
Some checks failed
Security / CodeQL (pull_request) Has been cancelled
Security / govulncheck (pull_request) Has been cancelled
Tests / Build & unit tests (pull_request) Has been cancelled
Tests / Acceptance tests (mock controller) (pull_request) Has been cancelled
Tests / golangci-lint (pull_request) Has been cancelled
Tests / Docs up to date (pull_request) Has been cancelled
7d6d1f2fb3
Author
Owner

Superseded by merged PR #2, which contains the same PSK fix plus Forgejo-specific validation/packaging. Combined hosted CI run #7 passed on image-s. Upstream PR 79 remains the focused PSK patch without downstream CI.

Superseded by merged PR #2, which contains the same PSK fix plus Forgejo-specific validation/packaging. Combined hosted CI run #7 passed on image-s. Upstream PR 79 remains the focused PSK patch without downstream CI.
Andreas closed this pull request 2026-10-02 11:54:11 +00:00
Some checks are pending
Security / CodeQL (pull_request) Has been cancelled
Security / govulncheck (pull_request) Has been cancelled
Tests / Build & unit tests (pull_request) Has been cancelled
Tests / Acceptance tests (mock controller) (pull_request) Has been cancelled
Tests / golangci-lint (pull_request) Has been cancelled
Tests / Docs up to date (pull_request) Has been cancelled
Validate and package Omada provider / provider (pull_request)
Required

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Andreas/terraform-provider-omada!1
No description provided.