Jupyter AI

8 GitHub Actions 自动化教程系列:只生成工作流文件结构之步骤的定义

📅 发表日期: 2024年8月15日

分类: ⚙️GitHub Actions 入门

👁️阅读: --

在前一篇中,我们深入探讨了工作流文件的组成部分,了解了如何构建一个有效的工作流。在本篇文章中,我们将重点关注工作流文件中的“步骤”定义,以及如何通过具体案例来说明这些步骤的使用。最后一篇中我们将讨论工作流的运行环境设置,这将帮助您更好地理解和应用这些步骤。

步骤定义的基本结构

在 GitHub Actions 中,步骤 是工作流的关键组成部分之一,它定义了在工作流中运行的具体操作。每个工作流由一或多个作业(Jobs)组成,而每个作业由一系列步骤构成。步骤的定义可以包括运行命令、调用操作(Actions)或执行自定义脚本。

步骤的基本语法

每个步骤都由三个核心部分组成:

  1. 名字(name):步骤的标识名称。
  2. 类型(either run or uses)
    • run:直接在运行环境中执行的命令或脚本。
    • uses:调用其他 GitHub Actions。
  3. 其他选项(可选):例如,使用 with 提供输入参数,使用 env 设置环境变量。

下面是一个步骤定义的基本示例:

steps:
  - name: Checkout Code
    uses: actions/checkout@v2

  - name: Run a script
    run: echo "Hello, World!"

详细案例:构建和测试 Node.js 应用

让我们通过一个具体的例子来说明如何定义步骤。假设您有一个 Node.js 应用程序,希望在每次提交时自动执行构建和测试。

工作流文件结构

下面是一个示例的 .github/workflows/nodejs.yml 文件,展示了工作流文件的整体结构:

name: Node.js CI

on:
  push:
    branches:
      - main

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Set up Node.js
        uses: actions/setup-node@v2
        with:
          node-version: '14'

      - name: Install dependencies
        run: npm install

      - name: Run tests
        run: npm test

步骤解析

  1. Checkout code:使用 actions/checkout@v2 行动将您的代码检出到运行环境。它是每个工作流的基础步骤,用于确保代码在操作之后是最新的。

  2. Set up Node.js:通过 actions/setup-node@v2 设置所需的 Node.js 版本。在这里,我们使用了 with 关键字来指定我们希望使用的 Node.js 版本。

  3. Install dependencies:使用 run: npm install 指令安装项目所需的依赖项。run 关键字表示我们直接在命令行中执行这个命令。

  4. Run tests:最后,我们运行测试了 npm test 命令,确保我们的代码在提交后仍旧是可以正常工作的。

小结

在本篇中,我们通过具体案例展示了如何在 GitHub Actions 工作流中定义步骤。我们了解了步骤的基本语法及其不同类型的用法,包括如何利用 runuses 来实现不同的操作。在下一篇文章中,我们将继续深入探讨工作流文件的运行环境设置,以便为我们的步骤提供合适的环境支持。

通过学习和实践这些内容,您将能够编写出功能强大的自动化工作流,以提升开发效率和代码质量。

⚙️GitHub Actions 入门 (滚动鼠标查看)