alpacon work-session update
기존 작업 세션의 필드를 업데이트합니다.
전달한 플래그만 변경되고 나머지는 그대로 유지됩니다. 서버가 어떤 필드를 허용하는지는 세션 상태에 따라 다릅니다(예: 승인 대기 세션에서는 --starts-at/--expires-at, 승인/활성 세션에서는 --sudo). CLI는 전달받은 값을 그대로 전송하며, 현재 상태에서 수정할 수 없는 필드라면 서버의 검증 오류를 그대로 보여줍니다(--sudo는 요청 전에 로컬에서도 검증합니다).
--scope와 --server는 목록 전체를 교체합니다(추가가 아닙니다). --sudo는 세션의 기존 정책에 MFA 우회 sudo 명령 패턴을 추가합니다. exec의 sudo가 거부되었을 때의 복구 경로입니다. 추가한 정책은 적용 전에 승인이 필요할 수 있습니다.
SESSION_ID를 생략하면 ALPACON_WORK_SESSION 환경 변수, 그다음 워크스페이스의 활성 세션(alpacon work-session use로 지정) 순으로 대상 세션이 결정됩니다.
alpacon work-session update [SESSION_ID] [flags]
옵션 (Options)
--description string 새 세션 설명 (마크다운 지원)
--expires-at string 새 절대 만료 시각 (RFC3339, 승인 대기 세션 전용, 승인/활성 세션은 'extend' 명령 사용)
-h, --help update 명령어에 대한 도움말 출력
--scope strings 세션 기능(scope) 전체 교체. 유효 값: command, editor, sudo, tunnel, webftp, websh (반복 가능, 쉼표로 구분한 값도 허용, 목록 전체를 교체)
--server strings 대상 서버를 이름으로 전체 교체 (반복 가능, 쉼표로 구분한 값도 허용, 목록 전체를 교체)
--starts-at string 새 예약 시작 시각 (RFC3339, 승인 대기 세션 전용)
--sudo stringArray MFA 우회 정책으로 추가할 sudo 명령 패턴 (반복 가능, 각 값은 쉼표로 구분한 패턴 목록으로 하나의 정책을 구성, 와일드카드 허용)
--sudo-reason string --sudo로 추가한 sudo 정책에 적용할 사유
--title string 새 세션 제목
예제
제목과 설명 업데이트:
alpacon work-session update ses-abc123 --title "deploy v2" --description "rollout"
대상 서버 전체 교체:
alpacon work-session update ses-abc123 --server web-01,db-01
기능(scope) 전체 교체:
alpacon work-session update ses-abc123 --scope command,websh
승인 대기 세션의 일정 변경:
alpacon work-session update ses-abc123 --starts-at 2027-01-15T10:00:00Z --expires-at 2027-01-15T12:00:00Z
특정 세션에 sudo 명령 패턴 추가:
alpacon work-session update ses-abc123 --sudo "systemctl restart nginx"
현재 유효한 세션에 패턴 추가:
alpacon work-session update --sudo "tail -f /var/log/nginx/*.log"