@automatify-au/cli 0.1.5 → 0.1.7
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.
- package/README.md +71 -1
- package/dist/automatify.cjs +10622 -296
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -19,6 +19,7 @@ Command-group note:
|
|
|
19
19
|
- No separate backend.
|
|
20
20
|
- No duplicate domain/business logic in CLI.
|
|
21
21
|
- CLI commands must call shared Forge contracts (resolver/webtrigger paths) as they are introduced.
|
|
22
|
+
- Focused evidence commands may call Jira Cloud REST APIs directly when the feature is specifically Jira-native attachment/comment work.
|
|
22
23
|
|
|
23
24
|
## MVP non-goals
|
|
24
25
|
- No separate backend.
|
|
@@ -76,6 +77,16 @@ Minimum:
|
|
|
76
77
|
- `TESTOPS_FORGE_ENDPOINT` for commands that call Forge contracts (`doctor`, `ingest`, `run`, `sync`)
|
|
77
78
|
- `TESTOPS_FORGE_AUTH_TOKEN` from the one-time token shown in Forge `Operations -> CLI access`
|
|
78
79
|
|
|
80
|
+
Local config helper:
|
|
81
|
+
```bash
|
|
82
|
+
automatify testops config set baseUrl https://automatify-com-au.atlassian.net
|
|
83
|
+
automatify testops config set projectKey DEV
|
|
84
|
+
automatify testops config set forgeEndpoint "<webtrigger-url>"
|
|
85
|
+
printf "%s" "$TESTOPS_FORGE_AUTH_TOKEN" | automatify testops config set forgeAuthToken --stdin
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
`forgeAuthToken` local storage currently uses macOS Keychain. On Windows, Linux, and CI, keep the token in `TESTOPS_FORGE_AUTH_TOKEN` instead. `.testops-cli.json` should store non-secret values only.
|
|
89
|
+
|
|
79
90
|
Optional:
|
|
80
91
|
- `TESTOPS_FORGE_TIMEOUT_MS`
|
|
81
92
|
- `TESTOPS_FORGE_MAX_RETRIES`
|
|
@@ -91,6 +102,7 @@ All TestOps commands are invoked as `automatify testops <command>`:
|
|
|
91
102
|
- `bdd`
|
|
92
103
|
- `automatify testops bdd scenarios show --id <SCENARIO_ID>`
|
|
93
104
|
- `automatify testops bdd scenarios show --id <SCENARIO_ID> --format feature`
|
|
105
|
+
- `automatify testops bdd scenarios show --id <SCENARIO_ID|SC-4> --feature`
|
|
94
106
|
- `automatify testops bdd scenarios export --id <SCENARIO_ID|SC-4> --output-dir ./scenario-export`
|
|
95
107
|
- `automatify testops bdd scenarios export --all --output-dir ./scenario-export`
|
|
96
108
|
- `automatify testops bdd scenarios import --file ./scenario-export/SC-4.feature`
|
|
@@ -127,10 +139,55 @@ All TestOps commands are invoked as `automatify testops <command>`:
|
|
|
127
139
|
- `automatify testops ingest feature --file <path>` or `--stdin`
|
|
128
140
|
- `run`
|
|
129
141
|
- `automatify testops run upload --file <path>` or `--stdin`
|
|
142
|
+
- `allure`
|
|
143
|
+
- `automatify testops allure upload ABC-123 ./allure-report.zip --dry-run`
|
|
144
|
+
- `automatify testops allure upload ABC-123 ./allure-report.zip`
|
|
130
145
|
- `auto`
|
|
131
146
|
- `automatify testops auto --dry-run`
|
|
132
147
|
- `automatify testops auto`
|
|
133
148
|
|
|
149
|
+
## Allure Evidence for Jira
|
|
150
|
+
|
|
151
|
+
Purpose:
|
|
152
|
+
- upload an already generated Allure HTML report ZIP to a Jira issue as evidence.
|
|
153
|
+
- parse `widgets/summary.json` from the ZIP and add a concise Jira comment with result counts.
|
|
154
|
+
- keep the flow Java-free and backend-free; this command does not generate Allure reports from raw `allure-results`.
|
|
155
|
+
|
|
156
|
+
Supported ZIP layouts:
|
|
157
|
+
- `widgets/summary.json`
|
|
158
|
+
- `allure-report/widgets/summary.json`
|
|
159
|
+
- any nested path ending in `/widgets/summary.json`
|
|
160
|
+
|
|
161
|
+
Credentials:
|
|
162
|
+
```bash
|
|
163
|
+
export JIRA_SITE="https://example.atlassian.net"
|
|
164
|
+
export JIRA_EMAIL="qa@example.com"
|
|
165
|
+
export JIRA_API_TOKEN="<atlassian-api-token>"
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
`JIRA_BASE_URL` and existing `.testops-cli.json` `baseUrl` are also accepted for the site URL. CLI flags take precedence:
|
|
169
|
+
```bash
|
|
170
|
+
automatify testops allure upload ABC-123 ./allure-report.zip \
|
|
171
|
+
--site https://example.atlassian.net \
|
|
172
|
+
--email qa@example.com \
|
|
173
|
+
--api-token "$JIRA_API_TOKEN"
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
Dry run:
|
|
177
|
+
```bash
|
|
178
|
+
automatify testops allure upload ABC-123 ./allure-report.zip --dry-run
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
Upload without a Jira comment:
|
|
182
|
+
```bash
|
|
183
|
+
automatify testops allure upload ABC-123 ./allure-report.zip --no-comment
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
Machine-readable output:
|
|
187
|
+
```bash
|
|
188
|
+
automatify testops allure upload ABC-123 ./allure-report.zip --dry-run --json
|
|
189
|
+
```
|
|
190
|
+
|
|
134
191
|
### Optional gated maintenance commands
|
|
135
192
|
|
|
136
193
|
- `sync`
|
|
@@ -171,6 +228,19 @@ export JIRA_BASE_URL="https://automatify-com-au.atlassian.net"
|
|
|
171
228
|
export JIRA_PROJECT_KEY="DEV"
|
|
172
229
|
```
|
|
173
230
|
|
|
231
|
+
Or store the non-secret values in `.testops-cli.json` and, on macOS, the token in Keychain:
|
|
232
|
+
```bash
|
|
233
|
+
automatify testops config set baseUrl https://automatify-com-au.atlassian.net
|
|
234
|
+
automatify testops config set projectKey DEV
|
|
235
|
+
automatify testops config set forgeEndpoint "<webtrigger-url>"
|
|
236
|
+
printf "%s" "$TESTOPS_FORGE_AUTH_TOKEN" | automatify testops config set forgeAuthToken --stdin
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
Windows, Linux, and CI should keep the token in environment variables:
|
|
240
|
+
```bash
|
|
241
|
+
export TESTOPS_FORGE_AUTH_TOKEN="<one-time-token-from-forge-ui>"
|
|
242
|
+
```
|
|
243
|
+
|
|
174
244
|
Transport notes:
|
|
175
245
|
- Bearer auth is required for operator/CI use. Forge stores only the token hash plus metadata.
|
|
176
246
|
- Tokens are project-scoped, shown once at creation time, and can be revoked from the Forge UI.
|
|
@@ -317,7 +387,7 @@ automatify testops ingest feature --project-key DEV --file ./artifacts/features-
|
|
|
317
387
|
```
|
|
318
388
|
|
|
319
389
|
Feature export notes:
|
|
320
|
-
- `bdd scenarios show --format feature`
|
|
390
|
+
- `bdd scenarios show --format feature` and `bdd scenarios show --feature` render one scenario in feature-style text.
|
|
321
391
|
- `bdd scenarios export` writes a single-scenario `SC-*.feature` file with a reserved `@testops-scenario-SC-*` tag.
|
|
322
392
|
- Jira issue links are exported as normal Gherkin tags like `@DEV-2`; on import they are written back to `linkedIssueKeys`.
|
|
323
393
|
- current model has `linked issues`, not a separate persisted `primary issue`, so all exported issue-key tags are treated as equal links.
|