Atlassian Bitbucket からの Web アプリの継続的インテグレーションと継続的デリバリ

執筆者: Mohammad Jalloul (Azure Technical Evangelist)

このポストは、5 月 24 日に投稿された Continuous integration and delivery of web apps from Atlassian Bitbucket の翻訳です。

 

Azure App Service チームは昨年 12 月 (英語) に、Bitbucket との統合と Bitbucket リポジトリから Azure App Service への発行を可能にする「Deploy to Azure (英語)」プラグインを構築しました。Azure App Service は、クラウドやオンプレミスのあらゆる場所に存在するデータに接続可能な強力な Web アプリやモバイル アプリの構築を支援するクラウド プラットフォームです。

このたび Bitbucket Cloud 内に構築された、継続的デリバリを支援するサービス「Bitbucket Pipelines (英語)」が発表されました。ここでは Azure へのデプロイ方法を再検討していただく良い機会として、Bitbucket Pipelines を使用した Azure App Service Web Apps への発行がいかに簡単であるかをご説明したいと思います。Atlassian は、JIRABitbucketConfluenceHipChat など開発チームの作業を支援するさまざまな人気製品を提供しています。Bitbucket はチームでの共同作業を容易にする分散型バージョン管理システムです。Bitbucket の新機能である Bitbucket Pipelines は、チームによるコードのビルド、テスト、プッシュでのデプロイを支援するもので、継続的デリバリの実現と優れたソフトウェアの迅速なデリバリを実現します。マイクロソフトでは Bitbucket Pipelines ベータ版をしばらくの間使用してみました。その際に Bitbucket Pipelines で Web アプリケーションを Azure App Service にデプロイする手順を簡単にまとめましたので以下にご紹介します。

Bitbucket Pipelines から Azure Web Apps へのデプロイ方法

Bitbucket Pipelines は簡単な手順でセットアップして、継続的インテグレーションや継続的デリバリの実践を開始できます。以下の図は開始までの一例です。

Deploy from Bitbucket Pipelines to Azure Web Apps End-to-End Scenario

この手順に沿って作成された Bitbucket のサンプル リポジトリをこちら (英語) で公開しています。サンプルの使用方法が詳しく記載されていますのでご利用ください。

マイクロソフトでは、Pipelines を構成して Azure Web Apps にデプロイする手順を簡素化するために、Visual Studio Code (英語) の拡張機能を作成しました (Visual Studio Code は、Windows、Linux、OS X で使用可能なクロス プラットフォーム IDE です)。

Visual Studio Code 拡張機能

Visual Studio Code 拡張機能の「Bitbucket Pipelines Deploy to Azure」が Bitbucket (英語) から公開され、Azure Web Apps へのデプロイに使用する Bitbucket Pipelines を簡単に構成できるようになりました。機能の内容とインストール方法は、この拡張機能のリポジトリの概要セクション (英語) に記載されています。拡張機能のインストールが完了すると、インストール済みのリストに表示されます。

Visual Studio Code Extension List

この拡張機能には、下図のように Bitbucket Pipelines の利用に役立つ複数のコマンドが用意されています。

Bitbucket Pipelines Deploy to Azure VS Code Extension

Bitbucket Pipelines を使用して Bitbucket から Azure Web Apps へのデプロイをすぐに実行したい場合は、特に以下の 2 つのコマンドが重要になります。

  • Add Pipelines .yml to Deploy to Azure Web App (FTP)

 

  • Add Pipelines .yml to Deploy to Azure Web App (Kudu)

 

この 2 つのコマンドのいずれかを実行すると、3 つのファイルがコードベースに追加されます。

  • bitbucket-pipelines.yml: サンプル YAML ファイル。既定の Atlassian Docker イメージを使用して、必要な事前処理を実行し、関連する bash スクリプトを呼び出すように構成されています。

 

  • deploy-to-azure.bash: bash スクリプト。FTP サービスまたは Azure Web Apps の Kudu サービス (英語) を使用して、構成済みの Azure Web Apps にリポジトリをデプロイします。

 

  • deploy-to-azure.md: デプロイメント プロセスを正常に実行するためには、いくつかの環境変数を Bitbucket リポジトリに作成しておく必要がありますが、設定に必要な説明がすべてこのファイルに記載されています。

 

簡単にまとめると、Bitbucket Pipelines を使用することで非常に簡単かつ効率的に Bitbucket と Azure Web Apps 間での継続的インテグレーションや継続的デリバリを実現できます。ぜひ皆様も今すぐお試しください。

詳細情報