[Do not Merge] CLI-1793: Consume Cloud API v3 OpenAPI spec in ACLI (#2011)#2018
Draft
deepakmishra2 wants to merge 1 commit into
Draft
[Do not Merge] CLI-1793: Consume Cloud API v3 OpenAPI spec in ACLI (#2011)#2018deepakmishra2 wants to merge 1 commit into
deepakmishra2 wants to merge 1 commit into
Conversation
* Bump the dependencies group with 2 updates (#2010) Bumps the dependencies group with 2 updates: [guzzlehttp/guzzle](https://github.com/guzzle/guzzle) and [ramsey/uuid](https://github.com/ramsey/uuid). Updates `guzzlehttp/guzzle` from 7.11.1 to 7.12.1 - [Release notes](https://github.com/guzzle/guzzle/releases) - [Changelog](https://github.com/guzzle/guzzle/blob/7.12/CHANGELOG.md) - [Commits](guzzle/guzzle@7.11.1...7.12.1) Updates `ramsey/uuid` from 4.9.2 to 4.9.3 - [Release notes](https://github.com/ramsey/uuid/releases) - [Changelog](https://github.com/ramsey/uuid/blob/4.x/CHANGELOG.md) - [Commits](ramsey/uuid@4.9.2...4.9.3) --- updated-dependencies: - dependency-name: guzzlehttp/guzzle dependency-version: 7.12.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: ramsey/uuid dependency-version: 4.9.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * CLI-1793: Spike — POC to consume Cloud API v3 OpenAPI spec in ACLI Adds a parallel command-generation path for v3 specs sourced from `acquia/api-specs`, without touching the existing v2 or ACSF pipelines. - composer.json: new `update-acquia-v3-spec` script that bundles site-service-php + environment-service-php via redocly, then translates legacy `x-cli-name` to ARB-550's `x-acquia-exposure.channels.cli.command` at the consumption boundary. - src/Command/Api/ApiCommandHelper.php: extracted `getCliCommandName()` and `normalizePath()` as protected template methods. v2 behavior unchanged (defaults return legacy key / input path). - src/Command/Api/ApiV3CommandHelper.php: subclass with strict ARB-550 key lookup (no legacy fallback) and `/v3/` path prefixing for env-service endpoints (site-service endpoints are not prefixed on the live gateway and are left untouched). - bin/acli: register `api:v3:*` commands under a `file_exists` guard, reusing the existing `ApiCommandFactory`. - assets/acquia-v3-spec.json: first v3 bundle (20 operations across site-service-php + environment-service-php). - docs/poc/acquia-v3-spec-ingestion.md: findings doc with go/no-go recommendation, upstream dependency tracking (API-1678 KaaS server, API-1674 CLI directive, acquia/api-specs PR #46 bundling fixes), and a cleanup plan for each jq transform once upstream catches up. Tests: 32 pass / 159 assertions. 4 ARB-550 key cases, 4 path normalization cases, 6 spec-file sanity checks, 5 real-bundle E2E tests, plus v2 regression coverage via ApiCommandHelperTest and ApiListCommandTest. Live-verified end-to-end: - `api:v3:environments:find <uuid>` returns 200 OK with real MEO env data from the production Cloud Platform gateway. - `api:v3:sites:duplicate` accepted (202) and created a real duplicated site. - No regressions on `api:*` (378 v2 commands) or `acsf:*` (128 commands). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix mutation testing. * fix test and v3 changes. * fix site instance issue. * Fix gateway url and logic update. * mutation test added * fix cves. * fix test. * fix test * feedback changes. * update spec. * add more test. * add stability flag * mutation testing fix. * mutation test fix. * logic for audience added. * mutation fix again * update make redocly call * CLI-1796: Productionize the v3 commands for CLI. (#2013) * CLI-1796: Productionize the v3 commands for CLI. * fix CI. * remove CI logic. * ran composer command to update spec. * update git ssh url. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Bumps the dependencies group with 2 updates: guzzlehttp/guzzle and ramsey/uuid.
Updates
guzzlehttp/guzzlefrom 7.11.1 to 7.12.1Updates
ramsey/uuidfrom 4.9.2 to 4.9.3updated-dependencies:
Adds a parallel command-generation path for v3 specs sourced from
acquia/api-specs, without touching the existing v2 or ACSF pipelines.update-acquia-v3-specscript that bundles site-service-php + environment-service-php via redocly, then translates legacyx-cli-nameto ARB-550'sx-acquia-exposure.channels.cli.commandat the consumption boundary.getCliCommandName()andnormalizePath()as protected template methods. v2 behavior unchanged (defaults return legacy key / input path)./v3/path prefixing for env-service endpoints (site-service endpoints are not prefixed on the live gateway and are left untouched).api:v3:*commands under afile_existsguard, reusing the existingApiCommandFactory.Tests: 32 pass / 159 assertions. 4 ARB-550 key cases, 4 path normalization cases, 6 spec-file sanity checks, 5 real-bundle E2E tests, plus v2 regression coverage via ApiCommandHelperTest and ApiListCommandTest.
Live-verified end-to-end:
api:v3:environments:find <uuid>returns 200 OK with real MEO env data from the production Cloud Platform gateway.api:v3:sites:duplicateaccepted (202) and created a real duplicated site.api:*(378 v2 commands) oracsf:*(128 commands).fix mutation testing.
fix test and v3 changes.
fix site instance issue.
Fix gateway url and logic update.
mutation test added
fix cves.
fix test.
fix test
feedback changes.
update spec.
add more test.
add stability flag
mutation testing fix.
mutation test fix.
logic for audience added.
mutation fix again
update make redocly call
CLI-1796: Productionize the v3 commands for CLI. (CLI-1796: Productionize the v3 commands for CLI. #2013)
CLI-1796: Productionize the v3 commands for CLI.
fix CI.
remove CI logic.
ran composer command to update spec.
update git ssh url.
Motivation
Fixes #NNN
Proposed changes
Alternatives considered
Testing steps
./bin/acli ckc