farm-runner 1.1.0
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 +80 -0
- package/dist/src/bundle.js +1 -0
- package/dist/src/common/middleware/trace.middleware.d.ts.map +1 -0
- package/dist/src/common/middleware/trace.middleware.js +56 -0
- package/dist/src/common/middleware/trace.middleware.js.map +1 -0
- package/dist/src/scripts/prepare-wda-cli.d.ts +14 -0
- package/dist/src/scripts/prepare-wda-cli.d.ts.map +1 -0
- package/dist/src/scripts/prepare-wda-cli.js +71 -0
- package/dist/src/scripts/prepare-wda-cli.js.map +1 -0
- package/dist/src/scripts/prepare-wda.d.ts +22 -0
- package/dist/src/scripts/prepare-wda.d.ts.map +1 -0
- package/dist/src/scripts/prepare-wda.js +539 -0
- package/dist/src/scripts/prepare-wda.js.map +1 -0
- package/dist/src/server.d.ts.map +1 -0
- package/dist/src/server.js +394 -0
- package/dist/src/server.js.map +1 -0
- package/dist/src/services/tracingUtils.d.ts.map +1 -0
- package/dist/src/services/tracingUtils.js +73 -0
- package/dist/src/services/tracingUtils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +108 -0
package/README.md
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# @device-farm/node
|
|
2
|
+
|
|
3
|
+
Node server package for the Device Farm project - connects devices to the hub for distributed testing.
|
|
4
|
+
|
|
5
|
+
## 📖 Documentation
|
|
6
|
+
|
|
7
|
+
**All documentation has been consolidated in the [main README](../../README.md).**
|
|
8
|
+
|
|
9
|
+
Please refer to the main README for:
|
|
10
|
+
|
|
11
|
+
- **[Node Configuration](../../README.md#-node-configuration)** - Complete configuration reference
|
|
12
|
+
- **[Embedded Appium Server](../../README.md#-embedded-appium-server)** - Built-in Appium server setup
|
|
13
|
+
- **[ADB Log Capture](../../README.md#-adb-log-capture)** - Automatic Android log capture
|
|
14
|
+
- **[iOS Automation Setup](../../README.md#-ios-automation-setup)** - WebDriverAgent preparation
|
|
15
|
+
- **[Node Liveness & Heartbeat System](../../README.md#-node-liveness--heartbeat-system)** - How nodes stay connected
|
|
16
|
+
- **[Available Scripts](../../README.md#-available-scripts)** - Commands to run the node server
|
|
17
|
+
|
|
18
|
+
## 🚀 Quick Start
|
|
19
|
+
|
|
20
|
+
### From Root Directory (Recommended)
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Copy and edit the configuration file
|
|
24
|
+
cp packages/node/node.config.example.json packages/node/node.config.json
|
|
25
|
+
|
|
26
|
+
# Edit node.config.json with your hub credentials
|
|
27
|
+
# Then start the node server
|
|
28
|
+
npm run start:node
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### From Node Package Directory
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# Copy and edit the configuration file
|
|
35
|
+
cp node.config.example.json node.config.json
|
|
36
|
+
|
|
37
|
+
# Edit node.config.json with your hub credentials
|
|
38
|
+
# Then start the server
|
|
39
|
+
npm run start
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## 🔧 Minimal Configuration
|
|
43
|
+
|
|
44
|
+
Create `packages/node/node.config.json`:
|
|
45
|
+
|
|
46
|
+
```json
|
|
47
|
+
{
|
|
48
|
+
"hubUrl": "http://localhost:3000",
|
|
49
|
+
"accessKey": "YOUR_ACCESS_KEY",
|
|
50
|
+
"token": "YOUR_TOKEN",
|
|
51
|
+
"name": "My Node"
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
The node will automatically:
|
|
56
|
+
|
|
57
|
+
- Detect and register connected devices
|
|
58
|
+
- Start an embedded Appium server
|
|
59
|
+
- Send heartbeats to the hub
|
|
60
|
+
- Process automation requests
|
|
61
|
+
|
|
62
|
+
## 📦 What This Package Does
|
|
63
|
+
|
|
64
|
+
- **Device Detection**: Automatically discovers connected Android and iOS devices
|
|
65
|
+
- **Appium Integration**: Runs an embedded Appium server (no global installation needed)
|
|
66
|
+
- **Hub Communication**: Registers with the hub and maintains connection via heartbeats
|
|
67
|
+
- **Session Management**: Creates and manages Appium sessions on local devices
|
|
68
|
+
- **Log Capture**: Automatically captures device logs (ADB logcat for Android)
|
|
69
|
+
- **Capability Processing**: Handles device-specific capabilities like WDA for iOS
|
|
70
|
+
|
|
71
|
+
## 🔗 Related Documentation
|
|
72
|
+
|
|
73
|
+
- **Complete Configuration**: See [Node Configuration](../../README.md#-node-configuration) in main README
|
|
74
|
+
- **Database Setup**: See [Database Setup](../../README.md#-database-setup) in main README
|
|
75
|
+
- **iOS Setup**: See [iOS Automation Setup](../../README.md#-ios-automation-setup) in main README
|
|
76
|
+
- **Heartbeat System**: See [Node Liveness & Heartbeat System](../../README.md#-node-liveness--heartbeat-system) in main README
|
|
77
|
+
|
|
78
|
+
## 📄 License
|
|
79
|
+
|
|
80
|
+
MIT
|