tuyoo-devflow 0.1.26 → 0.1.27
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
CHANGED
|
@@ -132,12 +132,14 @@ bash <workDir>/start_jenkins_agent.sh
|
|
|
132
132
|
bash <workDir>/start_jenkins_agent.sh
|
|
133
133
|
bash <workDir>/start_jenkins_agent.sh restart
|
|
134
134
|
bash <workDir>/start_jenkins_agent.sh status
|
|
135
|
+
bash <workDir>/start_jenkins_agent.sh status --verbose
|
|
135
136
|
bash <workDir>/start_jenkins_agent.sh stop
|
|
136
137
|
|
|
137
138
|
# macOS(launchctl 模式)
|
|
138
139
|
bash <workDir>/start_jenkins_agent.sh
|
|
139
140
|
bash <workDir>/start_jenkins_agent.sh restart
|
|
140
141
|
bash <workDir>/start_jenkins_agent.sh status
|
|
142
|
+
bash <workDir>/start_jenkins_agent.sh status --verbose
|
|
141
143
|
bash <workDir>/start_jenkins_agent.sh stop
|
|
142
144
|
|
|
143
145
|
# macOS(script 模式)
|
|
@@ -161,12 +163,14 @@ bash <workDir>/start_jenkins_agent.sh
|
|
|
161
163
|
- `launchctl` 模式(默认):
|
|
162
164
|
- `~/Library/LaunchAgents/<service>.plist`
|
|
163
165
|
- `start_jenkins_agent.sh` 可统一管理 `start|restart|stop|status`
|
|
166
|
+
- `status` 默认只显示关键状态,`status --verbose` 显示 launchctl 详情
|
|
164
167
|
- 自动执行 `launchctl bootout/bootstrap/kickstart`,注册到 `gui/<uid>`(Aqua),不要加 `sudo`
|
|
165
168
|
- 重装/卸载会同时尝试按 service target 与 plist path 执行 `bootout`,规避旧 LaunchAgent 卸不掉导致的 bootstrap 失败
|
|
166
169
|
- 若自动安装失败,回落写到 `${workDir}/<service>.plist` 并提示手动安装命令
|
|
167
170
|
- `tmux` 模式:
|
|
168
171
|
- 脚本内通过 tmux 后台会话启动 Agent
|
|
169
172
|
- 支持 `bash start_jenkins_agent.sh restart|stop|status`
|
|
173
|
+
- `status` 默认只显示关键状态,`status --verbose` 显示 tmux 会话/窗格详情
|
|
170
174
|
- 不依赖 `launchctl bootout/bootstrap/kickstart`
|
|
171
175
|
- `script` 模式:
|
|
172
176
|
- 仅生成 `${workDir}/start_jenkins_agent.sh`
|
|
@@ -21,6 +21,7 @@ SERVICE_TARGET=${shellQuote(`gui/${launchdOptions.guiUid}/${launchdOptions.servi
|
|
|
21
21
|
GUI_DOMAIN=${shellQuote(`gui/${launchdOptions.guiUid}`)}
|
|
22
22
|
PLIST_PATH="$HOME/Library/LaunchAgents/${launchdOptions.serviceName}.plist"
|
|
23
23
|
ACTION=\${1:-start}
|
|
24
|
+
DETAIL=\${2:-}
|
|
24
25
|
|
|
25
26
|
if [ "\${TDF_LAUNCHD_CHILD:-}" != "1" ]; then
|
|
26
27
|
ensure_loaded() {
|
|
@@ -49,11 +50,27 @@ if [ "\${TDF_LAUNCHD_CHILD:-}" != "1" ]; then
|
|
|
49
50
|
exit $?
|
|
50
51
|
;;
|
|
51
52
|
status)
|
|
52
|
-
launchctl print "$SERVICE_TARGET"
|
|
53
|
-
|
|
53
|
+
if ! STATUS_OUTPUT=$(launchctl print "$SERVICE_TARGET" 2>&1); then
|
|
54
|
+
echo "status: not loaded"
|
|
55
|
+
echo "service: $SERVICE_TARGET"
|
|
56
|
+
echo "plist: $PLIST_PATH"
|
|
57
|
+
[ "$DETAIL" = "--verbose" ] && printf '%s\\n' "$STATUS_OUTPUT"
|
|
58
|
+
exit 1
|
|
59
|
+
fi
|
|
60
|
+
if [ "$DETAIL" = "--verbose" ]; then
|
|
61
|
+
printf '%s\\n' "$STATUS_OUTPUT"
|
|
62
|
+
else
|
|
63
|
+
echo "status: loaded"
|
|
64
|
+
if printf '%s\\n' "$STATUS_OUTPUT" | grep -q "state = running"; then
|
|
65
|
+
echo "process: running"
|
|
66
|
+
fi
|
|
67
|
+
echo "service: $SERVICE_TARGET"
|
|
68
|
+
echo "plist: $PLIST_PATH"
|
|
69
|
+
fi
|
|
70
|
+
exit 0
|
|
54
71
|
;;
|
|
55
72
|
*)
|
|
56
|
-
echo "usage: $0 [start|restart|stop|status]" >&2
|
|
73
|
+
echo "usage: $0 [start|restart|stop|status [--verbose]]" >&2
|
|
57
74
|
exit 2
|
|
58
75
|
;;
|
|
59
76
|
esac
|
|
@@ -90,6 +107,7 @@ SESSION_NAME=${shellQuote(sessionName)}
|
|
|
90
107
|
WORKDIR=${shellQuote(workDir)}
|
|
91
108
|
AGENT_CMD=${shellQuote(buildTmuxJavaCommand(javaArgs))}
|
|
92
109
|
ACTION=\${1:-start}
|
|
110
|
+
DETAIL=\${2:-}
|
|
93
111
|
|
|
94
112
|
cd "$WORKDIR"
|
|
95
113
|
|
|
@@ -104,11 +122,24 @@ case "$ACTION" in
|
|
|
104
122
|
exit 0
|
|
105
123
|
;;
|
|
106
124
|
status)
|
|
107
|
-
tmux has-session -t "$SESSION_NAME"
|
|
108
|
-
|
|
125
|
+
if ! tmux has-session -t "$SESSION_NAME" 2>/dev/null; then
|
|
126
|
+
echo "status: stopped"
|
|
127
|
+
echo "session: $SESSION_NAME"
|
|
128
|
+
echo "workdir: $WORKDIR"
|
|
129
|
+
exit 1
|
|
130
|
+
fi
|
|
131
|
+
if [ "$DETAIL" = "--verbose" ]; then
|
|
132
|
+
tmux list-sessions -F "session=#{session_name} windows=#{session_windows} attached=#{session_attached}" | grep "^session=$SESSION_NAME "
|
|
133
|
+
tmux list-panes -t "$SESSION_NAME" -F "pane=#{pane_index} pid=#{pane_pid} command=#{pane_current_command}"
|
|
134
|
+
else
|
|
135
|
+
echo "status: running"
|
|
136
|
+
echo "session: $SESSION_NAME"
|
|
137
|
+
echo "workdir: $WORKDIR"
|
|
138
|
+
fi
|
|
139
|
+
exit 0
|
|
109
140
|
;;
|
|
110
141
|
*)
|
|
111
|
-
echo "usage: $0 [start|restart|stop|status]" >&2
|
|
142
|
+
echo "usage: $0 [start|restart|stop|status [--verbose]]" >&2
|
|
112
143
|
exit 2
|
|
113
144
|
;;
|
|
114
145
|
esac
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"macScript.js","sourceRoot":"","sources":["../../../src/core/generator/macScript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEpD,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED,SAAS,sBAAsB,CAAC,QAAkB;IAChD,OAAO,QAAQ,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACtE,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa;IACzC,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC;AACpD,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAkB;IAC9C,OAAO,QAAQ,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,OAAe,EACf,QAAkB,EAClB,cAGC;IAED,MAAM,cAAc,GAAG,cAAc;QACnC,CAAC,CAAC;iBACW,UAAU,CAAC,OAAO,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;aAC5E,UAAU,CAAC,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC;yCACd,cAAc,CAAC,WAAW
|
|
1
|
+
{"version":3,"file":"macScript.js","sourceRoot":"","sources":["../../../src/core/generator/macScript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEpD,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED,SAAS,sBAAsB,CAAC,QAAkB;IAChD,OAAO,QAAQ,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACtE,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa;IACzC,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC;AACpD,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAkB;IAC9C,OAAO,QAAQ,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,OAAe,EACf,QAAkB,EAClB,cAGC;IAED,MAAM,cAAc,GAAG,cAAc;QACnC,CAAC,CAAC;iBACW,UAAU,CAAC,OAAO,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;aAC5E,UAAU,CAAC,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC;yCACd,cAAc,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDlE;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;;;;;;;;;EASP,cAAc;;KAEX,UAAU,CAAC,OAAO,CAAC;OACjB,sBAAsB,CAAC,QAAQ,CAAC;CACtC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,QAAkB,EAClB,WAAW,GAAG,qBAAqB;IAEnC,OAAO;;;;;;;;;;eAUM,UAAU,CAAC,WAAW,CAAC;UAC5B,UAAU,CAAC,OAAO,CAAC;YACjB,UAAU,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CrD,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB,EAChB,OAAe,EACf,QAAkB,EAClB,OAOC;IAED,MAAM,OAAO,GACX,OAAO,EAAE,IAAI,KAAK,QAAQ;QACxB,CAAC,CAAC,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC;QACjE,CAAC,CAAC,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACrE,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC/B,CAAC"}
|