handler

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 30, 2026 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package handler 는 백업/복구 HTTP 어댑터다.

설계: docs/11_기능설계/Nullus_백업복구_설계.md §7.2 (nullus-plan#75)

Index

Constants

View Source
const SetConfirmPhrase = "all"

SetConfirmPhrase 는 세트 백업의 확인 문구다.

단독 백업은 멈추는 네임스페이스를 재입력받지만, 세트는 조직의 **모든** 스택을 멈추고 어느 스택인지는 서버가 정한다 — 그래서 "전부" 를 뜻하는 고정 문구를 받는다. 스택이 하나도 없는 조직이면 멈추는 것이 없지만, 그 판단은 유스케이스가 스택을 읽은 뒤에야 가능하므로 세트는 항상 확인을 요구한다.

Variables

This section is empty.

Functions

This section is empty.

Types

type BackupHandler

type BackupHandler struct {
	// contains filtered or unexported fields
}

func NewBackupHandler

func NewBackupHandler(f UseCaseFactory, v *usecase.VerifyUseCase, repo backupReader, defaultNS string) *BackupHandler

func (*BackupHandler) CreateBackup

func (h *BackupHandler) CreateBackup(c echo.Context) error

func (*BackupHandler) CreateBackupSet

func (h *BackupHandler) CreateBackupSet(c echo.Context) error

CreateBackupSet 은 플랫폼 + 조직의 모든 설치 완료 스택을 한 세트로 뜬다. 동기다 — 단독 백업과 같다.

func (*BackupHandler) CreateRestore

func (h *BackupHandler) CreateRestore(c echo.Context) error

func (*BackupHandler) CreateRestoreSet

func (h *BackupHandler) CreateRestoreSet(c echo.Context) error

CreateRestoreSet 은 세트를 플랫폼 → 스택 순서로 되돌린다. 멤버 하나라도 실패하면 409 다 — 단독 복구가 실패한 복구 기록을 409 로 돌려주는 것과 같다.

func (*BackupHandler) GetBackup

func (h *BackupHandler) GetBackup(c echo.Context) error

func (*BackupHandler) GetBackupSet

func (h *BackupHandler) GetBackupSet(c echo.Context) error

GetBackupSet 은 세트의 실행들과 파생 상태(domain.SetStatus)를 준다.

func (*BackupHandler) GetRestore

func (h *BackupHandler) GetRestore(c echo.Context) error

func (*BackupHandler) ListBackups

func (h *BackupHandler) ListBackups(c echo.Context) error

func (*BackupHandler) RegisterRoutes

func (h *BackupHandler) RegisterRoutes(g *echo.Group)

func (*BackupHandler) VerifyBackup

func (h *BackupHandler) VerifyBackup(c echo.Context) error

VerifyBackup 은 복원 없이 산출물이 열리는지만 본다.

복구 리허설을 상시로 돌릴 수 없으므로, "백업은 되는데 복원이 안 됐다" 에 대한 최소한의 상시 방어선이다.

func (*BackupHandler) WithOrganizationChecker

func (h *BackupHandler) WithOrganizationChecker(orgs port.OrganizationChecker) *BackupHandler

WithOrganizationChecker 는 X-Org-ID 헤더의 조직 존재 확인을 배선한다.

없는 조직으로 만든 백업은 어떤 화면에도 보이지 않는다 — 목록은 로그인 사용자의 조직으로만 거른다. 문서의 유령 조직(00000000-…-0001)으로 실제로 그랬다.

type UseCaseFactory

type UseCaseFactory interface {
	Backup(ctx context.Context, stackID string) (*usecase.BackupUseCase, error)
	Restore(ctx context.Context, stackID string) (*usecase.RestoreUseCase, error)
	// BackupSet·RestoreSet 은 플랫폼 + 조직의 모든 스택을 한 세트로 뜨고 되돌린다(설계 §6.7).
	BackupSet(ctx context.Context) (*usecase.BackupSetUseCase, error)
	RestoreSet(ctx context.Context) (*usecase.RestoreSetUseCase, error)
}

UseCaseFactory 는 스택별 유스케이스를 만든다.

백업 대상 스택은 등록된 워크로드 클러스터에 있으므로, 어댑터를 기동 시점에 고정할 수 없다. 요청이 온 뒤에야 어느 클러스터인지 알 수 있다.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL