質問: stashのgit Hooksを使って自動的にJenkinsでビルドしたいと考えています。 ただし、jeninsはローカル環境にあり http://localhost:8080 stashのWebHooksからローカル環境を見ることができません。 ローカルフックを使ってできる方法をお教えください。 理由:Jenkinsをクローズの環境で利用したい 条件: 3人で別々のPC環境でGITをインストールしていて 誰かがプッシュした段階で起動し、最新環境にビルドする仕組みを作成したいです。 ----------------------------------- 追記 -------------------------------------------- 説明不足ですいません。 Jenkinsは1台です 3台のPCで一つのStashでリポジトリを管理しています。 サーバは本番環境とステージング環境の2台で、 本番環境はポーリングで間隔的にビルドをし、ステージング環境はHooksを使って即時ビルドするようにしています ステージング環境も、PC3台も、Jenkinsサーバもすべてローカル環境になってます。 そこで、3人のうちだれかがStashにプッシュした段階で ステージング環境がビルドされる仕組みを作成したいです
回答: こんにちは、説明の追記ありがとうございます! > > ローカルフック > > > なので、各自のPCでのpush時のクライアントサイドでのフックということですね。間違えていたらすみません。 各自のPCから、Jenkinsへは到達可能でしょうか? 1. ステージング環境にデプロイするJenkinsのジョブを作る(すでにあると思いますが) 2. ローカルPCからpushした後に、そのJenkinsのジョブに対してAPI経由でビルド実行させればいい ということになりますが、クライアント側のフックだと、pre-push しかないみたいでしょうか....。 こちらの記事に、git push をラップしたスクリプトを作って、 pushの前後に何か処理をさせる例が載っています。 多分これに近い操作がご希望なのかな...とも思いますが、いかがでしょうか。 http://stackoverflow.com/questions/1797074/local-executing-hook-after-a-git-push/3812238#3812238