2017-11-27 11 views
0

Gitlab-CI를 사용하여 프런트 엔드 (Gulp) 용 노드 구성 요소를 사용하는 중개자 애플리케이션을 빌드하고 있습니다.GitLab CI를 사용하여 Middleman/Gulp 프로젝트를 빌드 할 수 없습니다.

여기 내 .gitlab-ci.yml (대부분 here에서 복사) :

image: ruby:2.3 

cache: 
    paths: 
    - vendor 
    - node_modules 

before_script: 
    - apt-get update -yqqq 
    - apt-get install -y npm 
    - ln -s /usr/bin/nodejs /usr/bin/node 
    - npm install 
    - bundle install --path vendor 

test: 
    script: 
    - bundle exec middleman build 
    except: 
    - master 

pages: 
    script: 
    - bundle exec middleman build 
    artifacts: 
    paths: 
    - public 
    only: 
    - master 

모든 그것이 npm install ING 때 노드의 이전 버전을 사용하고있는 것으로 보인다 중요한 문제에서 확실히 떨어져 간다. 나는 이것의 제비를 얻고있다 :

npm WARN engine [email protected]: wanted: {"node":">=4"} (current: {"node":"0.10.29","npm":"1.4.21"}) 

마지막으로 "const path" SyntaxError에 실패하기 전에.

새로운 노드를 이전 이름 ​​(- ln -s /usr/bin/nodejs /usr/bin/node)으로 심볼릭 링크하는 행을 포함 시켰지만 효과가없는 것 같습니다 ...?

오랫동안 내 머리를 두드리는 소리가났습니다. 누군가이 작품을 만든 사람이 있습니까? 고정 NodeJs 주요 버전

답변

1

데비안 제시 선박, follow NodeSource instructions 특정 버전을 설치하려면,이 (당신은 아마 그것 ruby:2.3 이미지에 설치되지 않은 이후 처음 curl을 설치해야합니다)이처럼 gitlab-ci.yml에 딱 맞는 :

before_script: 
    - apt-get update -q && apt-get -qqy install curl 
    - curl -sL https://deb.nodesource.com/setup_9.x | bash - 
    - apt-get update -q && apt-get -qqy install nodejs npm 
    - ln -s /usr/bin/nodejs /usr/bin/node 
    - npm install 
    - bundle install --path vendor 
+0

멋진, 그게 다야! 최신 노드 설치로 인해 심볼릭 링크가 필요 없다는 점에 유의하십시오. 건배! – igneosaur