Skip to content

ReadableStream is not defined #12888

@zafri-yaqeeninstitute

Description

@zafri-yaqeeninstitute

Issue description

I've been using github action to deploy my serverless projects.

I keep getting ReferenceError: ReadableStream is not defined.

Here's a snippet of the error log that happens on github action:

Running "serverless" from node_modules
Environment: linux, node 16.20.2, framework 3.39.0 (local) 3.39.0v (global), plugin 7.2.3, SDK 4.5.1
Docs:        docs.serverless.com
Support:     forum.serverless.com
Bugs:        github.com/serverless/serverless/issues

Error:
ReferenceError: ReadableStream is not defined

I've deduced that it's probably caused by node 16.20.2. However my github action specifically use node18, I'm not sure why it's using node16 though.

Here's a snippet of my github-action.yml

...
  deploy:
    name: deploy-dev
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js 18.x
        uses: actions/setup-node@v3
        with:
          node-version-file: '.nvmrc' # resolves to lts/hydrogen

      - run: yarn install --immutable

      - name: Serverless deploy
        uses: serverless/github-action@v3.1
        with:
          args: deploy --stage dev --verbose
        env:
          ...

Context

This is my serverless.ts

import type { AWS } from '@serverless/typescript';
import { provider } from './serverless/provider';
import { functions } from './serverless/functions';
import { resources } from './serverless/resources';
import { outputs } from './serverless/output';

const serverlessConfiguration: AWS = {
  app: 'xx',
  service: 'xx',
  frameworkVersion: '3',
  plugins: ['serverless-esbuild'],
  useDotenv: true,
  provider,
  resources,
  functions,
  outputs,
  package: { individually: true },
  custom: {
    namespace: '${self:app}-${self:service}-${self:provider.stage}',
    esbuild: {
      bundle: true,
      minify: false,
      sourcemap: true,
      exclude: ['aws-sdk'],
      target: 'node18',
      define: { 'require.resolve': undefined },
      platform: 'node',
      concurrency: 10,
      plugins: './esbuild.config.js',
    },
  },
};

module.exports = serverlessConfiguration;

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions