Skip to main content

GitHub に deploy するための bash script

注意

以下は万人向けの解説ではなく、私的な忘備録。 環境は Windows11 + miniconda

GitHub で Docusaurus 専用の repository を作成し、Pages の設定を既に済ませているものと想定している。

deploy の手順

Git-bash 端末から以下を実行する。

  1. 最初に専用の miniconda 環境に入ってから、作業 directory に cd する。
bash
conda activate docusaurus
cd /c/my_prog/docusaurus/github_page
  1. 記事の追加や編集(blog や docs/UFO などの該当する directory で作業)
  2. ディレクトリを移動。 cd /c/my_prog/docusaurus/github_page
  3. local PC の Apache で確認。 ./make_local_build.sh
  4. local PC の Git-bash で以下を実行。 ./deploy_github.sh

deploy 用 bash script

deploy_github.sh
#!/usr/bin/bash
#
# GitHub 用の環境変数の設定
export GIT_USER=<USER_NAME>
exprot CURRENT_BRANCH=main
export USE_SSH=false

# デフォルトのコミットメッセージ
commit_message="fix or add article"

# コマンドラインオプションの解析
while getopts "m:" opt; do
case $opt in
m)
commit_message=$OPTARG
;;
*)
echo "Usage: $0 [-m commit_message]"
exit 1
;;
esac
done

# 一旦、./build を削除
if [ -d ./build ]; then
rm -rf build
if [ $? -ne 0 ]; then
echo "FAIL: rm -rf build"
exit 1
else
echo "PASS: rm -rf build"
fi
fi

# git add . を実行
git add .
if [ $? -ne 0 ]; then
echo "FAIL: git add ."
exit 1
else
echo "PASS: git add ."
fi

# git commit を実行
git commit -m "$commit_message"
if [ $? -ne 0 ]; then
echo "FAIL: git commit"
exit 1
else
echo "PASS: git commit"
fi

# npm run build を実行
npm run deploy
if [ $? -ne 0 ]; then
echo "FAIL: npm run deploy"
exit 1
else
echo "PASS: npm run deploy"
fi

(2024-07-13)