[test] 자동화를 위해!! #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Convert and Deploy DevelopLog to Jekyll | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v2 | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: '3.0' # Ruby 3.0.0 이상으로 업데이트 | |
- name: Update RubyGems | |
run: gem update --system # RubyGems 업데이트 | |
- name: Install dependencies | |
run: | | |
gem install bundler # Bundler 설치 | |
gem install ffi # ffi 최신 버전 설치 | |
bundle install # 필요한 gems 설치 | |
- name: Convert Markdown to Jekyll Format | |
run: | | |
mkdir -p _posts | |
for file in $(find ./developLog -name '*.md'); do | |
filename=$(basename -- "$file") | |
title="${filename%.*}" | |
category=$(basename $(dirname "$file")) | |
date=$(date +"%Y-%m-%d") | |
new_filename="_posts/$date-$title.md" | |
echo "---" > $new_filename | |
echo "title: \"$title\"" >> $new_filename | |
echo "description: \"$title description\"" >> $new_filename | |
echo "author: \"Your Name\"" >> $new_filename | |
echo "date: $date 11:33:00 +0800" >> $new_filename | |
echo "categories: [$category]" >> $new_filename | |
echo "tags: [$title]" >> $new_filename | |
echo "pin: false" >> $new_filename | |
echo "math: false" >> $new_filename | |
echo "mermaid: false" >> $new_filename | |
echo "image:" >> $new_filename | |
echo " path: /assets/images/$title.png" >> $new_filename | |
echo " alt: \"$title image\"" >> $new_filename | |
echo "---" >> $new_filename | |
cat "$file" >> $new_filename | |
# Add and commit each file with the title as the commit message | |
git add $new_filename | |
git commit -m "Add post: $title" | |
done | |
- name: Checkout GitHub Pages Repository | |
uses: actions/checkout@v2 | |
with: | |
repository: YourGitHubPagesRepoOwner/YourGitHubPagesRepoName | |
path: gh-pages | |
- name: Copy Converted Files to GitHub Pages Repo | |
run: | | |
cp _posts/* gh-pages/_posts/ | |
- name: Commit and Push Changes | |
run: | | |
cd gh-pages | |
git config --global user.email "github-actions[bot]@users.noreply.github.com" | |
git config --global user.name "github-actions[bot]" | |
git add . | |
git commit -m "Bulk commit of converted posts" | |
git push https://${{ secrets.GH_PAT }}@github.com/GoldenPearls/GoldenPearls.github.io.git |