이 파이프라인은 인스타그램 같은 소셜 크롤링을 제외하고, 개발 관련 고품질 블로그/RSS를 자동 수집해서 Jekyll 포스트(_posts)를 생성하고 GitHub Actions가 검증 후 커밋/푸시합니다.
scripts/generate_dev_digest.py가 큐레이션된 개발 RSS 소스를 수집_posts/dev/digest/YYYY-MM-DD-dev-digest.markdown 생성scripts/validate_dev_digest.py가 front matter/섹션/링크 형식을 검증.pipeline/content_state.json에 이미 사용한 링크 저장.github/workflows/dev-content-pipeline.yml가 검증 통과 시에만 변경분을 커밋/푸시--days-back, 기본 7일)만 허용python3 scripts/generate_dev_digest.py --dry-run
python3 scripts/generate_dev_digest.py --max-items 6 --days-back 7
python3 scripts/validate_dev_digest.py _posts/dev/digest/YYYY-MM-DD-dev-digest.markdown
bash scripts/jekyll-build.sh
빠른 실행:
npm run generate:digest:drynpm run generate:digestnpm run validate:digest -- _posts/dev/digest/YYYY-MM-DD-dev-digest.markdownnpm run jekyll:build옵션:
--force: 오늘 날짜 파일이 있어도 덮어쓰기--state-file: 링크 상태 파일 위치 변경--repo-root: 다른 루트에서 실행 시 지정--fixtures-dir: 네트워크 없이 fixture XML로 오프라인 검증환경 변수:
PIPELINE_INSECURE_SSL=true: 로컬 인증서 체인이 깨진 환경에서만 임시 우회 (기본값 false)오프라인 검증 예시:
python3 scripts/generate_dev_digest.py --fixtures-dir scripts/fixtures --force
python3 scripts/validate_dev_digest.py _posts/dev/digest/YYYY-MM-DD-dev-digest.markdown
.github/workflows/dev-content-pipeline.ymlcron: 0 22 * * *, UTC 기준)workflow_dispatch필수 조건:
Settings > Actions > General에서 워크플로 권한이 Read and write permissionsscripts/generate_dev_digest.py의 QUALITY_SOURCESTOPIC_KEYWORDSSUMMARY_RULES--max-items