diff --git a/bin/yakcloud b/bin/yakcloud index cf23083..f52df99 100755 --- a/bin/yakcloud +++ b/bin/yakcloud @@ -16,7 +16,7 @@ set -uo pipefail # -e 미사용: 'test && action' 관용구가 값 없을 때 REPO="${YAKCLOUD_STARTER_REPO:-https://gitea.yakenator.io/yakenator/yakcloud-starter}" BRANCH="${YAKCLOUD_STARTER_BRANCH:-main}" -VERSION="0.21.0" +VERSION="0.21.1" # 로컬 개발 클러스터(kind) — 개발 후 운영까지 '직선 배포'의 dev 구간. DEV_CTX="${YAK_DEV_CONTEXT:-kind-yak-dev}" DEV_CLUSTER="${YAK_DEV_CLUSTER:-yak-dev}" @@ -570,6 +570,21 @@ _dev_deregister() { cmd_dev() { local sub="${1:-}"; [ "$#" -gt 0 ] && shift + # --name 미지정 + 프로젝트 폴더면 매니페스트 environments.dev 값을 강제 주입(입력값이 클러스터·등록명에 반영). + # → 'yakcloud dev up/deploy' 를 이름 없이 실행해도 항상 environments.dev.cluster 로 뜬다(호스트명만 등록되던 문제 차단). + case " $* " in + *" --name"*|*" --cluster"*) : ;; # 명시 지정이 있으면 존중 + *) + if [ -f yakcloud.yaml ]; then + local _mn _mp; _mn="$(_manifest_env dev cluster 2>/dev/null)"; _mp="$(_manifest_env dev port 2>/dev/null)" + if [ -n "$_mn" ]; then + local _inj=(--name "$_mn") + { [ -n "$_mp" ] && [ "$_mp" != "80" ]; } && _inj+=(--port "$_mp") + set -- "${_inj[@]}" "$@" + fi + fi + ;; + esac _dev_resolve "$@" # --name/--port 파싱 → DEV_NAME/DEV_CLUSTER/DEV_CTX/DEV_HTTP_PORT/DEV_ARGS _podman_auth_fix "$(_dev_runtime)" # podman + Docker Desktop credHelpers(https://) 충돌 자동 우회(공개 이미지) case "$sub" in