GitHub 작업을 사용하여 NPM에 패키지 게시

최근에 새로운 React 프로젝트를 시작할 때 항상 설정을 구성해야 하는 것에 지쳤기 때문에 React 프로젝트에서 사용하고 싶은 ESLint 설정으로 패키지를 만들었습니다. NPM 패키지 게시는 패키지 디렉토리에서 실행npm publish하기만 하면 됩니다(물론 이미 NPM 계정이 있고 터미널에서 인증을 받았다는 점을 고려하십시오). 하지만 새 릴리스를 만들 때마다 이 게시를 자동화하고 싶었습니다.

이를 위해 다음 GitHub Action을 사용했습니다.

# File: .github/workflows/npm-publish.yml

# This workflow will publish a package to NPM when a release is created
# For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages

name: Publish Package to npmjs

on:
  release:
    types: [created]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: 16
          registry-url: https://registry.npmjs.org/
      - run: npm publish
        env:
          NODE_AUTH_TOKEN: ${{secrets.NODE_AUTH_TOKEN}}


위의 YAML 파일(git 저장소의 .github/workflows/npm-publish.yml 디렉토리에 넣어야 함)을 읽으면 환경 변수NODE_AUTH_TOKEN가 정의되어 있어야 합니다. NPM의 제어판에서 새 자동화 액세스 토큰을 만듭니다.
  • NPM 계정에 액세스하고 "액세스 토큰"을 클릭합니다.
  • 새 액세스 토큰의 이름을 지정하고 "자동화"유형을 선택합니다.


  • GitHub 리포지토리로 이동하여 "Settings > Secrets > Actions > New repository secret"을 클릭하고 이름을 NODE_AUTH_TOKEN으로 지정하고 방금 NPM에서 받은 액세스 토큰을 붙여넣습니다:


  • 패키지의 새 릴리스를 만듭니다. 이렇게 하면 GitHub 작업이 트리거되고 NPM에 게시됩니다.

  • 좋은 웹페이지 즐겨찾기