首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GitLab CI:在NodeJS上配置yaml文件

GitLab CI:在NodeJS上配置yaml文件
EN

Stack Overflow用户
提问于 2017-07-26 07:32:18
回答 1查看 1.2K关注 0票数 0

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

当测试到达scss-lint时,会给出一个错误.

如何确保测试不会随着测试本身的成功结果而下降?

我的gitlab-ci.yml

代码语言:javascript
复制
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
EN

回答 1

Stack Overflow用户

发布于 2017-07-26 13:00:27

你做错了。

您定义的每个作业(gem_lint、install_dependencies和scss-lint)都使用自己的上下文运行。因此,这里的问题是,在最后一步中,它找不到您安装的scss-lint,因为它切换了它的上下文。

您应该在相同的上下文中同时执行所有脚本:

代码语言:javascript
复制
  script:
    - gem install scss_lint
    - npm install
    - npm run lint:scss-lint

当然,要做到这一点,您需要安装一个同时安装了npm和gem的对接映像,也可以选择一个(例如:ruby: one ),然后添加另一个安装npm的脚本:

代码语言:javascript
复制
    - curl -sL https://deb.nodesource.com/setup_6.x | bash - 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45320297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档