Skip to content

feat: 문구 변경 (Infra, K8s), Infra 배포로직 고도화, 알림 개선. bug fix - #98

Merged
MZC-CSC merged 20 commits into
m-cmp:mainfrom
MZC-CSC:develop
Jul 24, 2026
Merged

feat: 문구 변경 (Infra, K8s), Infra 배포로직 고도화, 알림 개선. bug fix#98
MZC-CSC merged 20 commits into
m-cmp:mainfrom
MZC-CSC:develop

Conversation

@MZC-CSC

@MZC-CSC MZC-CSC commented Jul 24, 2026

Copy link
Copy Markdown
Member

Summary

  • feat: Infra Template Add NodeGroup — 생성 폼 프리필(추가) 매핑 (#222)
  • feat: MCI 배포 nodeGroups 매핑에 정식 필드 5개 추가 및 매핑 버그 수정 (#225)
  • feat: 편집 폼 template carry-through 필드 read-only 표시 및 Extend VM template Add NodeGroup 지원 (#229)
  • feat: template carry-through 필드 항상 표시 및 잠김 스타일 구분 (#230)
  • feat: Company Info 화면을 Company API로 전환 (#227)
  • fix: remote command localhost 하드코딩 제거 — getapihosts 기반 주소 해석 (#228)
  • fix: navbar 알림 폴링 정지 조건 추가 및 완료 토스트 반복 표시 제거 (#226)
  • fix: navbar 워크스페이스/프로젝트 셀렉터를 본인 소속 범위로 스코프 (#223)
  • fix: project 단건조회/수정/삭제 operationId legacy 경로 수정 (#224)

Dependencies

yh-noh and others added 20 commits July 16, 2026 15:00
Template 선택 모달에 [Deploy from Template]과 독립적인 [Add NodeGroup]
버튼을 추가한다. 클릭 시 선택한 template의 nodeGroups를 기존 SubGroup
목록에 append하고 편집(li 클릭) 후 기존 Deploy 경로로 배포할 수 있게 한다.

- expressDone_btn의 push+렌더 블록을 addServerConfigToList() 헬퍼로 추출
  (기존 Add SubGroup Done 동작 무변경)
- addTemplateToForm() 신규 — template nodeGroups를 express_form으로 매핑해
  기존 목록에 append, 완료 시 토스트 없이 모달만 닫음(li 추가가 시각적 확인)
- zone/nodeUserPassword/label/vNetTemplateId/sgTemplateId는 값이 있을 때만
  express_form에 carry-through(배포 payload 매핑 확장은 후속 작업)
Infra Template Add NodeGroup — 생성 폼 프리필(추가) 매핑
The top navbar workspace/project selector called
GET /api/workspaces/id/{workspaceId}/projects/list, which mc-iam-manager
is locking down to admin-only as part of a scope-check fix. Point
getProjectListByWorkspaceId at the new listUserProjectsByWorkspace
operation (GET /api/users/workspaces/id/{workspaceId}/projects/list),
which returns the same WorkspaceWithProjects shape but is scoped to
workspaces the logged-in user actually belongs to.

workspaces.js (admin workspace management screen) keeps using
getWorkspaceProjectsByWorkspaceId unchanged.
fix: navbar 워크스페이스/프로젝트 셀렉터를 본인 소속 범위로 스코프
Getprojectbyid/Updateprojectbyid/Deleteprojectbyid가 모두 Buffalo 시절
경로 /api/prj/project/id/{projectId}를 가리키고 있었는데, 이 경로는
현재 mc-iam-manager(Echo)에 존재하지 않아 항상 404가 났다.
실제 라우트는 /api/projects/id/{projectId} (swagger operationId
getProjectByID/updateProject/deleteProject)이므로 그에 맞게 수정.

프론트에서 아직 이 operationId들을 호출하는 코드는 없어 회귀 영향 없음.
fix: project 단건조회/수정/삭제 operationId legacy 경로 수정
- mciDynamic/mciDynamicReview nodeGroups 매핑에 zone, nodeUserPassword,
  label, vNetTemplateId, sgTemplateId 추가 (값 있을 때만 포함)
- mciDynamicReview의 vmUserPassword 필드가 서버 실제 필드명(nodeUserPassword)과
  불일치해 무시되던 죽은 코드 정정 — Review/Dynamic 매핑 대칭화
- 서버 구성 수정 모드에서 통째 교체를 merge로 보완 — 폼에 없는
  carry-through 필드(template 프리필 값) 보존
feat(mci): MCI 배포 nodeGroups 매핑에 정식 필드 5개 추가 및 매핑 버그 수정
- asyncRequestTracker: stopListRefresh 신설, 서버 목록 Handling 0개 +
  활성 GetRequest 타이머 없음이면 목록 인터벌 정지, fallback 모드에서도 정지
- track() 시 기존 ensureListRefresh 경로로 자동 재개
- asyncRequestNotify: 벨 드롭다운 open 시 refreshNow 1회 호출로
  폴링 중단 상태에서도 최신 목록 보장
- 토스트 원장(mcwc_async_toasted, sessionStorage) 도입 — terminal 토스트는
  실시간 전환 또는 최근 30초 내 완료 건만 requestId당 1회 표시
- pollOnce 직접 토스트와 목록 refresh 전환 토스트가 겹치던 완료 토스트
  이중 표시 해소 (maybeFinishToast 공통화)
- Handling progress 토스트는 track() 시점에만 표시 — 새로고침/페이지
  이동 후에는 배지·알림센터 목록으로만 노출
fix: navbar 알림 폴링 정지 조건 추가 및 완료 토스트 반복 표시 제거
Organization(그룹) API 대신 플랫폼 싱글톤 Company API로 조회·생성·수정을 연동한다.
[feat]: Company Info 화면을 Company API로 전환
…of localhost hardcoding

Remote command and file transfer handlers hardcoded mc-infra-manager as
http://localhost:1323/tumblebug, so commands never reached target VMs on
remote installations.

- front/actions/apihosts.go: framework-common resolver — MC_WEB_CONSOLE_{NAME}_URL
  env override first (for hosts outside the docker network), then getapihosts
  (60s TTL cache of the full service map), then legacy fallback with warning
- api apihosts.go: expose AuthType (basic/bearer) alongside BaseURL so callers
  apply the auth each framework requires; credentials stay hidden
- applyFrameworkAuth: basic -> MC_WEB_CONSOLE_{NAME}_USER/PASS env account,
  bearer -> forward the user's Authorization header, none -> no auth header
- cmd.go/upload.go use the resolver; INFRA_MANAGER_* globals removed from env.go
fix(front): remote command localhost 하드코딩 제거 — getapihosts 기반 주소 해석
feat(mci): 편집 폼 template carry-through 필드 read-only 표시 및 Extend VM template Add NodeGroup 지원
- renderCarryThroughSection: 값이 있는 필드만 렌더 → 5필드(zone/
  nodeUserPassword/label/vNetTemplateId/sgTemplateId) 항상 렌더,
  값 없으면 빈 read-only 입력 (섹션 숨김 분기 제거)
- password는 값이 있을 때만 마스킹 표시
- 섹션 제목의 '(read-only)' 문구 제거, carry-through-readonly 스타일
  (회색 채움·회색 텍스트)로 잠김 표현
feat: template carry-through 필드 항상 표시 및 잠김 스타일 구분
@MZC-CSC MZC-CSC changed the title feat: Infra Template Add NodeGroup·Extend VM, Company API 전환, 원격 Command 주소 해석, 알림·스코프 개선 feat: 문구 변경 (Infra, K8s), Infra 배포로직 고도화, 알림 개선. bug fix Jul 24, 2026
@MZC-CSC
MZC-CSC merged commit 7462a75 into m-cmp:main Jul 24, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants