Skip to content

Test Report Install SW

MZC-CSC edited this page Oct 12, 2026 · 2 revisions

Test Report — Infra Workloads Install SW (mc-application-manager 연동)

작성: 2026-09-29 · 대상 변경: PR #298 · 검증 환경: dev (<DEV_HOST>, mc-web-console PR #298 브랜치 배포 + mc-application-manager 0.6.3)

← Test Results

이 페이지는 수기 작성 보고서다. 자동 생성 페이지(Test Results / Test Scenarios)에는 아직 TC로 등록되지 않았다.

1. 기능 요약

Infra Workloads 상세의 Install SW 버튼이 SW Catalogs 화면으로 이동하던 방식에서, 선택한 대상을 유지한 채 mc-application-manager 설치 화면을 모달 iframe으로 여는 방식으로 바뀌었다.

위치 버튼 전달 대상 활성 조건
Server 탭 › Node Info Install SW Infra + NodeGroup + Node 해당 Node가 Running
Group 탭 › Node Info Install SW Infra + NodeGroup + Node 해당 Node가 Running
Group 탭 › Node List / Status Install SW (신규) Infra + NodeGroup (NodeGroup 전체) 소속 Node 중 Running 1대 이상

연동 규약:

  • iframe URL: {AM}/web/softwareCatalog/install?targetType=VM&mciId={infra}&nodeGroupId={nodegroup}[&vmId={node}]&requestId={id} — namespace·access token은 URL에 넣지 않는다
  • AM이 IFRAME_READY를 보낸 뒤에만 token·workspace·project(ns_id)를 AM origin으로 postMessage 전달
  • 수신 메시지는 source·origin·type(MCMP_AM_INSTALL_EVENT)·requestId를 모두 검증
  • 결과 처리: DEPLOY_SUCCEEDED → 성공 토스트·모달 닫힘·Infra 목록 갱신 / DEPLOY_FAILED·FORM_ERROR·CONFIGURATION_ERROR → 에러 토스트·모달 유지 / CANCELLED → 모달 닫힘
  • 비활성 버튼은 hover 시 사유(예: current: Suspended)를 보이고, 클릭하면 사유 토스트만 표시

dev AM은 CSP frame-ancestors로 콘솔 도메인(<DEV_HOST>, :3001)만 iframe을 허용한다. localhost 등 다른 origin의 콘솔에서는 설치 화면이 브라우저에서 차단된다.

2. 결과 요약

구분 건수 결과
화면 동작 (AM 설치 화면 mock) 12 ✅ 12 PASS
실제 AM 연동 (dev AM 0.6.3) 5 ✅ 5 PASS
dev 배포본 브라우저 검증 3 ✅ 3 PASS
실제 SW 설치 (Nginx) 1 ✅ PASS (09-29)

3. dev 배포본 브라우저 검증 (mock 없음)

절차: 로그인 → workspace ws01 / project default 선택 → Infra Workloads → Infra 선택 → Node 선택 → Install SW

TC 내용 결과
D1 Running Node → Install SW 활성 → 모달에 AM 설치 화면 로드, IFRAME_READY → CONTEXT_READY → FORM_READY, 대상(Infra / NodeGroup / VM)·스코프(ws01 / default) 고정 표시, AM Cancel → CANCELLED → 모달 닫힘 ✅ PASS(09-29)
D2 Suspended Node → Install SW 비활성(current: Suspended), 클릭 시 사유 토스트·팝업 없음 ✅ PASS(09-29)
D3 NodeGroup(Running 1대 이상) → Group 탭 Install SW → vmId 없이 전달, AM에 Infra / NodeGroup 대상 고정 ✅ PASS(09-29)

4. 실제 SW 설치 — Nginx

항목 내용
대상 UI로 생성한 AWS ap-northeast-2 t2.small 1대 (Ubuntu 22.04, public IP 보유), workspace ws01 / project default
절차 Install SW → [Nginx] latest, Port 80, Network Exposure = Do not change Security Group → Spec Check → Deploy
AM 처리 deployment submission QUEUED → RUNNING → SUCCEEDED("Installation completed.") → 콘솔 모달 자동 닫힘
VM 확인 nginx:latest 컨테이너 기동(0.0.0.0:80->80/tcp), VM 내부 curl localhost:80 = HTTP 200 (약 1.9분)
정리 테스트 Infra·인스턴스·SG·SSH Key 삭제
결과 ✅ PASS(09-29)

5. 실패 사례와 원인

사례 결과 원인
CSP에서 Import한 Running Node(공인 IP 없음)에 Nginx 설치 ❌ DEPLOY_FAILED — 콘솔은 에러 토스트·모달 유지로 정상 처리 AM 로그: Failed to prepare Docker through SSH. 같은 노드에 cb-tumblebug 원격 명령 실행 시 no usable bastion node available for VM — 공인 IP도, 같은 Infra의 bastion 노드도 없어 SSH 경로가 없음. 콘솔·AM 결함 아님

SW 설치에는 cb-tumblebug이 SSH로 접속할 수 있는 노드(공인 IP 또는 bastion 지정)가 필요하다.

6. 확인 필요 / 미검증

  • t2.small(1 vCPU / 2 GiB)에서 Nginx Spec Check가 "권장 사양 미달" 확인창을 띄운다 (계속 진행 시 설치 정상) — AM 판정 기준 확인 필요
  • Network Exposure = "Add restricted direct access"(Security Group 규칙 추가)와 외부 publicIP:80 접근 경로는 미검증
  • K8s Workloads(targetType=K8S) 연동은 이번 범위 밖

Clone this wiki locally