無料版とプロ版のあるソフトを開発しています。
ソースコードはGithubで管理しています
無料版とプロ版の2つのリポジトリーがあります
プロ版でタグが打たれた時にGithub Actionsを利用して、一部のコードを削除して無料版へ自動でデプロイすることは出来ました
シェルスクリプトのソースコードはこのような形です
shell
1# tagのバージョンを変数に代入 2version=$1 3 4# Cloneしたディレクトリ名を重複しないようにsample-repo-copyに変更 5mv sample-repo/ sample-repo-copy/ 6cd ./-repo-copy/ 7# コピー先の src/ を削除 8rm -rf src/* 9# Pro版に移動 10cd ../ 11# 指定したファイルを除外して、無料版へコピー 12rsync -arvc --exclude 'sample-repo-copy/' --exclude 'bin/' --exclude 'pro/' --exclude '.github/' --exclude '.gitignore' ./* ./sample-repo-copy/ 13cd ./sample-repo-copy/ 14npm install 15npm run build 16# 無料版のmainブランチにpush 17git add . 18git commit -m"Update pro repo" 19git push -f origin main 20git tag ${version} 21git push origin ${version}
しかしこのデプロイ方法ではgit pushなのでプロ版でファイルを削除したとしても無料版では削除するプルリクを作らない限り残り続けてしまいます。
これを解決したいです。
思いつく方法
-
プロ版からデプロイがされた時に無料版のソースコードにありプロ版のソースコードにないファイルを探しプルリクを作るGithub Actionsを作る
-
プロ版から無料版へのデプロイの時に削除したファイル名を渡しプルリクエストを作るGithub Actionsを作る
上記のようなGithub ActionsまたはGithubのbotなどを作ることは実現可能でしょうか?
またこのGithub Actionsを使えば簡単に実装できそうなどあればアドバイスいただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。