返回

一网打尽!GitHub Actions 携手发布 npm 包和版本

前端

前言

在现代软件开发中,npm 包是不可或缺的工具。它可以帮助我们快速地引入和管理各种依赖库,从而提高开发效率。然而,当我们需要发布 npm 包或更新版本时,通常需要手动执行一系列复杂的操作。这不仅耗时耗力,而且容易出错。

为了解决这个问题,我们可以借助 GitHub Actions 来实现自动化发布。GitHub Actions 是一个强大的持续集成和持续交付平台,可以帮助我们自动执行各种任务,包括构建、测试、部署和发布。

利用 GitHub Actions 发布 npm 包

准备工作

在使用 GitHub Actions 发布 npm 包之前,我们需要做一些准备工作:

  1. 首先,我们需要创建一个 GitHub 仓库,并将其与我们的 npm 包关联起来。
  2. 其次,我们需要安装 GitHub Actions 的 CLI 工具。
  3. 最后,我们需要创建一个 GitHub Actions 工作流文件,用于定义发布 npm 包的步骤。

创建 GitHub Actions 工作流文件

GitHub Actions 工作流文件是一个 YAML 文件,用于定义工作流的步骤。我们可以使用以下命令来创建一个新的工作流文件:

gh workflow generate

这将创建一个名为 main.yml 的工作流文件。

main.yml 文件中,我们可以定义发布 npm 包的步骤。以下是一个示例工作流文件:

name: Publish npm package

on:
  push:
    branches:
      - main

jobs:
  publish:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Install dependencies
        run: npm install

      - name: Build package
        run: npm run build

      - name: Publish package
        run: npm publish

在这个工作流文件中,我们定义了一个名为 publish 的作业。这个作业会在每次将代码推送到 main 分支时自动触发。作业中包含三个步骤:

  1. 第一步是使用 actions/checkout@v2 操作来检出代码。
  2. 第二步是使用 npm install 命令来安装依赖库。
  3. 第三步是使用 npm publish 命令来发布 npm 包。

运行工作流

创建好工作流文件后,我们可以使用以下命令来运行它:

gh workflow run main.yml

这将触发工作流的执行。我们可以通过 GitHub Actions 的 web 界面来查看工作流的执行状态。

利用 GitHub Actions 发布 npm 版本

除了发布 npm 包之外,我们还可以使用 GitHub Actions 来发布 npm 版本。以下是一个示例工作流文件:

name: Publish npm version

on:
  release:
    types: [published]

jobs:
  publish:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Install dependencies
        run: npm install

      - name: Bump version
        run: npm version patch

      - name: Build package
        run: npm run build

      - name: Publish package
        run: npm publish

在这个工作流文件中,我们定义了一个名为 publish 的作业。这个作业会在每次发布新版本时自动触发。作业中包含五个步骤:

  1. 第一步是使用 actions/checkout@v2 操作来检出代码。
  2. 第二步是使用 npm install 命令来安装依赖库。
  3. 第三步是使用 npm version patch 命令来提高版本号。
  4. 第四步是使用 npm run build 命令来构建包。
  5. 第五步是使用 npm publish 命令来发布包。

运行工作流

创建好工作流文件后,我们可以使用以下命令来运行它:

gh workflow run main.yml

这将触发工作流的执行。我们可以通过 GitHub Actions 的 web 界面来查看工作流的执行状态。

总结

利用 GitHub Actions 自动发布 npm 包和版本可以帮助我们节省时间并避免人为错误,从而提高开发效率。本文介绍了如何使用 GitHub Actions 来实现自动化发布。