Skip to content

TPT-4659: Add NFS Quotas - #1050

Merged
yec-akamai merged 7 commits into
linode:proj/nfsaasfrom
AshleyDumaine:nfs-capacity-quota-updates
Sep 29, 2026
Merged

yec-akamai merged 7 commits into
linode:proj/nfsaasfrom
AshleyDumaine:nfs-capacity-quota-updates

Conversation

@AshleyDumaine

Copy link
Copy Markdown

📝 Description

Adds Linodego v4beta client support for NFS Quota CRUD clients, capacity and usage fields, and lifecycle wait helpers.

These endpoints are needed by the Linode File Storage CSI driver.

Live integration and fixture testing are unavailable because the NFS APIs are not in production. Both commits pass make build and temporary HTTP client smoke checks.

Copilot AI lite review requested due to automatic review settings September 24, 2026 16:00
@AshleyDumaine
AshleyDumaine requested review from a team as code owners September 24, 2026 16:00
@AshleyDumaine
AshleyDumaine requested review from lgarber-akamai and mawilk90 and removed request for a team September 24, 2026 16:00

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Handle terminal error status immediately and add polling-helper test coverage.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 1 Medium severity · 1 Low severity

Open (2)
What changed in this PR

Adds Linodego v4beta support for NFS quota CRUD operations, capacity and usage fields, fixtures, tests, and lifecycle polling.

Changes:

  • Added NFS quota models and CRUD clients.
  • Added quota status polling support.
  • Added unit tests and JSON fixtures.
File Summary
waitfor.go NFS quota lifecycle polling
test/​unit/​nfs_quotas_test.go CRUD and parsing tests
test/​unit/​fixtures/​nfs_quotas_list.json List-quota fixture
test/​unit/​fixtures/​nfs_quota.json Single-quota fixture
nfs_quotas.go NFS quota models and CRUD clients

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread waitfor.go Outdated
Comment thread waitfor.go Outdated
Comment on lines +301 to +308
return poll(ctx, &client,
func(ctx context.Context) (*NFSQuota, bool, error) {
quota, err := client.GetNFSQuota(ctx, spaceID, filesystemID, quotaID)
if err != nil {
return quota, false, err
}

return quota, quota.Status == status, nil

@lgarber-akamai lgarber-akamai left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for the contribution!

@lgarber-akamai lgarber-akamai changed the title Add NFS Quotas TPT-4659: Add NFS Quotas Sep 28, 2026
@mawilk90
mawilk90 requested a review from yec-akamai September 29, 2026 11:35

@yec-akamai yec-akamai left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the work! Just a nitpick:

Comment thread nfs_quotas.go Outdated
Comment thread nfs_quotas.go Outdated

@yec-akamai yec-akamai left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for addressing the comment! Just need to address the lint issue. You can run the fmt command locally to fix it and push the change: golangci-lint fmt

@yec-akamai
yec-akamai merged commit eacaed0 into linode:proj/nfsaas Sep 29, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants