You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Node.js v20后Github Actions执行失败求助

问题

为使用Supabase Edge Functions的仓库创建GitHub Workflow时,遇到以下错误:

Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-node@v3.

即使在Workflow中指定了Node.js 20.x版本,该错误仍未解决。当前的Workflow文件内容如下:

# .github/workflows/deploy-supabase-functions.yml
name: Deploy Supabase Functions

on:
  push:
    branches:
      - main
  workflow_dispatch:

jobs:
  deploy:
    runs-on: ubuntu-latest

    env:
      SUPABASE_ACCESS_TOKEN: ${{ secrets.SUPABASE_ACCESS_TOKEN }}
      PROJECT_ID: ***

    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js 20.x
        uses: actions/setup-node@v3
        with:
          node-version: 20.x

      - uses: supabase/setup-cli@v1
        with:
          version: latest

      - run: supabase functions deploy --project-ref ***
解决方案

错误核心原因是你使用的actions/checkout@v3和actions/setup-node@v3这两个Action本身基于Node.js 16开发,GitHub已废弃Node.js 16环境的Action。你指定的node-version: 20.x仅设置后续步骤运行代码的Node版本,不会改变这两个Action自身的运行环境。

只需将这两个Action的版本升级到支持Node.js 20的最新版本即可解决问题,修改后的Workflow文件如下:

# .github/workflows/deploy-supabase-functions.yml
name: Deploy Supabase Functions

on:
  push:
    branches:
      - main
  workflow_dispatch:

jobs:
  deploy:
    runs-on: ubuntu-latest

    env:
      SUPABASE_ACCESS_TOKEN: ${{ secrets.SUPABASE_ACCESS_TOKEN }}
      PROJECT_ID: ***

    steps:
      - uses: actions/checkout@v4  # 升级到v4版本
      - name: Use Node.js 20.x
        uses: actions/setup-node@v4  # 升级到v4版本
        with:
          node-version: 20.x

      - uses: supabase/setup-cli@v1
        with:
          version: latest

      - run: supabase functions deploy --project-ref ***

内容的提问来源于stack exchange,提问作者Doolan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 04:20:01