@automatify-au/cli 0.1.16 → 0.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +37 -21
  2. package/dist/automatify.cjs +450 -194
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -74,8 +74,10 @@ Publish notes:
74
74
  Minimum:
75
75
  - `JIRA_BASE_URL`
76
76
  - At least one of `JIRA_PROJECT_KEY` or `JIRA_ISSUE_KEY`
77
- - `TESTOPS_FORGE_ENDPOINT` for commands that call Forge contracts (`doctor`, `ingest`, `run`, `sync`)
78
- - `TESTOPS_FORGE_AUTH_TOKEN` from the one-time token shown in Forge `Operations -> CLI access`
77
+ - `TESTOPS_FORGE_ENDPOINT` for commands that call Forge contracts (`doctor`, `ingest`, `run`, `sync`); copy the installation-specific endpoint from Jira `Automatify TestOps -> CLI`
78
+ - `TESTOPS_FORGE_AUTH_TOKEN`; create a CLI key in Jira `Automatify TestOps -> CLI` and copy the one-time token when it is shown
79
+
80
+ Customer admins do not need the Forge developer CLI to obtain either value. The Jira CLI workspace resolves the webtrigger endpoint for the current app installation at runtime.
79
81
 
80
82
  Local Jira auth helper on macOS/Windows:
81
83
  ```bash
@@ -88,10 +90,10 @@ automatify testops auth status
88
90
 
89
91
  On Linux/CI, keep `JIRA_API_TOKEN` in the environment and run `auth login` without `--token-stdin`; the CLI stores only non-secret Jira settings. Use `automatify testops auth logout` to remove local Jira and Forge credentials while preserving non-secret URL/email settings. Environment variables are not modified by logout.
90
92
 
91
- Forge transport auth remains an advanced setting:
93
+ Forge transport auth remains an advanced setting. First open the Jira project, go to `Automatify TestOps -> CLI`, copy the displayed CLI endpoint, create a CLI key, and copy its one-time token. Then configure the CLI:
92
94
  ```bash
93
95
  automatify testops config set projectKey DEV
94
- automatify testops config set forgeEndpoint "<webtrigger-url>"
96
+ automatify testops config set forgeEndpoint "<endpoint-copied-from-jira>"
95
97
  printf "%s" "$TESTOPS_FORGE_AUTH_TOKEN" | automatify testops config set forgeAuthToken --stdin
96
98
  ```
97
99
 
@@ -110,6 +112,9 @@ All TestOps commands are invoked as `automatify testops <command>`:
110
112
  ### Core browse commands
111
113
 
112
114
  - `bdd`
115
+ - `automatify testops bdd scenarios list`
116
+ - `automatify testops bdd scenarios list --json`
117
+ - `automatify testops bdd scenarios list --project-key <PROJECT_KEY> --issue-key <ISSUE_KEY>`
113
118
  - `automatify testops bdd scenarios show --id <SCENARIO_ID>`
114
119
  - `automatify testops bdd scenarios show --id <SCENARIO_ID> --format feature`
115
120
  - `automatify testops bdd scenarios show --id <SCENARIO_ID|SC-4> --feature`
@@ -141,6 +146,15 @@ All TestOps commands are invoked as `automatify testops <command>`:
141
146
  - `automatify allure open ./allure-report.zip`
142
147
  - `automatify allure open ./allure-report.zip --no-open --port 8080`
143
148
 
149
+ `bdd scenarios list` uses the configured project context or `--project-key`; `--issue-key` optionally narrows the Jira issue context. Human output is concise and selector-first:
150
+
151
+ ```text
152
+ BDD scenarios (1) for project DEV:
153
+ SC-14 | Guest payment | Feature: Checkout | Steps: 3 | Issues: DEV-2
154
+ ```
155
+
156
+ With `--json`, the command emits one JSON object with stable action `bdd-scenarios-list`, `projectKey`, optional `issueKey`, `count`, and `items`.
157
+
144
158
  ### Advanced browse commands
145
159
 
146
160
  - `cases`
@@ -224,7 +238,7 @@ Secrets must come from stdin or safe environment references. Secret values are r
224
238
  ```bash
225
239
  export TESTOPS_GITHUB_PROVIDER_TOKEN="<github-app-installation-or-fine-grained-token>"
226
240
  export TESTOPS_GITHUB_ADMIN_TOKEN="<least-privilege-token-allowed-to-manage-actions-secrets>"
227
- export TESTOPS_FORGE_ENDPOINT="<forge-webtrigger-url>"
241
+ export TESTOPS_FORGE_ENDPOINT="<endpoint-copied-from-jira-cli-workspace>"
228
242
  export TESTOPS_FORGE_AUTH_TOKEN="<one-time-project-cli-key>"
229
243
 
230
244
  automatify testops setup apply \
@@ -270,7 +284,8 @@ Doctor verifies the local workflow hash, GitHub workflow metadata/content at the
270
284
 
271
285
  Current authentication boundary:
272
286
 
273
- - `TESTOPS_FORGE_AUTH_TOKEN` is still a project-scoped, project-admin-created CLI key from Jira `Operations -> CLI access`.
287
+ - `TESTOPS_FORGE_ENDPOINT` is copied from the installation-specific endpoint displayed in Jira `Automatify TestOps -> CLI`.
288
+ - `TESTOPS_FORGE_AUTH_TOKEN` is a project-scoped, project-admin-created CLI key from the same Jira CLI workspace.
274
289
  - The key authorizes the current Forge webtrigger transport for that project; command groups are not separate security scopes.
275
290
  - Setup does not turn this into an all-user auth model. Customer-admin packaging and any future user-level authentication remain separate work.
276
291
  - The same callback key may be stored as a GitHub Actions repository secret only under the explicit `github-secrets` apply scope.
@@ -423,20 +438,18 @@ Required env/config for real upload mode:
423
438
  - `TESTOPS_FORGE_ENDPOINT`
424
439
  - `TESTOPS_FORGE_AUTH_TOKEN` for the repo-owned authenticated webtrigger transport
425
440
 
426
- One-time Forge transport setup:
427
- ```bash
428
- cd apps/forge
429
- forge deploy
430
- forge install --upgrade --site automatify-com-au.atlassian.net --product Jira -e development --confirm-scopes --non-interactive
431
- forge webtrigger create --functionKey cli-transport-webtrigger --site automatify-com-au.atlassian.net --product Jira -e development
432
- ```
441
+ Customer CLI transport setup (no Forge developer CLI required):
442
+ 1. Open the Jira project and go to `Automatify TestOps -> CLI`.
443
+ 2. Copy the `CLI endpoint` displayed for the current installation.
444
+ 3. Create a project CLI key and copy the token immediately; it is shown once only.
445
+ 4. Configure those two values in the local shell, CI secret store, or CLI config.
433
446
 
434
- Then open the Jira project page, go to `Operations -> CLI access`, create a CLI key, and copy the token immediately. It is shown once only.
447
+ Repository maintainers deploy/install the Forge app through the repository's controlled deployment workflow. That internal deployment process is separate from customer CLI onboarding.
435
448
 
436
- Export the webtrigger URL and the one-time token for CLI use:
449
+ Export the installation endpoint and one-time token for CLI use:
437
450
  ```bash
438
- export TESTOPS_FORGE_ENDPOINT="<webtrigger-url>"
439
- export TESTOPS_FORGE_AUTH_TOKEN="<one-time-token-from-forge-ui>"
451
+ export TESTOPS_FORGE_ENDPOINT="<endpoint-copied-from-jira>"
452
+ export TESTOPS_FORGE_AUTH_TOKEN="<one-time-token-from-jira-cli-workspace>"
440
453
  export JIRA_BASE_URL="https://automatify-com-au.atlassian.net"
441
454
  export JIRA_PROJECT_KEY="DEV"
442
455
  ```
@@ -445,18 +458,19 @@ Or store the non-secret values in `.testops-cli.json`; on macOS the token is sto
445
458
  ```bash
446
459
  automatify testops config set baseUrl https://automatify-com-au.atlassian.net
447
460
  automatify testops config set projectKey DEV
448
- automatify testops config set forgeEndpoint "<webtrigger-url>"
461
+ automatify testops config set forgeEndpoint "<endpoint-copied-from-jira>"
449
462
  printf "%s" "$TESTOPS_FORGE_AUTH_TOKEN" | automatify testops config set forgeAuthToken --stdin
450
463
  ```
451
464
 
452
465
  On Linux and CI, keep the token in environment variables. Windows users can use the same `config set forgeAuthToken --stdin` flow from PowerShell; see [WINDOWS.md](./WINDOWS.md).
453
466
  ```bash
454
- export TESTOPS_FORGE_AUTH_TOKEN="<one-time-token-from-forge-ui>"
467
+ export TESTOPS_FORGE_AUTH_TOKEN="<one-time-token-from-jira-cli-workspace>"
455
468
  ```
456
469
 
457
470
  Transport notes:
458
471
  - Bearer auth is required for operator/CI use. Forge stores only the token hash plus metadata.
459
- - Tokens are project-scoped, shown once at creation time, and can be revoked from the Forge UI.
472
+ - Tokens are project-scoped, shown once at creation time, and can be revoked from the Jira CLI workspace.
473
+ - The endpoint is resolved by the Forge runtime for the current installation; customers do not configure a Forge-side endpoint variable.
460
474
  - Expired or revoked tokens are rejected by the transport.
461
475
 
462
476
  Scenario automation callback example:
@@ -545,6 +559,7 @@ Azure DevOps setup note:
545
559
 
546
560
  Core browse examples:
547
561
  ```bash
562
+ automatify testops bdd scenarios list --project-key DEV --json
548
563
  automatify testops bdd scenarios show --project-key DEV --id <SCENARIO_ID> --json
549
564
  automatify testops bdd scenarios export --project-key DEV --id SC-4 --output-dir ./artifacts/scenario-export --json
550
565
  automatify testops bdd scenarios import --project-key DEV --file ./artifacts/scenario-export/SC-4.feature --json
@@ -570,6 +585,7 @@ automatify testops suites cases list --project-key DEV --key TS-1
570
585
  Recommended browse flow:
571
586
  ```bash
572
587
  # Path A: scenario-first browse
588
+ automatify testops bdd scenarios list --project-key DEV --json
573
589
  automatify testops bdd scenarios show --project-key DEV --id <SCENARIO_ID> --json
574
590
  automatify testops runs show --project-key DEV --id <RUN_ID> --json
575
591
 
@@ -608,7 +624,7 @@ Feature export notes:
608
624
  - `bdd features export` writes one `.feature` file per stored BDD feature plus `manifest.json`.
609
625
  - with `--zip`, the CLI also writes `./artifacts/features-export.zip` next to the export directory.
610
626
  - pass `--issue-key DEV-2` to export only features visible in that Jira issue context.
611
- - `getSummaryExport` remains the reporting/export path for JSON/CSV summary snapshots and is separate from feature-file round-trip export.
627
+ - `getSummaryExport` remains the reporting/export path for JSON/CSV summary snapshots and is separate from feature-file round-trip export/import.
612
628
 
613
629
  Coverage and readiness report via the Forge transport:
614
630
  ```bash