add deploy_docs for github actions #1
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: deploy | |
on: | |
push: | |
branches: | |
- main | |
- develop | |
- ghactions | |
- '!gh-pages' | |
tags: '*' | |
jobs: | |
deploy: | |
runs-on: ubuntu-20.04 | |
if: github.repository == 'issp-center-dev/Moller' | |
steps: | |
- name: Inject slug/short variables | |
uses: rlespinasse/[email protected] | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
path: main | |
- name: Checkout gh-pages | |
uses: actions/checkout@v3 | |
with: | |
ref: gh-pages | |
path: gh-pages | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.9 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install sphinx | |
- name: Build | |
run: | | |
for lang in ja en; do | |
cd ${GITHUB_WORKSPACE}/main/docs/${lang} | |
make html | |
make latexpdf | |
done | |
- name: Deploy Configuration | |
run: | | |
mkdir ~/.ssh | |
ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts | |
echo "${{ secrets.GH_ACTIONS_DEPLOY_KEY }}" > ~/.ssh/id_rsa | |
chmod 400 ~/.ssh/id_rsa | |
- name: Push | |
env: | |
GIT_USER: "HTP-tools Developers" | |
GIT_EMAIL: "[email protected]" | |
TARGET_NAME: ${{ env.GITHUB_REF_SLUG }} | |
run: | | |
cd ${GITHUB_WORKSPACE} | |
for lang in ja en; do | |
rm -rf "gh-pages/manual/${TARGET_NAME}/${lang}" | |
mkdir -p "gh-pages/manual/${TARGET_NAME}/${lang}" | |
cp -r "main/docs/${lang}/build/html" "gh-pages/manual/${TARGET_NAME}/${lang}" | |
cp -r "main/docs/${lang}/build/latex/moller-usersguide.pdf" "gh-pages/manual/${TARGET_NAME}/${lang}" | |
done | |
cd gh-pages | |
git config --local user.name "${GIT_USER}" | |
git config --local user.email "${GIT_EMAIL}" | |
git remote set-url origin [email protected]:${GITHUB_REPOSITORY}.git | |
git add manual | |
if git commit -m "Deploy docs to ${TARGET_NAME} by GitHub Actions triggered by ${GITHUB_SHA}" | |
then | |
git push origin gh-pages | |
else | |
echo "Nothing to deploy" | |
fi |