일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 오블완
- PETERICA
- AI
- Elasticsearch
- 공부
- 코틀린 코루틴의 정석
- AWS EKS
- aws
- CKA 기출문제
- IntelliJ
- minikube
- APM
- Pinpoint
- CloudWatch
- 티스토리챌린지
- 정보처리기사 실기 기출문제
- Java
- kotlin spring
- Linux
- Kubernetes
- Spring
- 기록으로 실력을 쌓자
- mysql 튜닝
- kotlin coroutine
- 정보처리기사실기 기출문제
- CKA
- kotlin querydsl
- 정보처리기사 실기
- kotlin
- MySQL
- Today
- Total
피터의 개발이야기
[블로그] Github Action 사용법, undefined method excerpt_separator 빌드 오류 해결 본문
[블로그] Github Action 사용법, undefined method excerpt_separator 빌드 오류 해결
기록하는 백앤드개발자 2024. 2. 11. 00:45
ㅁ 들어가며
git블러그가 빌드 실패가 발생하였다. 내가 사용하는 github-page 배포 방식이 v228 -> 229로 변경되면서 jekyll v.3.9.3 -> 3.9.4로 변경되면서 발생한 문제였다. 이슈사항이 이미 등록되어 있었고, 이 이슈를 해결하는 과정!!을 정리하였다.
과정에는 원인을 분석하고, 해결방법을 도출하고, 시도하고, 실패하면 다른 방법을 시도하고, 또 실패하고 다시 분석하여 해결하는 이력이 포함되어 있다. 전문용어로 삽질이 포함되어 있다.
update...
다른 분들이 헷갈려하셔서 해결방법을 먼저 설명하고 해결하는 과정은 이후로 재편집하였다.
ㅁ Build 방법을 GitHub Action으로 변경
ㅇ Git repository > Setting으로 이동
ㄴ Code and automation - Pages 이동
ㄴ Buid and deployment - Source에서 GitHub Actions를 선택한다.
ㅇ GitHub Action를 구체적으로 어떻게 수행할지 workflow로 설정해야한다.
ㅁ GitHub Action의 workflow 설정
ㅇ Git repository에서 Actions 탭으로 이동, New workflow를 선택한다.
ㅇ Jekyll로 검색하여 Jekyll by GitHub Actions를 선택
ㅇ 위의 jekyll.yml의 내용은 기본 제공되었다. 다른 수정사항 없이 Commit Chages를 클릭하였다.
ㅁ 정상빌드 확인
ㅇ Commit: github action으로 변경이 정상적으로 빌드되었다.
ㅇ 지금까지 해결방법이었고, 이제부터는 내가 해결했던 과정을 정리하였다. 해결방법도 그 과정도 기억하기 위해서이다.
ㅁ 에러내용 분석
ㅇ git action에서 build가 실패하였다.
/usr/local/bundle/gems/jekyll-3.9.4/lib/jekyll/excerpt.rb:135:in `extract_excerpt': undefined method `excerpt_separator' for #<Jekyll::Page @name="404.md"> (NoMethodError)
............
Error: Logging at level: debug Configuration file: /github/workspace/./_config.yml GitHub Pages: github-pages v229 GitHub Pages: jekyll v3.9.4 Theme
ㅁ 원인분석
ㅇ 마지막 성공인 빌드 30과 실패한 빌드 31을 비교하였다.
ㄴ github-pages v228 -> v229로 변경
ㄴ jekyll v3.9.3 -> v3.9.4로 변경
ㅇ 변경사항으로 인해 의존성에 문제가 발생하여 빌드 실패.
ㅁ 이슈확인
ㅇ jekyll의 issues 9544로 이슈가 등록되어 있었다.
ㅇ 여기서 제시하는 해결책은 두가지였다.
ㄴ github-pages v228로 변경: 해결을 시도하였지만 실패
ㄴ github-pages에서 github Action으로 배포방법 변경: 오히려 간단하게 해결.
ㅇ 해결시도한 두가지 방법을 이력으로 남김.
ㅁ 해결시도- github-pages v228
ㅇ github-pages v228 -> v229로 변경된 부분을 강제로 v228로 적용해 보았다.
# Gemfile
.....
gem 'github-pages', '~> 228', group: :jekyll_plugins
.....
ㅇ 커밋하고 build 로그를 확인하였지만, 실패!!
Warning: The github-pages gem can't satisfy your Gemfile's dependencies.
If you want to use a different Jekyll version or need additional dependencies,
consider building Jekyll site with GitHub Actions:
https://jekyllrb.com/docs/continuous-integration/github-actions/
ㅇ 빌드 경고는 Github page에서 GitHub Actions로 변경하도록 권고하였다.
ㅇ 권고 페이지의 내용대로 조치해 보았다.
ㅁ Build 방법을 GitHub Action으로 변경
ㅇ Git repository > Setting으로 이동
ㄴ Code and automation - Pages 이동
ㄴ Buid and deployment - Source에서 GitHug Actions를 선택한다.
ㅁ Action의 workflow 해결
ㅇGit repository에서 Actions 탭으로 이동
ㅇ New workflow를 선택한다.
ㅇ Jekyll로 검색하여 Jekyll by GitHub Actions를 선택
ㅇ Commit Chages를 클릭하고 기본 커밋메시지 그대로 커밋하였다.
ㅁ 오류 발생
ㅇ 위의 해결시도- github-pages v228에 조치하였던 것이 문제가 되어서 원복하고 jekyll 버젼을 4.2로 설정하였다.
ㅁ 정상빌드 확인
ㅇ Commit: github action으로 변경이 정상적으로 빌드되었다.
ㅇ 변경된 페이지로 정상 로딩 확인하였다.
ㅁ 함께 보면 좋은 사이트
'LifeStory > 블로그' 카테고리의 다른 글
마크다운(Markdown)-링크 삽입 (0) | 2024.02.13 |
---|---|
Git 블러그 Typora로 이미지 업로드 방법 (0) | 2024.02.08 |
Jekyll 블로그 Docker로 만들기 (1) | 2024.02.07 |
[블로그] 티스토리 네이버 검색 등록 (1) | 2024.01.23 |
[블로그] 티스토리 네이버 애널리틱스 연결 (0) | 2024.01.23 |