如何在 github 操作上的另一个存储库中将 node.js github 存储库作为服务运行

问题描述

所以我有一个项目需要一个“假”的API来对用户场景做一些功能测试;所以我的想法是创建一个简单的小 node.js 项目,并根据几个端点返回一些虚拟的 json 数据来测试我的应用程序的几个用例。

我有一个包含这个虚假 API 的单独存储库,我想知道我应该如何将它添加到我的 github 操作工作流程中?

解决方法

您可以使用 actions/checkout@v2 将另一个存储库拉入您的工作器中。

请看下面的例子:

name: PullExternalRepo

on: workflow_dispatch

jobs:
  PullRepo:
    runs-on: ubuntu-latest
      - name: Install Node
        uses: actions/setup-node@v2-beta
        with:
          node-version: '12'
      - name: Install external repo
        uses: actions/checkout@v2
        with:
          repository: your_org/repo_name
          path: './place/to/clone/repo/into'
      - name: Install deps and run
        run: |
          cd ./place/to/clone/repo/into
          npm install
          npm start

添加了关于拉取特定分支的说明:

如果您尝试拉取非默认分支,则需要将 ref 属性添加到结帐操作中,如下例所示。

...
      - name: Install external repo
        uses: actions/checkout@v2
        with:
          repository: your_org/repo_name
          path: './place/to/clone/repo/into'
          ref: 'some-other-branch'
...