Skip to content

docs(cli): document azion workload-deployment and fix pages that say the CLI cannot bind a deployment - #2567

Merged
bruno-andrade-azion merged 3 commits into
mainfrom
docs/cli-workload-deployment
Nov 11, 2026
Merged

bruno-andrade-azion merged 3 commits into
mainfrom
docs/cli-workload-deployment

Conversation

@bruno-andrade-azion

@bruno-andrade-azion bruno-andrade-azion commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

What & why

Related issue: MM-16221, the follow-up of #2564 (merged)
Pages affected:

  • New, in en and pt-br: /en/documentation/devtools/cli/resources/workload-deployment/ and /pt-br/documentacao/devtools/cli/recursos/workload-deployment/, registered in apps/docs/src/nav/trees/cli.json after workload.
  • Changed, in en and pt-br:
    • the CLI glossary;
    • the CLI resource pages workload, firewall, and custom-pages, and the Resources table;
    • the Workloads, Firewall, and Custom Pages quickstarts;
    • Protect your domain.

Azion CLI 4.23.0 and later ship create, list, describe, and update workload-deployment. These commands name a workload's application, firewall, and custom page set. Several pages said that only azion deploy writes a deployment, and they sent readers to the Console.

New reference page. workload-deployment documents every command and flag of the four commands, taken from the CLI source at tag 4.24.0. It covers the --file JSON shape and the quirks of the update. The Resources table lists it with no Delete verb, because the CLI has no delete workload-deployment.

Pages fixed. Each page now gives the real CLI path:

  • The Workloads quickstart creates the deployment.
  • The Firewall quickstart and Protect your domain update the deployment.
  • The other pages point to the commands.

What the CLI source shows, and the pages now say:

  • update workload-deployment sends --edge-application, --edge-firewall, and --custom-page only together with --strategy-type. Without it, the command sends an empty update and still prints Updated Workload Deployment with ID …. Every page that points to update names --strategy-type.
  • The update sends the strategy as one object. So the pages pass the application, and also the firewall or the set the deployment already names.
  • With --file, neither command asks for the IDs. Pass --workload-id with it, and also --deployment-id on update.
  • The flags are --application-id and --firewall-id on create, and --edge-application and --edge-firewall on update.

From the live test on main (#2626). azion deploy binds the application it creates for the project, even when the deployments entry carries another application's ID. The Workloads quickstart and the reference page now say so. They no longer tell readers to name their application in that entry.

Left out after the rebase. Applications first steps is no longer part of this PR. #2626 already documents create and list workload-deployment there, with live output.

API panels unchanged. The spec published at https://api.azion.com/v4/openapi/openapi.yaml has the workload deployments tag but no /deployments path. I checked it again on 2026-11-11.

How I checked it:

  • I compared every flag, type, default, prompt, and output string with the CLI source at tag 4.24.0. I compared the JSON field names with azionapi-v4-go-sdk-dev v0.266.0. --custom-page exists on create and update since 4.23.0.
  • The docs_gate.py --check of the docs writing skill reports 0 findings on the 20 changed pages. linkcheck.py reports 0 broken links and 0 unpaired namespaces.
  • pnpm lint:navcheck passes, with 52 warnings, the same count as main. pnpm lint:slugcheck fails only on the 6 files that already fail on main, and none of them is in this PR.
  • pnpm build:local passes: 2094 pages build, and the frontmatter check passes. It builds workload-deployment in both languages, with its .md twins.
  • Not verified: I did not run create or update against a live account. The pages pass the application, the firewall, and the set together. That works whether the update replaces the strategy or merges it. A test run in review is welcome.

No permalink of an existing page changes, and no redirect is needed.

Type of change

  • 🆕 New content (feat)
  • 🩹 Fix (fix) — typo, broken link, wrong information
  • ♻️ Content update (docs) — rewrite, expansion, upkeep
  • 🌐 Translation sync (i18n)
  • 🏗️ Platform / structure (refactor / chore) — reviewed by UXE, no content mixed in

Author checklist

  • PR title follows type(scope): summary (see GOVERNANCE.md §4)
  • Frontmatter complete: title, description, meta_tags, namespace, permalink, last_reviewed — every field except last_reviewed, which no page in the docs carries
  • No legacy "edge-" product names in the copy — --edge-application, --edge-firewall, EDGE APPLICATION, and EDGE FIREWALL appear only as the CLI's literal flags and column names
  • How-to/tutorial content includes at least one runnable, copy-paste-tested code block — the quickstart commands come from the CLI source and were not run against a live account
  • Screenshots (if any) have alt text and follow image standards — no screenshot is added or changed
  • Internal links are relative and resolve locally — root-relative, checked with linkcheck.py
  • If any permalink changed or page moved: redirect added in this PR — no permalink changed and no page moved
  • i18n: pt-br updated in this PR or follow-up i18n issue created: — pt-br updated in this PR
  • I ran pnpm build:local (build + frontmatter check) without errors

…the CLI cannot bind a deployment

Azion CLI 4.23.0 and later ship create, list, describe, and update
workload-deployment. Several pages said a deployment is written only by
azion deploy and sent readers to the Console. Add the workload-deployment
resource reference (en, pt-br), register it in the CLI nav and resources
table, and give the real commands in the CLI glossary, the workload,
firewall, and custom-pages resource pages, the Workloads, Firewall, and
Custom Pages quickstarts, Protect your domain, and Applications first steps.

Refs: MM-16221
* 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
…at azion deploy binds

The review of this PR found three instructions that mislead the reader:

- The custom-pages and firewall resource pages and the Custom Pages
  quickstart said to pass --custom-page or --edge-firewall to azion
  update workload-deployment. Alone, the CLI does not send either flag;
  it sends them only with --strategy-type, and still prints "Updated
  Workload Deployment". Each sentence now names --strategy-type and the
  application the deployment names.
- The Workloads quickstart told readers to name their application in the
  deployments entry of azion.config.js and run azion deploy. The live test
  on main shows that azion deploy binds the application it creates for
  the project, even when the entry carries another application's ID. The
  quickstart and the workload-deployment reference now say so.
- Split the long CLI paragraph of the Firewall quickstart and Protect your
  domain, shorten the pt-br description of the reference to 160
  characters, and leave the Delete cell of the resources table empty, as
  the other rows do.

en and pt-br.

Refs: MM-16221
@bruno-andrade-azion
bruno-andrade-azion merged commit b596a5c into main Nov 11, 2026
10 checks passed
@bruno-andrade-azion
bruno-andrade-azion deleted the docs/cli-workload-deployment branch November 11, 2026 19:13
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants