stacktape 2.23.0-beta.2 → 2.23.0-beta.3

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/bin/stacktape.js +27 -0
  2. package/package.json +7 -7
package/bin/stacktape.js CHANGED
@@ -109,12 +109,39 @@ function findBinary() {
109
109
  process.exit(1);
110
110
  }
111
111
 
112
+ /**
113
+ * Ensures the binary has executable permissions (Unix-like systems only)
114
+ */
115
+ function ensureExecutablePermissions(binaryPath) {
116
+ // Skip on Windows
117
+ if (process.platform === 'win32') {
118
+ return;
119
+ }
120
+
121
+ try {
122
+ const { chmodSync, statSync } = require('node:fs');
123
+ const stats = statSync(binaryPath);
124
+ const mode = stats.mode;
125
+
126
+ // Check if executable bit is set for owner (0o100)
127
+ if (!(mode & 0o100)) {
128
+ chmodSync(binaryPath, 0o755);
129
+ }
130
+ } catch (error) {
131
+ // If chmod fails, try to execute anyway
132
+ // The error will be caught later if permissions are still wrong
133
+ }
134
+ }
135
+
112
136
  /**
113
137
  * Executes the binary with the provided arguments
114
138
  */
115
139
  function executeBinary() {
116
140
  const binaryPath = findBinary();
117
141
 
142
+ // Ensure the binary has executable permissions
143
+ ensureExecutablePermissions(binaryPath);
144
+
118
145
  // Pass through all arguments except the first two (node and script path)
119
146
  const args = process.argv.slice(2);
120
147
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stacktape",
3
- "version": "2.23.0-beta.2",
3
+ "version": "2.23.0-beta.3",
4
4
  "description": "PaaS 2.0 that deploys to your own AWS account.",
5
5
  "author": "Stacktape team <support@stacktape.com>",
6
6
  "license": "MIT",
@@ -37,11 +37,11 @@
37
37
  },
38
38
  "dependencies": {},
39
39
  "optionalDependencies": {
40
- "@stacktape/cli-alpine-x64": "2.23.0-beta.2",
41
- "@stacktape/cli-darwin-arm64": "2.23.0-beta.2",
42
- "@stacktape/cli-darwin-x64": "2.23.0-beta.2",
43
- "@stacktape/cli-linux-arm64": "2.23.0-beta.2",
44
- "@stacktape/cli-linux-x64": "2.23.0-beta.2",
45
- "@stacktape/cli-win32-x64": "2.23.0-beta.2"
40
+ "@stacktape/cli-alpine-x64": "2.23.0-beta.3",
41
+ "@stacktape/cli-darwin-arm64": "2.23.0-beta.3",
42
+ "@stacktape/cli-darwin-x64": "2.23.0-beta.3",
43
+ "@stacktape/cli-linux-arm64": "2.23.0-beta.3",
44
+ "@stacktape/cli-linux-x64": "2.23.0-beta.3",
45
+ "@stacktape/cli-win32-x64": "2.23.0-beta.3"
46
46
  }
47
47
  }