Проблема с fs-extra при развертывании python с использованием serverless

#node.js #aws-lambda #serverless #bitbucket-pipelines

#node.js #aws-lambda #бессерверный #bitbucket-конвейеры

Вопрос:

Я не такой большой эксперт в использовании npm и bitbucket-pipelines , но я хочу создать конвейер на Bitbucket для развертывания моего проекта python (flask) с использованием serverless AWS Lambda. Он развертывается локально, но когда я запускаю его с помощью конвейера Bitbucket, это происходит:

Ошибка: не удается найти модуль ‘/opt/atlassian/pipelines/agent/build/node_modules/fs-extra/lib/index.js «. Пожалуйста, убедитесь, что в package.json есть допустимая запись «main»

введите описание изображения здесь

Вот мой код:

bitbucket-pipelines.yml

 image: node:14.13.1-alpine3.10

pipelines:
  branches:
    master:
      - step:
          caches:
            - node
          script:
            - apk add python3
            - npm install
            - npm install -g serverless
            - serverless config credentials --stage dev --provider aws --key ${AWS_DEV_LAMBDA_KEY} --secret ${AWS_DEV_LAMBDA_SECRET}
            - serverless deploy --stage dev
  

serverless.yml

 service: serverless-flask

plugins:
  - serverless-python-requirements
  - serverless-wsgi

custom:
  wsgi:
    app: app.app
    packRequirements: false
  pythonRequirements:
    dockerizePip: non-linux

provider:
  name: aws
  runtime: python3.8
  stage: dev
  region: us-west-2

functions:
  app:
    handler: wsgi.handler
    events:
      - http: ANY /
      - http: 'ANY {proxy }'
  alert:
    handler: alerts.run
    events:
      - schedule: rate(1 day)

package:
    exclude:
      - .venv/**
      - venv/**
      - node_modules/**
      - bitbucket-pipelines.yml
  

Как я могу это исправить?

Комментарии:

1. Как вы это решили? столкнулся с той же ошибкой при попытке развертывания через bitbucket

Ответ №1:

Что помогло мне в той же ситуации было:

  1. Удаленная /node_modules папка
  2. запуск npm install внутри служебной папки
  3. выполнить serverless deploy

Ответ №2:

У меня была такая же проблема, и я решил проблему, (повторно) установив fs-extra

 npm install fs-extra