在我的nodejs项目中,我有测试scss-lint的问题.

当测试到达scss-lint时,会给出一个错误.。
如何确保测试不会随着测试本身的成功结果而下降?
我的gitlab-ci.yml
image: node:wheezy
cache:
paths:
- node_modules/
stages:
- build
- test
gem_lint:
image: ruby:latest
stage: build
script:
- gem install scss_lint
artifacts:
paths:
- node_modules/
only:
- dev
except:
- master
install_dependencies:
stage: build
script:
- npm install
artifacts:
paths:
- node_modules/
only:
- dev
except:
- master
scss-lint:
stage: test
script:
- npm run lint:scss-lint
artifacts:
paths:
- node_modules/
only:
- dev
except:
- master发布于 2017-07-26 13:00:27
你做错了。
您定义的每个作业(gem_lint、install_dependencies和scss-lint)都使用自己的上下文运行。因此,这里的问题是,在最后一步中,它找不到您安装的scss-lint,因为它切换了它的上下文。
您应该在相同的上下文中同时执行所有脚本:
script:
- gem install scss_lint
- npm install
- npm run lint:scss-lint当然,要做到这一点,您需要安装一个同时安装了npm和gem的对接映像,也可以选择一个(例如:ruby: one ),然后添加另一个安装npm的脚本:
- curl -sL https://deb.nodesource.com/setup_6.x | bash - https://stackoverflow.com/questions/45320297
复制相似问题