2017-04-25 2 views
0

테스트를 만들고 실행하기위한 gitlab-ci 스크립트가 있습니다. 그러나 빌드 프로세스에서 작성된 디렉토리는 삭제됩니다. 내 스크립트 :캐시 파일이 GitLab CI의 모든 단계에 저장되지 않습니다

stages: 
    - build 
    - test 

server: 
    stage: build 
    script: 
    - cd Server/NodeJS 
    - npm install 
    - npm install zmq 
    cache: 
    key: "$CI_BUILD_NAME" 
    untracked: true 
    paths: 
    - Server/NodeJS/node_modules/ 

client: 
    stage: build 
    script: 
    - cd Client/web 
    - npm install 
    - npm run build-demo 
    - npm run build-main 
    cache: 
    key: "$CI_BUILD_NAME" 
    untracked: true 
    paths: 
    - Client/web/build-main/ 

functional_tests: 
    stage: test 
    script: 
    - cd Server/NodeJS 
    - ls node_modules/ 
    - ls ../../Client/web/ 
    ... 

ls 캐시 디렉토리를 인쇄하지 않습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+1

유스 케이스 대신 캐시보다 인공물을 사용해야합니다. –

답변

2

글로벌 캐시를 정의하지 않았고 functional_tests 작업의 캐시도 정의하지 않았으므로 아무 것도 알지 못합니다.

당신은 같은 것을 할 필요가 :

또한
functional_tests: 
    stage: test 
    script: 
    - cd Server/NodeJS 
    - ls node_modules/ 
    - ls ../../Client/web/ 
    cache: 
    key: "$CI_BUILD_NAME" 
    untracked: true 
    paths: 
    - Client/web/build-main/ 
    - Server/NodeJS/node_modules/ 

이 캐시는 최선 노력 원칙에 근거 해 제공 있습니다, 그래서 캐시가 항상 존재 것으로 기대하지 마십시오.

따라서 항상 캐시가 있다고 가정 할 수 없으므로 스크립트를 작성해야합니다.