현재 Angular SPA Frontend Repo 및 nodeJS 백엔드 저장소가 포함 된 프로젝트를 개발 중입니다. 프로젝트를 컴파일/축소 한 후 Gitlab-CI를 사용하여 RHEL/centOS에 내 응용 프로그램을 배포하는 방법을 모색했습니다. 문제는 예를 들어 사용하는 방법을 알아낼 수 없다는 것입니다. gitlab-ci.yml 파일에서 압축하기위한 YUI 압축기. SSH를 사용하여 웹 서버의 공용 폴더에 파일을 배포하거나 pm2를 트리거하여 응용 프로그램을 다시로드하는 데 문제가 있습니다. 이 방법으로 기본 단위 테스트를 구현하는 것이 좋겠지 만 아직 완료되지 않은 방법에 대한 응답을 얻을 수는 없습니다. 내 지식을 넓힐 수있는 제안이 있으면 기꺼이 들려 드리겠습니다. 감사합니다.Gitlab CI를 사용하여 정적 사이트 배포시 문제가 발생했습니다
0
A
답변
1
어떻게 .gitlab-ci.yml이 작성에 대한, 항아리로 yuicompressor 사용하는 가정 :
build:
script:
- yuicompressor.sh
당신이하는 경로에서 쉘 스크립트, chmod +x
비트가 설정되어 있는지 확인합니다 이 :
#!/bin/sh
java -jar /path/to/your/yuicompressor-x.y.z.jar
해당 파일은 yuicompressor.sh라는 런너 VM에 있어야합니다. 러너의 리소스에 대한 경로를 .gitlab-ci.yml로 하드 코딩하는 것이 좋지 않습니다.
Java 응용 프로그램에 다른 arg가 필요할 수 있습니다.
내 주자가 필요로하는 모든 실행 도구 (주로 스크립트)를 /glrunner/tools
폴더에 넣고 시작하면 주자의 PATH에 /glrunner/tools
을 넣습니다.
Dockerized runners를 사용 중이므로 문제가 발생하면 Linux VM에서 쉘 러너가있는 외부 도커를 작동시킨 다음 나중에 컨테이너로 이동하십시오. 이것은 사람들이 만드는 신인상 중 하나입니다.
일단 컨테이너를 사용하고 도구를 사용하기 위해 Dockerfile이 있으면 처음에는 제안한 것처럼 정적 "도구/스크립트"폴더를 고려하지 않아도되지만 시작하는 것이 좋습니다 먼저 Gitlab CI Runners를 배우고 Docker를 배우십시오.