Skip to content

Added a user-facing CLI reference page to the documentation. - #2860

Merged
AlexSkrypnyk merged 4 commits into
2.xfrom
feature/cli-readme
Jul 29, 2026
Merged

Added a user-facing CLI reference page to the documentation.#2860
AlexSkrypnyk merged 4 commits into
2.xfrom
feature/cli-readme

Conversation

@AlexSkrypnyk

@AlexSkrypnyk AlexSkrypnyk commented Jul 29, 2026

Copy link
Copy Markdown
Member

Summary

Adds a user-facing CLI reference page to the documentation, and clears the remaining installer naming out of the drevops/vortex-cli package.

Why

The relocation of the installer into the drevops/vortex-cli package renamed everything, but the user-facing documentation only received word swaps - it still described a one-shot installer. Nothing in the user-facing docs described the CLI as a CLI: no command reference, no options, no environment variables. The only substantial CLI writing lived in contributing/maintenance/cli.mdx, which is contributor documentation, not user-facing.

What

  • Added .vortex/docs/content/cli.mdx (sidebar position 4, directly after Installation) covering the three commands (install as the default, check-requirements, build), every option on each command, the non-interactive workflow (--schema to discover prompts, --validate to check answers, --prompts to supply them) and the --agent-help AI-agent flow, the VORTEX_CLI_* and VORTEX_CLI_INSTALL_* environment variables plus the VORTEX_INSTALLER_* deprecation and fallback, and the distribution contract for /install, /v1/install and /v2/install.
  • Cross-linked installation.mdx to the new page, from its intro and from the AI-agent tip; and updating-vortex.mdx to the distribution section, for the per-major paths. installation.mdx stays a task-oriented walkthrough; cli.mdx is the reference.
  • The option tables were derived from the actual command definitions in .vortex/cli/src/Command/*.php, not written from memory - option names, short flags and descriptions match the code.

Cleanup

A second commit clears the remaining installer naming inside the CLI package: .vortex/cli/README.md was still titled "Vortex installer", plus stale docblocks - two of which named classes that no longer exist at all (InstallerDotEnvTest, InstallerHelpersTest). It also renames three InstallCommandTest data-set names from "v1 installer ..." to "v1 CLI ...".

Deliberately left alone

The VORTEX_INSTALLER_* fallback map in Env.php and vortex-update, the deprecation-test fixtures, and the 1.x legs of vortex-release.yml and vortex-test-docs.yml - each of these names the installer because the installer is what it refers to.

Verification

  • yarn build, yarn lint and yarn spellcheck (69 files, 0 issues) all pass; the new #non-interactive-use and #distribution anchors resolve, and the only broken anchors are pre-existing ones in development/variables.
  • CLI suite: OK (1617 tests, 5177 assertions), composer lint clean.
  • No template files changed, so installer fixtures are unaffected and no snapshot regeneration was needed.

Screenshots

N/A

Before / After

BEFORE
────────────────────────────────────────────────────────────────
docs/content/
├── installation.mdx        task walkthrough, calls it "the installer"
├── updating-vortex.mdx     no distribution detail
└── contributing/
    └── maintenance/
        └── cli.mdx         only place the CLI is documented as a CLI
                             (contributor-facing: build, test, release)

User-facing reader finds: no command list, no options, no env vars.

                              │
                              ▼

AFTER
────────────────────────────────────────────────────────────────
docs/content/
├── installation.mdx ───────────┐   task walkthrough, links out
├── cli.mdx  (NEW)  <────────────┘   commands · options · non-interactive
│                                    use · env vars · distribution
├── updating-vortex.mdx ─────────►   links to cli.mdx#distribution
└── contributing/
    └── maintenance/
        └── cli.mdx                 build · test · release
                                     (contributor-facing, unchanged scope)

User-facing reader finds: a full CLI reference, one hop from Installation.

Summary by CodeRabbit

  • Documentation
    • Added comprehensive Vortex CLI documentation covering commands, options, environment variables, distribution paths, and maintenance.
    • Updated installation, deployment, FAQ, and project guidance to consistently reference the CLI install command.
    • Clarified CLI naming and release documentation.
  • Tests
    • Updated test descriptions and comments for clearer CLI terminology; test behavior remains unchanged.

@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

The PR adds a Vortex CLI documentation page, updates release guidance, and standardizes “CLI install command” terminology across documentation, comments, tests, and scripts. No executable behavior changes.

Changes

CLI documentation and terminology alignment

Layer / File(s) Summary
CLI documentation and release guidance
.vortex/cli/README.md, .vortex/docs/content/cli.mdx, .vortex/docs/content/installation.mdx, .vortex/docs/content/contributing/maintenance/cli.mdx, .vortex/docs/content/updating-vortex.mdx, .vortex/docs/src/pages/index.js
Adds CLI usage documentation and updates release, installation, maintenance, update, and homepage wording.
Project behavior terminology updates
.docker/cli.dockerfile, .vortex/CLAUDE.md, .vortex/cli/CLAUDE.md, .vortex/cli/src/Utils/Normalizer.php, .vortex/docs/content/{development,drupal}/*, .vortex/docs/content/faqs.mdx, .vortex/tooling/src/vortex-provision, scripts/vortex-tooling.sh
Clarifies references to the CLI install command without changing build, provisioning, or script behavior.
Test and fixture terminology alignment
.vortex/cli/tests/*, .vortex/tests/phpunit/*, .vortex/tests/Traits/*, .vortex/tests/update-test-assets
Updates test labels, comments, docblocks, assertion messages, and fixture descriptions without changing test execution or assertions.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • drevops/vortex#2745: Updates nearby documentation describing removal of the drevops/vortex-tooling path repository.

Suggested labels: A3

Poem

I’m a rabbit with a CLI crown,
Tidying words all through the town.
Install commands now speak clear,
PHAR paths hop from far to near.
No code changed—just prose in flight,
Documentation nibbling bright!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly reflects the main change: adding a user-facing CLI reference page to the documentation.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/cli-readme

Comment @coderabbitai help to get the list of available commands.

@github-actions

This comment has been minimized.

@AlexSkrypnyk

This comment has been minimized.

2 similar comments
@AlexSkrypnyk

This comment has been minimized.

@AlexSkrypnyk

This comment has been minimized.

@codecov

codecov Bot commented Jul 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 88.11%. Comparing base (5198aed) to head (49f3c68).

Additional details and impacted files
@@            Coverage Diff             @@
##              2.x    #2860      +/-   ##
==========================================
+ Coverage   88.00%   88.11%   +0.10%     
==========================================
  Files          96       98       +2     
  Lines        5346     5392      +46     
  Branches        0        3       +3     
==========================================
+ Hits         4705     4751      +46     
  Misses        641      641              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.vortex/cli/README.md:
- Around line 11-13: Clarify the release condition sentence in the CLI README by
replacing the duplicated “branch” phrasing with grammatical wording that clearly
states deployment occurs for branches whose names contain “release-docs” or
“release-cli,” while preserving the GitHub release condition.

In @.vortex/docs/content/cli.mdx:
- Around line 116-120: Update the “Superseded variable names” note in the CLI
documentation to describe only the current legacy-variable fallback and
replacement notice behavior. Remove the future-major-version removal guidance
from this evergreen reference, and relocate that migration detail to the
updating documentation or release notes.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: bd781dee-e76d-48f6-8679-8c1ea47e4ebb

📥 Commits

Reviewing files that changed from the base of the PR and between 5198aed and 49f3c68.

📒 Files selected for processing (25)
  • .docker/cli.dockerfile
  • .vortex/CLAUDE.md
  • .vortex/cli/CLAUDE.md
  • .vortex/cli/README.md
  • .vortex/cli/src/Utils/Normalizer.php
  • .vortex/cli/tests/Functional/Command/InstallCommandTest.php
  • .vortex/cli/tests/Functional/FunctionalTestCase.php
  • .vortex/cli/tests/Functional/Handlers/AbstractHandlerProcessTestCase.php
  • .vortex/cli/tests/Functional/PharTest.php
  • .vortex/cli/tests/Unit/EnvTest.php
  • .vortex/cli/tests/Unit/ValidatorTest.php
  • .vortex/docs/content/cli.mdx
  • .vortex/docs/content/contributing/maintenance/cli.mdx
  • .vortex/docs/content/development/visual-regression.mdx
  • .vortex/docs/content/drupal/composer-json.mdx
  • .vortex/docs/content/faqs.mdx
  • .vortex/docs/content/installation.mdx
  • .vortex/docs/content/updating-vortex.mdx
  • .vortex/docs/src/pages/index.js
  • .vortex/tests/phpunit/Functional/AhoyWorkflowTest.php
  • .vortex/tests/phpunit/Functional/FunctionalTestCase.php
  • .vortex/tests/phpunit/Traits/SutTrait.php
  • .vortex/tests/update-test-assets
  • .vortex/tooling/src/vortex-provision
  • scripts/vortex-tooling.sh

Comment thread .vortex/cli/README.md
Comment on lines +11 to +13
The CLI is packaged as a PHAR and deployed to https://www.vortextemplate.com/install
upon each GitHub release or for every branch to a branch containing the
`release-docs` or `release-installer` in the name.
`release-docs` or `release-cli` in the name.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Clarify the release-branch sentence.

“For every branch to a branch containing” is ungrammatical and makes the deployment condition unclear.

Proposed wording
-upon each GitHub release or for every branch to a branch containing the
-`release-docs` or `release-cli` in the name.
+upon each GitHub release or for every branch whose name contains
+`release-docs` or `release-cli`.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
The CLI is packaged as a PHAR and deployed to https://www.vortextemplate.com/install
upon each GitHub release or for every branch to a branch containing the
`release-docs` or `release-installer` in the name.
`release-docs` or `release-cli` in the name.
The CLI is packaged as a PHAR and deployed to https://www.vortextemplate.com/install
upon each GitHub release or for every branch whose name contains
`release-docs` or `release-cli`.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.vortex/cli/README.md around lines 11 - 13, Clarify the release condition
sentence in the CLI README by replacing the duplicated “branch” phrasing with
grammatical wording that clearly states deployment occurs for branches whose
names contain “release-docs” or “release-cli,” while preserving the GitHub
release condition.

Comment on lines +116 to +120
:::note Superseded variable names

These variables were previously prefixed with `VORTEX_INSTALLER_`. The old names still work: when the current name is unset, the matching legacy name supplies the value and the run prints a notice naming its replacement. The fallback exists to ease migration and will be removed in a future major version.

:::

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Move future-removal guidance to the updating documentation.

Keep the current legacy-variable fallback documented here, but move the “will be removed in a future major version” migration detail to updating-vortex.mdx or release notes so this evergreen reference describes current behavior only.

Based on learnings, evergreen reference pages under .vortex/docs/content/ should avoid breaking-change and migration details inline.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.vortex/docs/content/cli.mdx around lines 116 - 120, Update the “Superseded
variable names” note in the CLI documentation to describe only the current
legacy-variable fallback and replacement notice behavior. Remove the
future-major-version removal guidance from this evergreen reference, and
relocate that migration detail to the updating documentation or release notes.

Source: Learnings

@github-actions

Copy link
Copy Markdown

Code coverage (threshold: 90%)

  Classes: 100.00% (1/1)
  Methods: 100.00% (2/2)
  Lines:   100.00% (153/153)
Per-class coverage
Drupal\ys_demo\Plugin\Block\CounterBlock
  Methods: 100.00% ( 2/ 2)   Lines: 100.00% ( 10/ 10)

@AlexSkrypnyk

This comment has been minimized.

2 similar comments
@AlexSkrypnyk

This comment has been minimized.

@AlexSkrypnyk

This comment has been minimized.

@AlexSkrypnyk
AlexSkrypnyk merged commit 08a9809 into 2.x Jul 29, 2026
38 of 44 checks passed
@AlexSkrypnyk
AlexSkrypnyk deleted the feature/cli-readme branch July 29, 2026 04:27
@github-project-automation github-project-automation Bot moved this from BACKLOG to Release queue in Vortex 1.x Jul 29, 2026
@AlexSkrypnyk

This comment has been minimized.

1 similar comment
@AlexSkrypnyk

Copy link
Copy Markdown
Member Author

Code coverage (threshold: 90%)

  Classes: 100.00% (1/1)
  Methods: 100.00% (2/2)
  Lines:   100.00% (153/153)
Per-class coverage
Drupal\ys_demo\Plugin\Block\CounterBlock
  Methods: 100.00% ( 2/ 2)   Lines: 100.00% ( 10/ 10)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Release queue

Development

Successfully merging this pull request may close these issues.

1 participant