@samsara-dev/appwright 0.7.0 → 0.7.1
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/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# appwright
|
|
2
2
|
|
|
3
|
+
## 0.7.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 75adf30: Add CI metadata support for BrowserStack build traceability
|
|
8
|
+
|
|
9
|
+
BrowserStack sessions now automatically include CI context in build names and session names:
|
|
10
|
+
|
|
11
|
+
- **Buildkite**: Build number, branch, commit from `BUILDKITE_*` env vars
|
|
12
|
+
- **GitHub Actions**: Run number, ref name, SHA from `GITHUB_*` env vars
|
|
13
|
+
- **GitLab CI**: Pipeline ID, ref name, commit from `CI_*` env vars
|
|
14
|
+
|
|
15
|
+
Example build names:
|
|
16
|
+
|
|
17
|
+
- CI: `driver-performance-tests android #35 (main)`
|
|
18
|
+
- Local: `driver-performance-tests android`
|
|
19
|
+
|
|
20
|
+
Environment variable overrides:
|
|
21
|
+
|
|
22
|
+
- `BROWSERSTACK_BUILD_NAME`: Override auto-generated build name
|
|
23
|
+
- `BROWSERSTACK_SESSION_NAME`: Override auto-generated session name
|
|
24
|
+
|
|
3
25
|
## 0.7.0
|
|
4
26
|
|
|
5
27
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/browserstack/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EACf,cAAc,EAGf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAsDtC,qBAAa,0BAA2B,YAAW,cAAc;IAC/D,OAAO,CAAC,cAAc,CAAC,CAA6B;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,OAAO,CAA+B;gBAG5C,OAAO,EAAE,WAAW,CAAC,eAAe,CAAC,EACrC,WAAW,EAAE,MAAM,GAAG,SAAS;IAU3B,WAAW;IA0EX,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAMlC,OAAO,CAAC,cAAc;YASR,YAAY;YAiBZ,iBAAiB;YAKjB,yBAAyB;WAK1B,aAAa,CACxB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAuFlD,eAAe,CAAC,OAAO,EAAE;QAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf;IA2BD,OAAO,CAAC,YAAY;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/browserstack/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EACf,cAAc,EAGf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAsDtC,qBAAa,0BAA2B,YAAW,cAAc;IAC/D,OAAO,CAAC,cAAc,CAAC,CAA6B;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,OAAO,CAA+B;gBAG5C,OAAO,EAAE,WAAW,CAAC,eAAe,CAAC,EACrC,WAAW,EAAE,MAAM,GAAG,SAAS;IAU3B,WAAW;IA0EX,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAMlC,OAAO,CAAC,cAAc;YASR,YAAY;YAiBZ,iBAAiB;YAKjB,yBAAyB;WAK1B,aAAa,CACxB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAuFlD,eAAe,CAAC,OAAO,EAAE;QAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf;IA2BD,OAAO,CAAC,YAAY;CAsJrB"}
|
|
@@ -251,6 +251,28 @@ class BrowserStackDeviceProvider {
|
|
|
251
251
|
throw new Error(`process.env.${envVarKey} is not set. Did the file upload work?`);
|
|
252
252
|
}
|
|
253
253
|
const permissionPrompts = deviceConfig?.permissionPrompts;
|
|
254
|
+
// Build CI-aware metadata for better traceability between CI builds and BrowserStack sessions
|
|
255
|
+
const ciBuildIdentifier = process.env.BUILDKITE_BUILD_ID ||
|
|
256
|
+
process.env.GITHUB_RUN_ID ||
|
|
257
|
+
process.env.CI_JOB_ID || // GitLab CI
|
|
258
|
+
process.env.USER;
|
|
259
|
+
const ciBuildNumber = process.env.BUILDKITE_BUILD_NUMBER ||
|
|
260
|
+
process.env.GITHUB_RUN_NUMBER ||
|
|
261
|
+
process.env.CI_PIPELINE_IID; // GitLab CI
|
|
262
|
+
const ciBranch = process.env.BUILDKITE_BRANCH ||
|
|
263
|
+
process.env.GITHUB_REF_NAME ||
|
|
264
|
+
process.env.CI_COMMIT_REF_NAME; // GitLab CI
|
|
265
|
+
const ciCommit = (process.env.BUILDKITE_COMMIT ||
|
|
266
|
+
process.env.GITHUB_SHA ||
|
|
267
|
+
process.env.CI_COMMIT_SHA) // GitLab CI
|
|
268
|
+
?.substring(0, 7);
|
|
269
|
+
// Allow env var override, otherwise build a descriptive name with CI context
|
|
270
|
+
const defaultBuildName = ciBuildNumber
|
|
271
|
+
? `${projectName} ${platformName} #${ciBuildNumber}${ciBranch ? ` (${ciBranch})` : ""}`
|
|
272
|
+
: `${projectName} ${platformName}`;
|
|
273
|
+
const defaultSessionName = ciCommit
|
|
274
|
+
? `${projectName} ${platformName} test @ ${ciCommit}`
|
|
275
|
+
: `${projectName} ${platformName} test`;
|
|
254
276
|
const bstackOptions = {
|
|
255
277
|
debug: true,
|
|
256
278
|
interactiveDebugging: true,
|
|
@@ -262,11 +284,9 @@ class BrowserStackDeviceProvider {
|
|
|
262
284
|
osVersion: deviceConfig.osVersion,
|
|
263
285
|
platformName: platformName,
|
|
264
286
|
deviceOrientation: deviceConfig?.orientation,
|
|
265
|
-
buildName:
|
|
266
|
-
sessionName:
|
|
267
|
-
buildIdentifier:
|
|
268
|
-
? `CI ${process.env.GITHUB_RUN_ID}`
|
|
269
|
-
: process.env.USER,
|
|
287
|
+
buildName: process.env.BROWSERSTACK_BUILD_NAME || defaultBuildName,
|
|
288
|
+
sessionName: process.env.BROWSERSTACK_SESSION_NAME || defaultSessionName,
|
|
289
|
+
buildIdentifier: ciBuildIdentifier,
|
|
270
290
|
};
|
|
271
291
|
if (typeof deviceConfig?.appProfiling === "boolean") {
|
|
272
292
|
bstackOptions.appProfiling = deviceConfig.appProfiling;
|