未安装devDependencies时如何在生产环境中运行构建和测试?

时间:2018-08-17 09:36:37

标签: node.js npm deployment continuous-integration babeljs

我确定这是一个常见问题,但是我似乎找不到明确的答案。

我有一个节点应用程序,为了构建它需要一些devDependencies,例如babel。为了运行测试,还需要诸如jest之类的devDependencies。但是,当CI在生产环境中运行时,它显然不会安装任何devDependencies,因此在找不到该软件包的地方会出现错误。

在没有devDependencies的情况下在产品中运行构建和测试的最佳实践是什么?

如果有帮助,我将在GitLab Pipelines中运行我的构建:

image: node:8.11.2

stages:
  - prepare
  - test
  - deploy

install_and_build:
  stage: prepare
  script:
    - npm install yarn
    - yarn
    - yarn build
  only:
    - master

test:
  stage: test
  script:
    - yarn test
  only:
    - master

deploy_production:
  type: deploy
  stage: deploy
  image: ruby:latest
  script:
    - apt-get update -qy
    - apt-get install -y ruby-dev
    - gem install dpl
    - dpl --provider=heroku --app=app-name --api-key=$HEROKU_API_KEY
  only:
    - master

0 个答案:

没有答案