v0.1.55
v0.1.55 — Mac / Linux 인스톨러 자동 배포 (GitHub Actions multi-platform CI)
요청
- "mac과 리눅스 설치 파일도 자동으로 배포되도록 구현"
변경 파일
.github/workflows/release.yml(신규) —v*tag push 시 트리거. matrix 3 OS (windows-latest / macos-latest / ubuntu-latest) parallel 빌드.softprops/action-gh-release@v2로 모든 artifact 를 같은 release 에 attach.- 각 OS:
npm ci → npm run icons → npm run build → npx electron-builder --{platform} - 산출물: Windows
.exe + .blockmap + latest.yml, macOS.dmg + .zip + latest-mac.yml, Linux.AppImage + .deb + latest-linux.yml - 서명 비활성 (Apple Developer ID / Windows code sign 인증서 없을 때 unsigned 빌드 — CSC_LINK 등 secret 설정 시 자동 서명)
- 수동 트리거 (
workflow_dispatch) 도 지원 — Actions 탭에서 기존 tag 재빌드 가능 package.json— mac target"dmg"→["dmg", "zip"]— electron-updater 가 mac 자동 업데이트 시 zip 다운로드 필요.web/version.json—mac/mac-arm64/linux-appimage/linux-deb플랫폼별 정확한 URL 추가.web/index.html다운로드 섹션 ver-info — v0.1.29 → v0.1.54 (자동 fetch 위해).
electron-updater 자동 업데이트 지원
- Windows: 기존
latest.yml(이미 동작) - macOS:
latest-mac.yml신규 → mac 사용자도 zip 차이만 다운로드 + 적용 - Linux AppImage:
latest-linux.yml신규 → AppImage 자동 업데이트
알려진 제한
- macOS unsigned — 첫 실행 시 우클릭 → 열기 또는
xattr -d com.apple.quarantine필요. - Apple Developer ID / Microsoft Authenticode 서명은 secret 추가 시 자동.
검증
- workflow 는 다음 tag push (
v0.1.55) 시 첫 트리거. Windows 빌드는 로컬 보조 (npm run dist:win).
후속 fix (같은 v0.1.55)
- — 첫 tag push 시 3 OS 모두 실패. 원인 2건:
- 1. workflow
env:에CSC_LINK: ${{ secrets.CSC_LINK || '' }}패턴 — secret 미설정 시 빈 문자열""이 env 로 export 되고 electron-builder 가 빈 문자열을 file path 로 resolve 하려다not a file오류. →.github/workflows/release.yml에서 CSC/APPLE_* env block 전체 제거 (서명 도입 시 다시 추가). - 2. Linux
.deb빌드는author.email필수 —package.json의"author": "leehy"→{ "name": "leehy", "email": "[email protected]" }로 변경. - tag 삭제 후 fix commit 푸시 → v0.1.55 tag 재생성 → workflow 재실행.
📦 GitHub 릴리스 노트: v0.1.55