From 4b89a498f987ad7b2f90cff77e14bbaee07f9104 Mon Sep 17 00:00:00 2001 From: jung-geun Date: Sat, 9 May 2026 15:44:13 +0900 Subject: [PATCH] =?UTF-8?q?ci:=20release.yml=20=EC=9E=AC=EC=9E=91=EC=84=B1?= =?UTF-8?q?=20+=20publish.yml=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit release.yml: Node 매트릭스 제거, Node 20.x 단일, actions v3→v4 업그레이드. deprecated upload-release-asset@v1 → softprops/action-gh-release@v2. 단일 패키지 npm ci && npm run build 로 통합. publish.yml: workflow_dispatch 수동 트리거 npm publish 추가. Co-Authored-By: Claude Opus 4.7 --- .github/workflows/publish.yml | 25 ++++++++++++++++ .github/workflows/release.yml | 56 ++++++++--------------------------- 2 files changed, 37 insertions(+), 44 deletions(-) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..01eebd2 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,25 @@ +name: Publish to npm + +on: + workflow_dispatch: + +jobs: + publish: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20.x' + registry-url: 'https://registry.npmjs.org' + + - name: Install dependencies + run: npm ci + + - name: Publish + run: npm publish --access public + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d270f54..a128ea8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,55 +8,23 @@ jobs: build-and-release: runs-on: macos-latest - strategy: - matrix: - node-version: [18.x, 20.x, 22.x] - # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ - steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Setup Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 + with: + node-version: '20.x' - - name: Install dependencies and build nfd2nfc - run: | - cd nfd2nfc - npm install - npm run build + - name: Install dependencies + run: npm ci - - name: Install dependencies and build MACOS-APP - run: | - cd MACOS-APP - npm install - npm run build + - name: Build + run: npm run build - - name: Upload NFD2NFC executable - uses: actions/upload-release-asset@v1 + - name: Upload DMG assets + uses: softprops/action-gh-release@v2 + with: + files: dist/*.dmg env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ github.event.release.upload_url }} - asset_path: ./nfd2nfc/dist/NFD2NFC-$(uname -s).zip - asset_name: NFD2NFC-$(uname -s).zip - asset_content_type: application/zip - - - name: Upload MacOS .app - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ github.event.release.upload_url }} - asset_path: ./MACOS-APP/dist/*.app.zip - asset_name: MacApp.zip - asset_content_type: application/zip - - - name: Upload MacOS .dmg - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ github.event.release.upload_url }} - asset_path: ./MACOS-APP/dist/*.dmg - asset_name: MacApp.dmg - asset_content_type: application/octet-stream