フォーム読み込み中
こんにちは。ソフトバンクの島崎と申します。
今回はAzure DevOps入門の第3回として、「Azure Pipelines」について、前編・後編に分けて、ご紹介したいと思います!
みなさまのソフトウェア開発現場において、以下のような課題を感じたことはありませんでしょうか?
サービス開発に、より一層のスピードが求められる昨今、素早くテストを行い、素早くデプロイしていく環境が必要になってきているかと思います。そこで生み出された概念が、自動テスト(Continuous Integration(以下、CI))と自動デプロイ(Continuous Delivery(以下、CD))になります。簡単にいうと、テストやデプロイを自動化しましょうということですね。
今回は、パブリッククラウド「Microsoft Azure」の中のDevOpsツール、「Azure DevOps」で、CI/CD機能を提供する「Azure Pipelines」の基本的な利用方法について、実際の画面を見ながらご紹介します!
また、Microsoft社より提供されている、サンプルアプリを利用して、実際にAzure Pipelines上で、自動テスト・自動デプロイを行います。
「Azure Pipelines」のご説明の前に、その親サービスである「Azure DevOps」に関して、ご説明をします。
「Azure DevOps」とは一言でいうと、パブリッククラウド「Microsoft Azure」 から提供されている、DevOpsを実践するためのサービス群になります。主にソフトウェアにおけるチーム開発を効率化し、またその品質の向上を支援します。Azure DevOpsは主に5つの機能で構成されています。
本記事では、この中からCI/CD機能提供する「Azure Pipelines」について解説したいと思います!
一言でいうと、Azure DevOps上でパイプラインを担う機能になります。パイプラインとは、ビルドやデプロイのタスクを定義して、自動化できる機能を提供します。
これを利用することによって、これまで手動で実施していたビルド、デプロイ、テストなどを「自動」で実施し、開発の省力化・効率化を実現することができます。
本稿は、CI/CDの基本的な操作方法を解説するため、以下の5つの機能の中でも「Pipelines」および「Releases」の紹介をしたいと思います。
Azure Pipelinesの機能を利用する上で、「CI/CD」の概念を理解する必要があるため、本章ではそちらをご紹介したいと思います。
CIとは、「Continuous Integration」の略語になります。日本語では「継続的インテグレーション」と呼ばれています。継続的にインテグレーションを行う、つまり「自動」でインテグレーションを行うと意味で、主にコードの「自動ビルド/自動テスト」を実施することを指します。
Azure Piplinesでいうと、「Pipelines」でCI機能が提供されています。
CDとは、「Continuous “Delivery”」の略語になります。日本語では「継続的デリバリー」と呼ばれています。継続的にデリバリーを行う、つまり「自動」でデリバリーを行うという意味で、「自動」でコードを、「リリース直前の状態」まで持っていきます。(この段階では環境へのデプロイまではされません。)また、「Continuous “Deploy”」では、環境へのデプロイまで、自動で実施します。 Azure Pipelinesでいうと、「Releases」でCD機能が提供されています。
以下、前章の「Continuous Integration」と「Continuous Delivery/Continious Deploy」を図式化したものになります。
本章から、いよいよAzure Pipelines機能を使っていきます。
Azure Pipelinesを利用するためには、Azure上で「Azure DevOps」サービスをデプロイする必要があります。私の執筆した「(前編)リポジトリサービス「Azure Repos」入門~Microsoft Azure DevOps 入門~」を参考に、Azure DevOpsサービスをデプロイしてください。
Azure Pipelineを利用するためには、「Azure Repos」にソースコードを格納しておく必要があります。今回は、Microsoft社から提供されているPythonベースのWebサンプルアプリを使用したいと思います。サンプルアプリはGitHub上で公開されています。以下の手順で、ソースコードをAzure Reposにインポートします。
①「Repos>Files」を選択し、「Import」を選択する
② 「Clone URL」部分に今回利用する、サンプルアプリのURLを入力し、「Import」ボタンを選択する
サンプルアプリ:https://github.com/microsoft/python-sample-vscode-flask-tutorial
GitHubよりソースコードがインポートされ、Azure Repos上に保存されます。
以上でソースコードの準備は完了です。
Azure Pipelinesから、ソースコードデプロイするのに必要な環境を準備します。今回は「Azure Web Apps」を事前にデプロイします。
①Azure Portalへログインします
②「リソースの作成」より、「Webアプリ」を作成します以下を例に入力し、「確認および作成」を押します
■プロジェクトの詳細
■インスタンスの詳細
■App Service プラン
「Azure Web Apps」がデプロイされれば、事前準備は完了となります。
以上で、Azure Pipelinesを利用する事前準備が整いました。本稿はここまでとさせていただき、「(後編)CI/CDサービス「Azure Pipelines」入門」にて、実際にAzure Pipelinesを利用していきたいと思います。
CI/CDの領域では、これまで手動で行ってきた、テストやデプロイを自動化することで劇的にリリースまでの効率化を行うことができます。少しでもご興味ある方は、後編もぜひ見ていただけますと幸いです!
ここまでご覧いただき、ありがとうございました。
Microsoft Azureは、Microsoftが提供するパブリッククラウドプラットフォームです。コンピューティングからデータ保存、アプリケーションなどのリソースを、必要な時に必要な量だけ従量課金で利用することができます。
条件に該当するページがございません