sandboxbox 1.0.3 → 1.0.5

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 (2) hide show
  1. package/package.json +2 -2
  2. package/test-cli.js +72 -0
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "sandboxbox",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "Zero-privilege container runner with Playwright support",
5
5
  "type": "module",
6
6
  "main": "index.js",
7
7
  "bin": {
8
- "sandboxbox": "./cli.js"
8
+ "sandboxbox": "./test-cli.js"
9
9
  },
10
10
  "scripts": {
11
11
  "install": "node scripts/build.js",
package/test-cli.js ADDED
@@ -0,0 +1,72 @@
1
+ #!/usr/bin/env node
2
+
3
+ console.log('🚀 SandboxBox test starting...');
4
+ console.log('Platform:', process.platform);
5
+ console.log('Node.js:', process.version);
6
+
7
+ const args = process.argv.slice(2);
8
+
9
+ // Handle --help and no arguments
10
+ if (args.length === 0 || args.includes('--help') || args.includes('-h')) {
11
+ showHelp();
12
+ process.exit(0);
13
+ }
14
+
15
+ // Handle version
16
+ if (args.includes('--version') || args[0] === 'version') {
17
+ console.log('SandboxBox v1.0.4');
18
+ console.log('Zero-privilege containers with Playwright support');
19
+ process.exit(0);
20
+ }
21
+
22
+ if (process.platform !== 'linux') {
23
+ console.log('❌ SandboxBox only works on Linux systems');
24
+ console.log('🐧 Required: Linux with bubblewrap (bwrap)');
25
+ console.log('');
26
+ console.log('💡 Alternatives for Windows users:');
27
+ console.log(' • Use WSL2 (Windows Subsystem for Linux 2)');
28
+ console.log(' • Use Docker Desktop with Linux containers');
29
+ console.log(' • Use GitHub Actions (ubuntu-latest runners)');
30
+ console.log(' • Use a cloud Linux instance (AWS, GCP, Azure)');
31
+ console.log('');
32
+ console.log('✅ On Linux/WSL2, simply run: npx sandboxbox --help');
33
+ process.exit(1);
34
+ }
35
+
36
+ console.log('✅ Platform check passed - you are on Linux!');
37
+ console.log('📦 SandboxBox - Zero-Privilege Container Runner');
38
+ console.log('═════════════════════════════════════════════════════');
39
+ console.log('');
40
+ console.log('⚠️ This is a simplified test version.');
41
+ console.log('🔧 Full SandboxBox features are available on Linux systems.');
42
+ console.log('');
43
+ console.log('🚀 8ms startup • True isolation • Playwright ready');
44
+
45
+ function showHelp() {
46
+ console.log('📦 SandboxBox - Zero-Privilege Container Runner');
47
+ console.log('═════════════════════════════════════════════════════');
48
+ console.log('');
49
+ console.log('Usage: npx sandboxbox <command> [options]');
50
+ console.log('');
51
+ console.log('Commands:');
52
+ console.log(' setup Set up Alpine Linux environment (one-time)');
53
+ console.log(' build <dockerfile> Build container from Dockerfile');
54
+ console.log(' run <project-dir> Run Playwright tests in isolation');
55
+ console.log(' shell <project-dir> Start interactive shell in container');
56
+ console.log(' quick-test <project-dir> Quick test with sample Dockerfile');
57
+ console.log(' version Show version information');
58
+ console.log('');
59
+ console.log('Examples:');
60
+ console.log(' npx sandboxbox setup');
61
+ console.log(' npx sandboxbox build ./Dockerfile');
62
+ console.log(' npx sandboxbox run ./my-project');
63
+ console.log(' npx sandboxbox shell ./my-project');
64
+ console.log(' npx sandboxbox quick-test ./my-app');
65
+ console.log('');
66
+ console.log('Requirements:');
67
+ console.log(' - Linux system (WSL2 on Windows works great!)');
68
+ console.log(' - bubblewrap (bwrap): sudo apt-get install bubblewrap');
69
+ console.log(' - No root privileges needed after installation!');
70
+ console.log('');
71
+ console.log('🚀 8ms startup • True isolation • Playwright ready');
72
+ }