👏
Omeka Sのモジュール開発におけるGitHubへのリリーススクリプトの作成
Omeka Sのモジュール開発におけるGitHubへのリリーススクリプトの作成しました。
この開発にあたっては、Omeka Sのモジュールを数多く開発されているDaniel-KM氏のGitHubリポジトリの使い方を参考にしました。
具体的には、GitHubのリポジトリは「Omeka-S-module-{モジュール名}」のように作成されています。
例:https://github.com/Daniel-KM/Omeka-S-module-EasyInstall
そしてリリースについては、「{モジュール名}-{バージョン}」名とともに、「{モジュール名}-{バージョン}.zip」というファイルを添付しています。
例:https://github.com/Daniel-KM/Omeka-S-module-EasyInstall/releases/tag/3.3.6
このzipファイルを展開すると、「{モジュール名}」のフォルダが作成されます。これは、Omeka Sの仕様に合わせて、モジュールの名前と一致したフォルダが必要なためです。
上記を実現するためのスクリプトとして、以下を作成しました。各リポジトリの直下で実行することを想定しています。
set -e
version=1.0.1 # バージョンの例
name=IiifViewers # モジュール名の例
repository_path=. # モジュールのパス(リポジトリの直下で実行する例)
# 不要なファイルを除外したモジュール名のフォルダを作成
rsync -ahv $repository_path $repository_path/$name --exclude '.*' --exclude '*.sh'
# zipファイルの作成
zip $repository_path/$name-$version.zip -r $repository_path/$name
# フォルダの削除
rm -rf $repository_path/$name
# リリース
gh release create $version $repository_path/$name-$version.zip -t $name-$version -n "Released version $version."
# ファイルの削除
rm $repository_path/$name-$version.zip
gh
コマンドはインストールが必要です。
よりよい方法があるかと思いますが、Omeka Sのモジュールおよびテーマ開発の参考になりましたら幸いです。
Discussion