피드로 돌아가기
Dev.toDevOps
원문 읽기
GitHub Actions와 Supabase Edge Function을 활용한 21개 기술 문서 자동 발행 파이프라인 구축
How I Published 21 Technical Articles in One Day Using GitHub Actions + Supabase
AI 요약
Context
수동 게시 과정의 높은 번거로움으로 인한 21개의 기술 문서 발행 지연 발생. 단순한 도구 사용을 넘어 발행에 필요한 activation energy를 최소화하는 자동화 아키텍처 필요성 대두.
Technical Solution
- GitHub Actions의 workflow_dispatch를 통한 발행 경로 및 타겟 플랫폼의 동적 파라미터 제어
- Supabase Edge Function 기반의 schedule-hub를 구축하여 Qiita, dev.to 등 다수 플랫폼 API 호출을 단일 엔드포인트로 통합
- SERVICE_ROLE_KEY 활용 및 publicActions 배열 등록을 통한 JWT 인증 오버헤드 제거 및 배포 효율성 확보
- 서버 사이드 stripFrontmatter 로직 구현으로 플랫폼별 Frontmatter 메타데이터의 자동 제거 및 본문 정제
- env: 블록을 통한 GHA 출력값 전달로 특수문자 포함 시 발생하는 Bash Shell Quoting syntax error 방지
- Branch Protection 제약을 우회하기 위한 임시 브랜치 생성 후 로컬 머지 또는 BLOG_PAT 기반의 push 전략 채택
실천 포인트
1. GHA의 ${{ }} 표현식을 Bash 스크립트에 직접 주입하지 말고 반드시 env: 블록을 통해 변수화할 것
2. 다수 외부 API 연동 시 개별 호출보다 서버리스 함수를 통한 중앙 집중형 Hub 구조를 검토할 것
3. CI/CD 파이프라인의 Branch Protection 충돌 해결을 위해 전용 PAT(Personal Access Token) 설정 여부를 확인할 것