Repository navigation
docs(terraform): rewrite the samples for provider v2.10.0 - #2557
Merged
Merged
Conversation
…ider Add scripts/ci/terraform-validate.mjs (pnpm lint:terraform): it runs terraform fmt -check and terraform validate on each hcl fence in the docs against aziontech/azion 2.10.0, and a Terraform samples job in the CI gate runs it when Terraform pages change. Refs MM-16216
Every HCL sample now uses the provider v2 nested schema and passes terraform validate. Fixes the resource and data source catalog (WAF exceptions, function instances, missing v2 resources, azion_environment_variable), pins 2.10.0 on every page, and documents that configuration is the desired state. en and pt-br. Refs MM-16216
bruno-andrade-azion
requested review from
a team and
marcus-souza-azion
as code owners
November 3, 2026 19:43
CI is owned by another team, so this docs change keeps only the validator script and the pnpm lint:terraform command. The job is listed in the PR as a follow-up for the CI owners.
…on code The Registry pages for the application function instance resource and its list data source live at application_functions_instance; the links pointed at slugs that do not exist. The applications sample now wraps the function code in trimspace(), as the provider recommends.
This was referenced Nov 10, 2026
…request The validator and the lint:terraform script now travel in #2637, so this pull request carries content only. Refs MM-16216
- how-it-works: an omitted field returns to its default only when the resource enforces it; azion_workload keeps the API value of the fields it does not enforce, per the provider 2.10.0 documentation. - Migration guide: the v1.x azion_waf_rule_set maps to azion_waf, and its data source to azion_wafs; the v2 azion_waf_rule_set is a WAF exception. The state and import steps cover the rule set, the WAF mode moves to the set_waf behavior, and two v1.x data sources move to Removed. The nested-block rule applies to resources with a v1.x counterpart, and the domain sample reads its IDs from variables. - The WAF object is a rule set, as on the platform pages, and Azion Console lists it under WAF Rules. - An aside replaces a blockquote, Rules Engine keeps its capitals, the field tables read "Requires ...", and the example IP uses a documentation range. Refs MM-16216
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 11, 2026
* origin/main: (22 commits) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626) chore(main): release docs 2.4.3 (#2616) docs(applications): review the Applications section and apply the updated writing rules (#2615) chore(deps): bump npm and GitHub Actions dependencies (#2590) chore(deploy): promote docs-v2.4.2 to production (#2610) chore(main): release docs 2.4.2 (#2609) docs(style-guide): align the guide with the shipped sections and settle its open rules (#2600) chore(deploy): promote docs-v2.4.1 to production (#2569) chore(main): release docs 2.4.1 (#2568) chore(deploy): promote docs-v2.4.0 to production (#2560) docs(workloads): document custom page assignment with azion workload-deployment (#2564) docs(templates): reconcile Console Deploy links with the current catalog (#2563) docs(applications): fix rewrite argument, certificate API, workload domains, and connector CLI (#2562) docs(style-guide): review the EN style guide against the naming catalog (MM-16284) (#2561) docs(marketplace): fix invalid Arguments JSON in 7 integration guides (#2559) docs(runtime): fix broken example code in the Runtime reference (#2556) ... # Conflicts: # apps/docs/src/content/docs/en/pages/main-menu/reference/build/edge-application/first-steps.mdx # apps/docs/src/content/docs/pt-br/pages/menu-principal/referencia/build/edge-application/edge-app-primeiros-passos.mdx
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 11, 2026
…l-cli-configs * origin/main: (22 commits) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626) chore(main): release docs 2.4.3 (#2616) docs(applications): review the Applications section and apply the updated writing rules (#2615) chore(deps): bump npm and GitHub Actions dependencies (#2590) chore(deploy): promote docs-v2.4.2 to production (#2610) chore(main): release docs 2.4.2 (#2609) docs(style-guide): align the guide with the shipped sections and settle its open rules (#2600) chore(deploy): promote docs-v2.4.1 to production (#2569) chore(main): release docs 2.4.1 (#2568) chore(deploy): promote docs-v2.4.0 to production (#2560) docs(workloads): document custom page assignment with azion workload-deployment (#2564) docs(templates): reconcile Console Deploy links with the current catalog (#2563) docs(applications): fix rewrite argument, certificate API, workload domains, and connector CLI (#2562) docs(style-guide): review the EN style guide against the naming catalog (MM-16284) (#2561) docs(marketplace): fix invalid Arguments JSON in 7 integration guides (#2559) docs(runtime): fix broken example code in the Runtime reference (#2556) ...
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 11, 2026
…e-auth-vector-tutorials * origin/main: (22 commits) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626) chore(main): release docs 2.4.3 (#2616) docs(applications): review the Applications section and apply the updated writing rules (#2615) chore(deps): bump npm and GitHub Actions dependencies (#2590) chore(deploy): promote docs-v2.4.2 to production (#2610) chore(main): release docs 2.4.2 (#2609) docs(style-guide): align the guide with the shipped sections and settle its open rules (#2600) chore(deploy): promote docs-v2.4.1 to production (#2569) chore(main): release docs 2.4.1 (#2568) chore(deploy): promote docs-v2.4.0 to production (#2560) docs(workloads): document custom page assignment with azion workload-deployment (#2564) docs(templates): reconcile Console Deploy links with the current catalog (#2563) docs(applications): fix rewrite argument, certificate API, workload domains, and connector CLI (#2562) docs(style-guide): review the EN style guide against the naming catalog (MM-16284) (#2561) docs(marketplace): fix invalid Arguments JSON in 7 integration guides (#2559) docs(runtime): fix broken example code in the Runtime reference (#2556) ...
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 11, 2026
* origin/main: fix(marketplace): drop the Azion CLI prerequisite from firewall integration guides (#2612) docs(guides): replace the residual "These checks confirm" lines with use-case expect blocks (#2611) docs(guides): make the auth layer and vector search tutorials runnable (#2566) chore(scripts): add pnpm lint:terraform to validate Terraform samples (#2637) fix(firewall): correct the CLI binding, the WAF config sample, and the JWT paywall steps (#2565) docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment (#2567) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626)
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 11, 2026
* origin/main: fix(marketplace): drop the Azion CLI prerequisite from firewall integration guides (#2612) docs(guides): replace the residual "These checks confirm" lines with use-case expect blocks (#2611) docs(guides): make the auth layer and vector search tutorials runnable (#2566) chore(scripts): add pnpm lint:terraform to validate Terraform samples (#2637) fix(firewall): correct the CLI binding, the WAF config sample, and the JWT paywall steps (#2565) docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment (#2567) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626)
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 11, 2026
…-main * origin/main: (21 commits) feat(nav): give every breadcrumb crumb a page and make CLI commands runnable (#2636) fix(cli): drop azion update workload-deployment, which the CLI does not expose (#2639) docs(terminology): retire Edge Node, module, and add-on from current pages (#2618) docs(migration): share the repeated migration-guide procedures as partials (#2619) fix(marketplace): drop the Azion CLI prerequisite from firewall integration guides (#2612) docs(guides): replace the residual "These checks confirm" lines with use-case expect blocks (#2611) docs(guides): make the auth layer and vector search tutorials runnable (#2566) chore(scripts): add pnpm lint:terraform to validate Terraform samples (#2637) fix(firewall): correct the CLI binding, the WAF config sample, and the JWT paywall steps (#2565) docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment (#2567) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626) chore(main): release docs 2.4.3 (#2616) docs(applications): review the Applications section and apply the updated writing rules (#2615) chore(deps): bump npm and GitHub Actions dependencies (#2590) chore(deploy): promote docs-v2.4.2 to production (#2610) chore(main): release docs 2.4.2 (#2609) ...
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 11, 2026
* commit '7aa84b1d0': (22 commits) docs(nav): apply the review of the orphan-page triage feat(nav): give every breadcrumb crumb a page and make CLI commands runnable (#2636) fix(cli): drop azion update workload-deployment, which the CLI does not expose (#2639) docs(terminology): retire Edge Node, module, and add-on from current pages (#2618) docs(migration): share the repeated migration-guide procedures as partials (#2619) fix(marketplace): drop the Azion CLI prerequisite from firewall integration guides (#2612) docs(guides): replace the residual "These checks confirm" lines with use-case expect blocks (#2611) docs(guides): make the auth layer and vector search tutorials runnable (#2566) chore(scripts): add pnpm lint:terraform to validate Terraform samples (#2637) fix(firewall): correct the CLI binding, the WAF config sample, and the JWT paywall steps (#2565) docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment (#2567) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626) chore(main): release docs 2.4.3 (#2616) docs(applications): review the Applications section and apply the updated writing rules (#2615) chore(deps): bump npm and GitHub Actions dependencies (#2590) chore(deploy): promote docs-v2.4.2 to production (#2610) ...
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 12, 2026
* origin/main: (24 commits) chore(nav): count only visible rows toward the navcheck soft max (#2640) docs(nav): triage the pages outside the navigation (#2593) fix(guides): match the QStash variable and the Functions usage response to the code (#2571) feat(nav): give every breadcrumb crumb a page and make CLI commands runnable (#2636) fix(cli): drop azion update workload-deployment, which the CLI does not expose (#2639) docs(terminology): retire Edge Node, module, and add-on from current pages (#2618) docs(migration): share the repeated migration-guide procedures as partials (#2619) fix(marketplace): drop the Azion CLI prerequisite from firewall integration guides (#2612) docs(guides): replace the residual "These checks confirm" lines with use-case expect blocks (#2611) docs(guides): make the auth layer and vector search tutorials runnable (#2566) chore(scripts): add pnpm lint:terraform to validate Terraform samples (#2637) fix(firewall): correct the CLI binding, the WAF config sample, and the JWT paywall steps (#2565) docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment (#2567) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626) chore(main): release docs 2.4.3 (#2616) docs(applications): review the Applications section and apply the updated writing rules (#2615) ...
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 12, 2026
…y-filter-removal * origin/main: (24 commits) chore(nav): count only visible rows toward the navcheck soft max (#2640) docs(nav): triage the pages outside the navigation (#2593) fix(guides): match the QStash variable and the Functions usage response to the code (#2571) feat(nav): give every breadcrumb crumb a page and make CLI commands runnable (#2636) fix(cli): drop azion update workload-deployment, which the CLI does not expose (#2639) docs(terminology): retire Edge Node, module, and add-on from current pages (#2618) docs(migration): share the repeated migration-guide procedures as partials (#2619) fix(marketplace): drop the Azion CLI prerequisite from firewall integration guides (#2612) docs(guides): replace the residual "These checks confirm" lines with use-case expect blocks (#2611) docs(guides): make the auth layer and vector search tutorials runnable (#2566) chore(scripts): add pnpm lint:terraform to validate Terraform samples (#2637) fix(firewall): correct the CLI binding, the WAF config sample, and the JWT paywall steps (#2565) docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment (#2567) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) chore(main): release docs 2.4.4 (#2627) chore(deploy): promote docs-v2.4.3 to production (#2617) fix(applications): apply live test results and define each resource by its role (#2626) chore(main): release docs 2.4.3 (#2616) docs(applications): review the Applications section and apply the updated writing rules (#2615) ...
bruno-andrade-azion
pushed a commit
that referenced
this pull request
Nov 12, 2026
* origin/main: (29 commits) fix(structure): tag bare code fences, fix heading skips, add pt-br meta_tags (#2629) docs(style-guide): drop the nonexistent GlossaryFilter from the glossary template (#2577) docs(release-notes): fix the October 14 anchor and merge the duplicate February 24 entry (#2572) fix(orchestrator): fix broken bind and create-service API samples (#2574) docs(readability): split the long sentences in the Runtime, CLI, Reference, and KV Store pages (#2635) chore(nav): count only visible rows toward the navcheck soft max (#2640) docs(nav): triage the pages outside the navigation (#2593) fix(guides): match the QStash variable and the Functions usage response to the code (#2571) feat(nav): give every breadcrumb crumb a page and make CLI commands runnable (#2636) fix(cli): drop azion update workload-deployment, which the CLI does not expose (#2639) docs(terminology): retire Edge Node, module, and add-on from current pages (#2618) docs(migration): share the repeated migration-guide procedures as partials (#2619) fix(marketplace): drop the Azion CLI prerequisite from firewall integration guides (#2612) docs(guides): replace the residual "These checks confirm" lines with use-case expect blocks (#2611) docs(guides): make the auth layer and vector search tutorials runnable (#2566) chore(scripts): add pnpm lint:terraform to validate Terraform samples (#2637) fix(firewall): correct the CLI binding, the WAF config sample, and the JWT paywall steps (#2565) docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment (#2567) docs(terraform): rewrite the samples for provider v2.10.0 (#2557) chore(deploy): promote docs-v2.4.4 to production (#2631) ... # Conflicts: # apps/docs/src/content/docs/en/pages/observe/real-time-events/data-sources.mdx # apps/docs/src/content/docs/pt-br/pages/observe/real-time-events/fontes-de-dados.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What & why
Related issue: MM-16216
Pages affected: 14 pages, in both languages (28 files), under
apps/docs/src/content/docs/{en,pt-br}/pages/:devtools/terraform/:terraform.mdx,how-it-works.mdx,examples.mdx,troubleshooting.mdx,terraformV3.mdxdevtools/terraform/guides/:getting-started.mdx,best-practices.mdx,migration-v3-to-v4.mdxdevtools/terraform/resources/:applications.mdx,certificates.mdx,connectors.mdx,security.mdx,workloads.mdxsecure-journey/automate/terraform.mdx(secure-jornada/automatizar/terraform.mdxin Portuguese)The samples. Every Terraform HCL sample is rewritten for the nested schema of
aziontech/azion2.10.0, and every page pins that version. Onmain, 76 of the 88 samples failterraform validate. Samples that are wrong on purpose or depend on files outside the page carry an MDX comment,{/* terraform-validate: skip */}, that the markdown twin drops:file();The IDs in the domain-to-workload migration pair come from variables instead of literals.
The resource catalog.
azion_application_function_instance(s),azion_firewall_function_instanceandazion_firewall_functions_instance, andazion_applications_main_settings.azion_workloadbinds its application only throughazion_workload_deployment, indeployment.strategy.attributes.application.azion_certificate_request,azion_certificate_signing_request, andazion_crl. The resources and data sources page gains Object Storage and Data Stream.WAF. The pages use the platform's name for the object, a rule set, which Azion Console lists under WAF Rules and the provider manages as
azion_waf.azion_waf_rule_setis a WAF exception. The migration guide now maps the v1.xazion_waf_rule_set, which was the rule set itself, toazion_waf, and itsazion_waf_rule_setsdata source toazion_wafs. It lists the v2azion_waf_rule_setwith the resources that v2 adds. The state and import steps cover the rule set, and the WAF mode moves to theset_wafbehavior of a firewall rule.Migration guide.
azion_environment_variableand its data source move to Removed, because v2 has no such resource. So does theazion_waf_domainsdata source.How the provider applies a configuration.
how-it-worksgains "Configuration is the desired state". An omitted field that a resource enforces returns to its default on apply. An omitted field that it does not enforce, such asdomainsonazion_workload, keeps the value that the API holds. This follows the "Configuration is the desired state" and "Drift and enforcement" notes of each resource in the provider documentation.How I checked it.
pnpm lint:terraform, from chore(scripts): add pnpm lint:terraform to validate Terraform samples #2637, which adds the validator, reported 70 of 70 samples valid against 2.10.0 and 22 skipped by marker. It was not run again after the review fixes, which changed the migration pair, one IP range in the examples, and code comments.http,force_https,blocking,any_url,generic,set_connector,bypass_cache,deny,deliver,honor,override, anddefault.Not verified.
pnpm build:localwas not run locally.cname_access_only = false→workload_domain_allow_access = trueandorigin_protocol→transport_policy.idofazion_network_listis the ID thatis_in_listexpects.Out of scope:
pnpm lint:terraform, which belongs to the CI owners.Type of change
feat) — no new pagefix) — typo, broken link, wrong informationdocs) — rewrite, expansion, upkeepi18n) — pt-br changes travel with the English onesrefactor/chore) — reviewed by UXE, no content mixed in — the validator script is in chore(scripts): add pnpm lint:terraform to validate Terraform samples #2637Author checklist
type(scope): summary(see GOVERNANCE.md §4)title,description,meta_tags,namespace,permalink,last_reviewed— no page in the repository carrieslast_reviewed; the other five fields are present on every pageazion_edge_functionappear only as code in the migration guide and the v1.x pageterraform validatebut were not applied against an account (MM-16196)pt-brupdated in this PR or follow-upi18nissue created: pt-br updated in this PRpnpm build:local(build + frontmatter check) without errors — not run; the CI Build check covers it