mirror of https://github.com/coder/coder.git
feat(scripts/develop.sh): add --debug flag to develop.sh (#12423)
Adds a `--debug` flag to `scripts/develop.sh` that will start coder under `dlv debug` instead. You can then use e.g. the following launch snippet to connect dlv: ``` { "name": "Delve Remote", "type": "go", "request": "attach", "mode": "remote", "port": 12345, } ``` You can also run invididual CLI commands under dlv e.g. ``` debug=1 scripts/coder-dev.sh list ``` Also sets CGO_ENABLED=0 in develop.sh by default.
This commit is contained in:
parent
8585863d0e
commit
61db293b33
|
@ -10,6 +10,7 @@ source "${SCRIPT_DIR}/lib.sh"
|
|||
|
||||
GOOS="$(go env GOOS)"
|
||||
GOARCH="$(go env GOARCH)"
|
||||
DEBUG_DELVE="${DEBUG_DELVE:-0}"
|
||||
BINARY_TYPE=coder-slim
|
||||
if [[ ${1:-} == server ]]; then
|
||||
BINARY_TYPE=coder
|
||||
|
@ -55,4 +56,10 @@ coder)
|
|||
;;
|
||||
esac
|
||||
|
||||
exec "${CODER_DEV_BIN}" --global-config "${CODER_DEV_DIR}" "$@"
|
||||
runcmd=("${CODER_DEV_BIN}")
|
||||
if [[ "${DEBUG_DELVE}" == 1 ]]; then
|
||||
set -x
|
||||
runcmd=(dlv debug --headless --continue --listen 127.0.0.1:12345 --accept-multiclient ./cmd/coder --)
|
||||
fi
|
||||
|
||||
CGO_ENABLED=0 exec "${runcmd[@]}" --global-config "${CODER_DEV_DIR}" "$@"
|
||||
|
|
|
@ -14,11 +14,12 @@ source "${SCRIPT_DIR}/lib.sh"
|
|||
set -euo pipefail
|
||||
|
||||
CODER_DEV_ACCESS_URL="${CODER_DEV_ACCESS_URL:-http://127.0.0.1:3000}"
|
||||
debug=0
|
||||
DEFAULT_PASSWORD="SomeSecurePassword!"
|
||||
password="${CODER_DEV_ADMIN_PASSWORD:-${DEFAULT_PASSWORD}}"
|
||||
use_proxy=0
|
||||
|
||||
args="$(getopt -o "" -l access-url:,use-proxy,agpl,password: -- "$@")"
|
||||
args="$(getopt -o "" -l access-url:,use-proxy,agpl,debug,password: -- "$@")"
|
||||
eval set -- "$args"
|
||||
while true; do
|
||||
case "$1" in
|
||||
|
@ -38,6 +39,10 @@ while true; do
|
|||
use_proxy=1
|
||||
shift
|
||||
;;
|
||||
--debug)
|
||||
debug=1
|
||||
shift
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
|
@ -136,7 +141,7 @@ fatal() {
|
|||
trap 'fatal "Script encountered an error"' ERR
|
||||
|
||||
cdroot
|
||||
start_cmd API "" "${CODER_DEV_SHIM}" server --http-address 0.0.0.0:3000 --swagger-enable --access-url "${CODER_DEV_ACCESS_URL}" --dangerous-allow-cors-requests=true "$@"
|
||||
DEBUG_DELVE="${debug}" start_cmd API "" "${CODER_DEV_SHIM}" server --http-address 0.0.0.0:3000 --swagger-enable --access-url "${CODER_DEV_ACCESS_URL}" --dangerous-allow-cors-requests=true "$@"
|
||||
|
||||
echo '== Waiting for Coder to become ready'
|
||||
# Start the timeout in the background so interrupting this script
|
||||
|
|
Loading…
Reference in New Issue