피드로 돌아가기
Adding SEO Checks to CI/CD Without Slowing Down Your Pipeline
Dev.toDev.to
DevOps

간단한 HTML 파서 기반 SEO 린터를 CI/CD에 추가해 Lighthouse 대비 수행 시간을 7분에서 5~10초로 단축

Adding SEO Checks to CI/CD Without Slowing Down Your Pipeline

GrimLabs2026년 3월 29일8intermediate

Context

Lighthouse를 CI 파이프라인에서 실행하면 페이지당 15~45초가 소요되어 10개 페이지 기준 3~7분이 추가된다. 이러한 오버헤드로 대부분 팀은 SEO 체크를 건너뛴다. 실제로는 canonical 태그 제거, 누락된 title 태그, 손상된 내부 링크 등 제한된 범주의 SEO 오류만 발생한다.

Technical Solution

  • HTML 파서를 통한 집중형 SEO 린트: JSDOM을 사용해 title, meta description, canonical, noindex, alt text, structured data만 검증하며 밀리초 단위 수행
  • 경로 필터 적용: pull_request 조건에서 HTML, TSX, JSX, 마크다운, public 폴더 변경 시에만 실행해 불필요한 린팅 제거
  • URL 변경 감지: 이전 빌드와 현재 빌드의 URL 집합을 비교해 제거되거나 변경된 경로 감지 시 리다이렉트 검증 경고 발행
  • 구조화 데이터 검증: JSON-LD 블록의 @context, @type 존재 여부 및 JSON 유효성 검사
  • 성능 예산 체크: HTML 크기(100KB), 총 JS 크기(500KB), 이미지 개수(20개), 서드파티 스크립트(5개) 제한을 파일 크기와 리소스 수 기반으로 검증

Impact

1건 canonical 태그 제거 사건이 3줄의 CI 검사로 차단 가능했을 것이며, 실제 6주 복구 기간을 방지할 수 있었음. 500페이지 사이트 기준 전체 린팅이 5~10초 내 완료.

Key Takeaway

CI/CD의 SEO 검사는 포괄적일 필요가 없다. 파이프라인 속도를 유지하면서 실제 영향을 미치는 8가지 오류 유형만 빠르게 감지하는 전략이 6주 복구보다 낫다.


웹 애플리케이션 개발팀에서 JSDOM 기반 HTML 린터와 깃허브 액션의 경로 필터를 조합하면 3~7분 오버헤드 없이 5~10초 내 SEO 회귀를 감지할 수 있다.

원문 읽기