Skip to content

Merge pull request #192 from DOSI-RAK/fix/api-response #57

Merge pull request #192 from DOSI-RAK/fix/api-response

Merge pull request #192 from DOSI-RAK/fix/api-response #57

name: Deploy to GitHub Pages
on:
push:
branches:
- main # main 브랜치에 푸시될 때 실행
jobs:
deploy:
runs-on: ubuntu-latest
steps:
# Java 17 설치
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 17
distribution: temurin # 또는 zulu, adopt 중 선택 가능
# 최신 코드 체크아웃
- name: Checkout code
uses: actions/checkout@v3
with:
token: ${{ secrets.SUBMODULE_TOKEN }}
submodules: true
# Asciidoctor 설치 (Ubuntu 환경에서)
- name: Install Asciidoctor
run: |
sudo apt-get update
sudo apt-get install -y ruby ruby-dev
sudo gem install asciidoctor
# gradlew 실행 권한 부여
- name: Grant execute permission to gradlew
run: chmod +x ./gradlew
# Gradle 설치 및 테스트 실행
- name: Run Gradle Tests
env:
JASYPT_PASSWORD: ${{ secrets.JASYPT_PASSWORD }} # GitHub Secrets에서 비밀번호 가져오기
run: ./gradlew test -Djasypt.encryptor.password=${{ secrets.JASYPT_PASSWORD }} --info
# AsciiDoc 파일을 HTML로 변환 (예시)
- name: Build AsciiDoc to HTML
run: |
mkdir -p docs
asciidoctor src/docs/asciidoc/index.adoc -o docs/index.html
# 사용자 정보 설정
- name: Set git user
run: |
git config --global user.name "femmefatalehaein"
git config --global user.email "rmfls4359gmail.com"
git remote set-url origin https://x-access-token:${{ secrets.MY_GITHUB_TOKEN }}@github.com/DOSI-RAK/dosirak-be.git
- name: Create gh-pages branch if not exists
run: |
echo "Checking if gh-pages branch exists"
if ! git show-ref --quiet refs/heads/gh-pages; then
echo "Creating gh-pages branch"
git checkout --orphan gh-pages # gh-pages 브랜치 생성
git reset --hard # 기존 파일 삭제
git add docs/index.html # HTML 파일만 추가
git commit -m "Initial commit for GitHub Pages"
echo "Pushing to GitHub Pages - 1"
git push --force https://x-access-token:${{ secrets.MY_GITHUB_TOKEN }}@github.com/DOSI-RAK/dosirak-be.git gh-pages
else
echo "Switching to existing gh-pages branch"
git checkout gh-pages # 기존 gh-pages 브랜치로 체크아웃
git add docs/index.html # HTML 파일만 추가
git commit -m "Deploy to GitHub Pages"
echo "Pushing changes to gh-pages - 2"
git push --force https://x-access-token:${{ secrets.MY_GITHUB_TOKEN }}@github.com/DOSI-RAK/dosirak-be.git gh-pages
fi
# GitHub Pages에 푸시 (이미 `gh-pages` 브랜치가 설정되어 있어야 함)
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }} # 기본 GitHub Actions 토큰 사용
publish_dir: ./docs # docs 폴더에 배포