프로젝트 소개
DeployBar는 Swift로 구축된 네이티브 macOS 메뉴 바 애플리케이션으로, 여러 클라우드 제공업체의 배포 모니터링을 하나의 간결한 인터페이스로 통합합니다. 여러 브라우저 탭과 대시보드를 관리하는 대신, 사용자는 하나의 메뉴 바 상태 표시기, 제공업체에 구애받지 않는 배포 스냅샷을 보여주는 SwiftUI 팝오버, 그리고 배포가 시작, 성공, 실패, 취소 또는 제거될 때 기본 macOS 알림을 받을 수 있습니다.
이 앱은 설계상 로컬 우선(local-first)입니다. DeployBar 백엔드 서비스도, 호스팅된 자격 증명 동기화도, Electron 셸도 없습니다. 제공업체 API 토큰은 서비스 식별자 com.deploybar.tokens로 macOS 키체인에만 저장되며, 비밀 정보가 아닌 설정은 ~/Library/Application Support/DeployBar/settings.json에 JSON으로 저장됩니다. 이 프로젝트는 MIT 라이선스로 배포되며 서명되고 공증된 Homebrew Cask로 배포됩니다.
지원되는 제공업체는 Vercel(REST API), Railway(GraphQL API), Netlify(REST API), Render(REST API), Cloudflare Pages(API v4), Cloudflare Workers(Builds 기록이 있는 API v4), DigitalOcean App Platform(Apps API), Heroku(Platform API), Fly.io(GraphQL API), GitHub Deployments(REST API), GitLab Deployments(REST API)입니다. 각 제공업체는 자체 배포 상태를 대기 중(queued), 빌딩(building), 준비됨(ready), 실패(failed), 취소됨(canceled), 제거됨(removed) 상태를 포함하는 통합 상태 모델로 매핑합니다. 이 앱은 설정에서 자동 리소스 검색, 모니터링 대상 구성, 오래된 스냅샷 유지, 문제 발생 시 백오프(issue backoff), 배포 진행 중 더 빠른 폴링을 포함한 새로고침 일정을 지원합니다.
코드베이스는 macOS 13+를 대상으로 하며 Swift 6, Swift Package Manager, 팝오버 및 설정 화면용 SwiftUI, 메뉴 바 통합용 AppKit NSStatusItem을 사용합니다. 릴리스 빌드에는 GitHub Releases를 통한 Sparkle 앱 업데이트가 포함됩니다. 이 프로젝트에는 상태 매핑, 응답 파싱, 제공업체 요청, 검색, redaction(민감 정보 처리), 모니터링 대상 매칭, 새로고침 동작에 대한 테스트가 포함되어 있습니다. 향후 계획으로는 더 깊은 제공업체 진단, 선택적 실패 로그 테일링, 계정 및 리소스 검색 개선이 있습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.