Skip to content

Docs/terraform provider#2874

Open
eldadfux wants to merge 30 commits intomainfrom
docs/terraform-provider
Open

Docs/terraform provider#2874
eldadfux wants to merge 30 commits intomainfrom
docs/terraform-provider

Conversation

@eldadfux
Copy link
Copy Markdown
Member

@eldadfux eldadfux commented Apr 9, 2026

What does this PR do?

(Provide a description of what this PR does.)

Test Plan

(Write your test plan here. If you changed any code, please provide us with clear instructions on how you verified your changes work.)

Related PRs and Issues

(If this PR is related to any other PR or resolves any issue or related to any issue link all related PR and issues here.)

Have you read the Contributing Guidelines on issues?

(Write your answer here.)

eldadfux added 21 commits April 8, 2026 16:50
Add overview with Terraform basics, self-hosting redirect note, and
guides for provider configuration, database resources, and data sources.
Link to appwrite/terraform-provider-appwrite; align content with README.

Made-with: Cursor
… nav

Align docs with provider: bucket, messaging_provider, messaging_topic.
Move database guide under resources/databases; add resources/storage and
resources/messaging. Nav: Getting started, Resources, Data sources.
Redirect old /terraform/databases path.

Made-with: Cursor
Add terraform.svg to icon pipeline (svgtofont + sprite), use web-icon-terraform
in docs Tooling menu. Colors normalized by optimizer; sidebar uses currentColor
like other nav icons.

Made-with: Cursor
…th registry docs

Add registry URLs for provider index, generated docs, and per-resource pages.
Pin required_providers example to ~> 0.0.4; cross-link GitHub for source.

Made-with: Cursor
Add 2026-04-08 changelog on IaC value, docs, registry, and catalog.
Add integrations/terraform-provider page under Deployments with cover and avatar SVGs.

Made-with: Cursor
Product announcement with docs, registry, and integrations links; cover SVG.

Made-with: Cursor
…weaks

Add introducing-terraform-provider-for-appwrite post and levi-van-noort author.
Use ASCII hyphens in Terraform provider and databases docs.
Include icon font output assets and avatar.

Made-with: Cursor
These copies are not produced by the icon build; drop them from the repo.

Made-with: Cursor
Prevents accidental commits of Finder "file 2.ext" duplicates.

Made-with: Cursor
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Apr 9, 2026

Greptile Summary

This PR adds the official Terraform provider documentation for Appwrite, including a full docs section under /docs/tooling/terraform, an integrations catalog entry, a changelog entry, and a blog post by Levi van Noort. The implementation covers all resource areas (TablesDB, Storage, Auth, Functions, Sites, Messaging, Webhooks, Backups), adds the Terraform icon to the icon system, registers HCL syntax highlighting, and wires up a sidebar entry and redirect.

Previously flagged concerns are resolved: 'mongo' remains in IconType, and the blog post changelog link correctly points to /changelog/entry/2026-04-19 matching the new file. The only remaining suggestion is that the required_providers example in the configuration docs omits a version constraint, which is inconsistent with the blog post snippet that shows version = \"~> 1.0\".

Confidence Score: 5/5

Safe to merge; all previously flagged issues are resolved and the only remaining finding is a P2 docs style suggestion.

All P0/P1 concerns from prior review rounds have been addressed. The one new finding (missing version constraint in the provider docs example) is a non-blocking style suggestion that does not affect runtime behavior or correctness.

src/routes/docs/tooling/terraform/provider/+page.markdoc — consider adding a version constraint to the required_providers example for consistency with the blog post.

Important Files Changed

Filename Overview
src/lib/components/ui/icon/types.ts Added 'terraform' to IconType union; 'mongo' and all other previous entries remain intact.
src/lib/utils/code.ts Registers hcl/terraform/tf aliases mapped to ini grammar with an explanatory comment; a known limitation but accurately documented.
src/redirects.json Adds one redirect /docs/tooling/terraform/databases → /docs/tooling/terraform/resources/databases; no stale or circular redirects introduced.
src/routes/docs/tooling/terraform/provider/+page.markdoc Provider configuration docs are clear; version constraint is absent from the required_providers example, inconsistent with the blog post snippet that shows version = "~> 1.0".
src/routes/blog/post/introducing-terraform-provider-for-appwrite/+page.markdoc Blog post looks correct; changelog link points to /changelog/entry/2026-04-19 which matches the new 2026-04-19.markdoc file.
src/routes/changelog/(entries)/2026-04-19.markdoc New changelog entry for Terraform provider, well-formed and links consistently with the rest of the PR.
src/routes/docs/tooling/terraform/+page.markdoc Terraform overview page listing all resources and data sources; structure and links look correct.
src/routes/docs/tooling/terraform/resources/messaging/+page.markdoc Messaging resource docs; FCM example uses file() for the service account JSON (acknowledged in a previous review thread).
src/routes/docs/Sidebar.svelte Adds Terraform provider entry with web-icon-terraform icon; consistent with how other tooling entries use custom icon prefixes.
src/routes/integrations/terraform-provider/+page.markdoc New integration catalog entry; all internal links resolve correctly against the added doc pages.

Reviews (8): Last reviewed commit: "docs(terraform): document v1.3.0 deploym..." | Re-trigger Greptile

Comment thread src/lib/components/ui/icon/types.ts Outdated
Comment on lines +60 to +64
}
```

## Topics {% #topics %}

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.

P2 Missing warning about committing service account JSON to git

The FCM example reads credentials with file("firebase-service-account.json") but there is no note warning users to add that file to .gitignore and never commit it. Readers following this example for the first time may inadvertently leak their service account key.

Consider adding a short note here:

Important: Add firebase-service-account.json to your .gitignore. Never commit secret files to version control; use environment variables or a secrets manager for CI.

Comment thread src/lib/utils/code.ts
Resolve conflicts: icon sprite/types (terraform + restored mongo), changelog
split for 2026-04-08 entries, github-stars, and regenerated icon output.

Made-with: Cursor
Comment thread src/routes/blog/post/introducing-terraform-provider-for-appwrite/+page.markdoc Outdated
…s, assets

Align TablesDB resource names and capabilities; add Auth, Functions, Sites,
Webhooks, and Backups pages; fold data source into Databases; update redirects.
Refresh Terraform blog, changelog, and integration copy; new covers and avatar.

Made-with: Cursor
Comment thread src/routes/blog/post/introducing-terraform-provider-for-appwrite/+page.markdoc Outdated
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I think this blog is still missing some resources, other than that it looks fine. I did a rewrite of it here: https://github.com/appwrite/website/pull/2887/changes#diff-77917839cc715ba8a72fb8737c10434dfdfd13fd29086b3f7d9837fb26deca5c

---
layout: changelog
title: "Terraform provider for Appwrite"
date: 2026-04-17
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
date: 2026-04-17
date: 2026-04-19

Add appwrite_function_deployment and appwrite_site_deployment resources
with code and template examples, and document the new data sources
(storage_bucket, auth_user, auth_team, function, site, messaging_topic,
webhook) on each product page and the overview.

Made-with: Cursor
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.

3 participants