ぶろぐちぶろぐちHome開発Bitbucketでプッシュを検知して自動デプロイする方法2017/08/302017/10/30ぐちBitbucketでプッシュを検知して自動デプロイする方法スポンサーリンクこんにちは!ぐち(@bloguchi)です。タイトルの通りなんですが、Bitbucketにあるソースファイルをプッシュと同時に自動でデプロイする方法がやっと解決したので手順の整理を兼ねてご紹介したいと思います。BitbucketBitbucketというサービスはGitのプライベートリポジトリを無料(※条件あり)で持つことができるWebサービスです。GithubとかGitlaboと同様のサービスですね。アカウントをまだお持ちでない方はこちらから登録を。※インセンティブはありませんよ。笑PipelineGitのサービスにはプッシュなどのイベントをトリガーとしアクションを発動させることができる機能が備わっています。呼び方は様々でWebhookといったり、Servicesと言ったりするようですが、BitbucketではPipelineというそうです。BitbucketではこれまでWebhookの機能を使ってbitbucket-syncというモジュールを利用した方法が多く採用されていたみたいですが、現在はこちらの機能が停止されているようです。bitbucket-syncのリポジトリ上部にも記載がありますので、ご注意ください。設定手順それでは画像付きで設定手順をご紹介しますね。既存のリポジトリに自動デプロイの設定をされる方は飛ばしてください。これはまぁ画像の通り入力して作成して頂く感じですね。[Settings]へ進みます。Pipelineを有効化します。bitbucket-pipelines.yml」をクリックします。Pipelineの設定どのタイミングでどこに何をするのかという設定を行います。賑やかな画面が表示されますが臆せずに下へスクロールしてください。設定ファイルの中身を記入します。こちらにあるサンプルのままでも動きます。エディタ部分ではインデントがきちんと揃っていないとエラーになりますので、ご注意ください。下記にコードを記載しておきますね。file」をクリックするとプッシュ→Pipelineの処理が動きます。先ほどPipeline処理が失敗に終わった原因ですが、処理内で使っているFTP_USERNAMEとFTP_PASSWORDという環境変数が定義されていないためです。Bitbucket上でPipeline用の環境変数を定義します。variables]へ進みます。図のようにFTP_USERNAMEとFTP_PASSWORDを登録してください。左部メニューのPipelinesをクリックすると処理結果が表示されているかと思います。リンクになっているメッセージをクリックすると詳細内容を見ることができます。Failedと表示されている赤い帯の右側にあるRerunをクリックして再度Pipelineを実行してください。処理が完了するとSuccessfulと表示されて赤い帯が緑色に変わり、ほっとすることができました。更新処理を受ける次にPipelineの設定を、次回以降はリポジトリへのプッシュにて動作するように変更します。ソースからbitbucket-pipelines.ymlを開いてください。pushに変更します。ファイルの編集をコミットするとPipelineの処理が実行されて成功となるかと思います。左部メニューから、概要をクリックしてください。画面下部にある「READMEの作成」をクリックしましょう。内容は何でもOKですので、お好きなように変更してみてください。まとめ変更後コミットメッセージを入力するとPipelineの結果に成功と表示されるかと思います。これで、次からGitリポジトリにファイルをプッシュするだけでサーバへのデプロイも完了するようになりました。手動でもできなくはないですが、人的ミスをなくすのと同時にルーチン作業がなくなるので自動デプロイのほうがいいですね!色々なサービスや仕組みを組合せてもっと効率良く作業を進めれるようになりたいです。コメントをキャンセルメールアドレスが公開されることはありません。付いている欄は必須項目ですCommentName*Email*Website上に表示された文字を入力してください。