GitLab CI가 실행중인 NodeJS 서버에서 멈춤

매니 폴드 FR

GitLab CI를 사용하여 서버에서 Express 앱을 빌드, 테스트 및 배포하려고합니다 (Runner는 셸 실행기로 실행 중입니다). 그러나 test:asyncdeploy_staging작업은 종료되지 않습니다. 그러나 GitLab 내부에서 터미널을 확인하면 Express 서버가 실제로 시작됩니다. 무엇을 제공합니까?

stages:
  - build
  - test
  - deploy

### Jobs ###

build:
  stage: build
  script:
    - npm install -q
    - npm run build
    - knex migrate:latest
    - knex seed:run
  artifacts:
    paths:
      - build/
      - node_modules/
  tags:
    - database
    - build

test:lint:
  stage: test
  script:
    - npm run lint
  tags:
    - lint

# Run the Express server
test:async:
  stage: test
  script:
   - npm start &
   - curl http://localhost:3000
  tags:
   - server

deploy_staging:
  stage: deploy
  script:
    - npm start
  environment:
    name: staging
    url: my_url_here
  tags:
    - deployment

npm start단지입니다 node build/bundle.js. 빌드 스크립트는 Webpack을 사용하고 있습니다.

필립 루드비히

종료되지 않는 테스트 단계 동안 백그라운드 작업을 시작하므로 작업이 영원히 실행됩니다.

GitLab CI 작업의 개념은 미리 정의 된 순서로 실행되는 컴파일, 단위 테스트 실행 또는 코드 검사와 같은 정보 수집과 같은 단기 실행 작업입니다. 귀하의 경우 주문은 build -> test -> deploy; 이후 test작업이 완료되지 않습니다, deploy심지어는 실행되지 않습니다.

환경에 따라 노드 앱을 배포하기 위해 다른 작업을 만들어야합니다. 예를 들어, 다음과 같은 도구를 사용하여 빌드 출력을 원격 서버로 푸시 scp하거나 AWS에 업로드 할 수 있습니다. 그 후, 당신은의 최종 URL 참조 url:하여 필드를 .gitlab-ci.yml.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Android의 경우 FireBase가 "앱을 실행하여 설치 확인"에서 멈춤

인덱싱에서 Xcode가 멈춤

SSIS 패키지가 "생성 된 실행"상태에서 멈춤

AVD가 'Android 시작 중'에서 멈춤

xcodebuild가 Travis CI에서 실행될 때 codesign 단계에서 멈춤

서버 TCP가 read ()에서 멈춤

gitlab ci / cd 러너가 멈춤

Android Crashlytics가 '앱 빌드 및 실행'에서 멈춤

gitlab 빌드가 "최적화 된 프로덕션 빌드 생성 중 ..."에서 멈춤

GitLab 파이프 라인 Docker 빌드가 APK에서 멈춤

Android Emulator가 '종료 중'에서 멈춤

12.04가 "배터리 상태 확인 중"에서 멈춤

별도의 스레드에서 실행중인 경우에도 QT GUI가 멈춤

MPMoviePlayer가 "로드 중 ..."에서 멈춤

Fedora 23 : "dnf 업데이트"가 "트랜잭션 실행 중"에서 멈춤

Fedora 23 : "dnf 업데이트"가 "트랜잭션 실행 중"에서 멈춤

Impala 쿼리가 실행 중 상태에서 멈춤

xcode 7 베타가 "iPhone 6에서 xxxxx WatchKit 앱 실행 중"에서 멈춤

apt install 실행 후 Firefox가 버전 58에서 멈춤

PyQt4 : 장기 실행 루프 중에 GUI가 멈춤

장고 서버가 Beanstalkd에서 멈춤

WebAPI에서 실행할 때 HttpWebResponse가 정지 / 멈춤

Thunderbird가 "비밀번호 확인 중 ..."에서 멈춤

Gspread가 승인에서 멈춤

Xcode가 실행중인 놀이터에서 멈춤

SQL 서버가 멈춤

CentOS 서버에서 실행할 때 Python 스크립트가 smptlib.SMTP(서버)에서 멈춤

GitLab 개인 러너가 npm 설치에서 멈춤

실행 중인 임베디드 서버에서 Junit 흐름이 멈춤