Netlify를 지속적 통합으로 사용하는 방법
6192 단어 netlifycijavascript
예제 응용 프로그램
간단하게 하기 위해 Create React App(CRA)으로 생성된 애플리케이션을 예제 앱으로 사용하겠습니다. 이런 식으로 우리는 다음과 같은 중요한 응용 프로그램을 얻습니다.
결과 응용 프로그램은 다음과 같습니다.
확인 단계
이전에 CI로 실행할 수 있는 것steps에 대해 쓴 적이 있습니다. 예제 응용 프로그램에 대해 설정하는 방법을 살펴보겠습니다.
건물
빌드를 위해 CRA에서 생성한 코드는 필요한 모든 작업을 수행합니다.
$ npm run build
> [email protected] build
> react-scripts build
Creating an optimized production build...
Compiled successfully.
File sizes after gzip:
43.71 kB build/static/js/main.1fb16459.js
1.78 kB build/static/js/787.c84d5573.chunk.js
541 B build/static/css/main.073c9b0a.css
…
Netlify는 CRA에서 생성한 저장소에서 빌드 명령으로
build
스크립트를 자동으로 선택하고 완벽하게 작동합니다.테스트
CRA에서 생성한 코드는 단위 테스트를 위한 완전한 설정과 하나의 예제 테스트와 함께 제공됩니다.
npm test
스크립트는 개발용으로 만들어졌습니다. 대화형 모드에서 실행되며 기본적으로 파일을 감시합니다. CI에서 실행하려면 단일 실행이 필요합니다.$ npm test -- --watchAll=false
> [email protected] test
> react-scripts test "--watchAll=false"
PASS src/App.test.js
✓ renders learn react link (16 ms)
Test Suites: 1 passed, 1 total
Tests: 1 passed, 1 total
Snapshots: 0 total
Time: 0.644 s, estimated 1 s
Ran all test suites.
쉽게 사용할 수 있도록
package.json
에서 새 스크립트를 정의하겠습니다.{
…
"scripts": {
…
"test": "react-scripts test",
"test:ci": "react-scripts test --watchAll=false",
…
},
정적 분석
코드에 추가하고 싶은 한 가지는 정적 분석입니다. 기본 구성은 매우 간단해야 하지만 이 기사의 범위를 벗어나도록 하겠습니다. 이에 대한 후속 조치를 취하고 싶다면 다음과 같이 시도해 볼 것을 권장합니다.
새 CI 스크립트
지금 가지고 있는 코드로 성공적인 CI/CD 실행을 위해 다음 단계가 필요합니다.
npm install
– Netlify에서 기본적으로 수행하는 패키지 종속성을 가져옵니다npm run test:ci
– 수정된 테스트 명령npm run build
– 원래 빌드 명령배포 – Netlify에서 수행
이제 테스트를 기반으로 한 조건부 빌드를 원합니다. 테스트가 실패하면 실행이 중지되어야 하며 이것이 '&&'를 사용하는 이유입니다. 동시에 Netlify 구성에는 실행할 명령에 대한 입력이 하나만 있습니다. 이 사용 사례 전용 새 스크립트를 생성하여 이 두 가지를 해결할 수 있습니다.
{
…
"scripts": {
…
"test:ci": "react-scripts test --watchAll=false",
"ci": "npm run test:ci && npm run build",
…
},
…
}
실행 예
결국 스크립트는 예상대로 작동합니다.
자원 사용
몇 번 실행했을 때 Netlify가 시스템 사용을 제어하기 위해 확인하는 리소스인 빌드 시간에 대한 테스트의 영향은 거의 없었습니다. 물론 이것은 프로젝트가 성장하면 변경되며 프로젝트에 더 많은 테스트를 추가하게 됩니다. 언젠가는 전용 CI 솔루션을 설정하는 데 투자하고 Netlify를 호스팅으로만 사용하는 것이 더 합리적일 것입니다.
연결
다음에 무엇을 하시겠습니까?
Netlify에서 CI를 실행하는 것은 임시 솔루션일 뿐입니다. 귀하의 의견을 듣고 싶습니다. 다음에 어떤 도구를 사용하시겠습니까? 이poll에서 알려주세요.
Reference
이 문제에 관하여(Netlify를 지속적 통합으로 사용하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/how-to-dev/how-to-use-netlify-as-your-continuous-integration-2676텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)