@devrouter/cli 0.0.50 → 0.0.52
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 +18 -0
- package/bin/devrouter-process +4 -4
- package/dist/devrouter.js +971 -80
- package/package.json +1 -1
- package/upgrade-prompts/0.0.51.md +40 -0
- package/upgrade-prompts/0.0.52.md +34 -0
package/README.md
CHANGED
|
@@ -88,6 +88,24 @@ The report contains the canonical selection and exact apps, dependencies,
|
|
|
88
88
|
readiness checks, managed services, and process markers. Invalid configuration
|
|
89
89
|
or profile input fails before any runtime operation.
|
|
90
90
|
|
|
91
|
+
Repository automation can bind those app identities to build arguments,
|
|
92
|
+
readiness URLs, or other literal values through a separate repository-owned
|
|
93
|
+
contract:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
devrouter profile plan \
|
|
97
|
+
--repo . \
|
|
98
|
+
--profile manage,pwa \
|
|
99
|
+
--contract ci/profile-plan.yml \
|
|
100
|
+
--output /tmp/profile-plan.json \
|
|
101
|
+
--json
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Devrouter validates the selected resources and emits deterministic arrays. It
|
|
105
|
+
does not interpret binding names, expand strings, execute commands, or start a
|
|
106
|
+
runtime. See [Repository onboarding](./docs/REPO_ONBOARDING.md#bind-profiles-to-repository-automation)
|
|
107
|
+
for the version-1 contract.
|
|
108
|
+
|
|
91
109
|
Use devrouter lifecycle commands for managed environments. Raw DevPod or Devsy
|
|
92
110
|
`up`/`stop`/`delete` calls bypass ownership locks and exact checkout validation.
|
|
93
111
|
Devrouter auto-detects the installed workspace runtime CLI (DevPod or Devsy) and
|
package/bin/devrouter-process
CHANGED
|
@@ -187,9 +187,9 @@ process_owned() {
|
|
|
187
187
|
[ "$actual_pgid" = "$pgid" ] || return 1
|
|
188
188
|
[ "$pgid" = "$pid" ] || return 1
|
|
189
189
|
tr '\0' '\n' <"/proc/$pid/environ" 2>/dev/null |
|
|
190
|
-
grep -
|
|
190
|
+
grep -Fx "DEVROUTER_PROCESS_NAME=$name" >/dev/null || return 1
|
|
191
191
|
tr '\0' '\n' <"/proc/$pid/environ" 2>/dev/null |
|
|
192
|
-
grep -
|
|
192
|
+
grep -Fx "DEVROUTER_PROCESS_FINGERPRINT=$expected_fingerprint" >/dev/null
|
|
193
193
|
}
|
|
194
194
|
|
|
195
195
|
process_group_alive() {
|
|
@@ -217,7 +217,7 @@ is_helper_process() {
|
|
|
217
217
|
local candidate="$1"
|
|
218
218
|
|
|
219
219
|
[ -r "/proc/$candidate/cmdline" ] || return 1
|
|
220
|
-
tr '\0' '\n' <"/proc/$candidate/cmdline" 2>/dev/null | grep -
|
|
220
|
+
tr '\0' '\n' <"/proc/$candidate/cmdline" 2>/dev/null | grep -Fx "$0" >/dev/null
|
|
221
221
|
}
|
|
222
222
|
|
|
223
223
|
marked_process_exists() {
|
|
@@ -230,7 +230,7 @@ marked_process_exists() {
|
|
|
230
230
|
pid="${pid%/environ}"
|
|
231
231
|
process_alive "$pid" || continue
|
|
232
232
|
is_self_or_ancestor "$pid" && continue
|
|
233
|
-
if tr '\0' '\n' <"$environ" 2>/dev/null | grep -
|
|
233
|
+
if tr '\0' '\n' <"$environ" 2>/dev/null | grep -Fx "DEVROUTER_PROCESS_NAME=$name" >/dev/null; then
|
|
234
234
|
return 0
|
|
235
235
|
fi
|
|
236
236
|
done
|