1.1.3.2. Azure DevOpsをセットアップする¶
注釈
- 本ページに記載の画像・設定項目は、2022年5月時点の情報です。Microsoft Azureの仕様変更により、内容が変更となる場合がありますのでご注意ください。
Azure DevOpsにおいて、自動構築コード実行に必要な申請、タスク追加およびGitHub連携など、自動構築に必要な初期設定の手順です。
Azure Pipelinesコードの利用申請をする¶
不正利用防止のため、Azure DevOpsの利用開始後はAzure Pipelinesコード(自動構築コード)の実行に制限がかかっています。
その制限を解除するための申請手順は以下のとおりです。自動構築コード実行前に申請をお願いします。
なお、申請結果受領までは2~3営業日かかりますのでご注意ください。
「Azure DevOps Parallelism Request」にアクセスします。
入力フォームに以下のとおり必要事項を入力・選択し、[送信]をクリックします。
「ありがとうございます。回答が送信されました。」と表示されることを確認します。
2~3営業日で、「担当者のメールアドレス」宛に審査結果が届きます。承認されると、自動構築コードの実行が可能となります。
Pipelinesコード実行用サービスプリンシパルを作成する¶
注釈
- 本項の内容は、以下の環境構成において実施する手順です。
- 構成C: Azure IoT Hub・温湿度センサー利用
作成したAzure DevOpsに割り当てるサービスプリンシパル(Azure環境の実行権限)を作成します。
「Azure Portal」にアクセスし、Azureロール「所有者」または「ユーザ アクセス管理者」を持つユーザーでログインします。
画面上部の検索窓にて「Azure Active Directory」と入力し、検索結果より[Azure Active Directory]をクリックします。
画面左のメニューより、[アプリの登録]をクリックします。
[新規登録]をクリックします。
画面に沿って必要事項を以下のとおり入力し、[登録]をクリックします。
作成が完了し、作成したサービスプリンシパルの詳細画面が表示されることを確認します。
画面左のメニューより、[管理]>[証明書とシークレット]をクリックします。
[クライアント シークレット]タブを選択し、[+ 新しいクライアント シークレット]をクリックします。
表示された「クライアント シークレットの追加」画面にて、以下のとおり入力・選択し、[追加]をクリックします。
クライアントシークレットが正しく作成されたことを確認し、「値」の文字列を控えておきます。
Azure Portal画面上部の検索窓にて、「サブスクリプション」と入力し、検索結果より[サブスクリプション]をクリックします。
表示されたサブスクリプション一覧より、使用するサブスクリプションをクリックします。
画面左のメニューより、[アクセス制御(IAM)]をクリックし、[ロールの割り当て]をクリックします。
[+ 追加]>[ロールの割り当ての追加]をクリックします。
「ロールの割り当ての追加」画面に表示された「ロール」リストより、[共同作成者]を選択し、[次へ]をクリックします。
[メンバー]タブをクリックし、以下のとおり表示・選択されていることを確認し、[+ メンバーを選択する]をクリックします。
- 選択されたロール: 共同作成者
- アクセスの割り当て先: ユーザ、グループ、またはサービス プリンシパル
[+ メンバーを選択する]をクリックし、上で作成したサービスプリンシパルを検索して選択し、[選択]をクリックします。
「メンバー」タブにて、以下のとおり表示・選択されていることを確認し、[レビューと割り当て]をクリックします。
[レビューと割り当て]タブをクリックし、表示された内容を確認し、[レビューと割り当て]ボタンをクリックします。
「ロールの割り当てが追加されました」と表示されることを確認します。
Azureへの接続設定をする¶
注釈
- 本項の内容は、以下の環境構成において実施する手順です。
- 構成C: Azure IoT Hub・温湿度センサー利用
上記手順で作成したサービスプリンシパルをAzure DevOpsに登録し、Azureへの接続設定をします。
サービスプリンシパルの作成および本手順を実施することで、Azure環境の自動構築が可能となります。
作成したAzure DevOpsのプロジェクトページにアクセスします。
- URL: https://dev.azure.com/<組織名>/<プロジェクト名>
画面左下の[Project settings]をクリックします。
画面左のメニューより「Pipelines」>[Service connections]をクリックします。
表示された「Service connections」画面の[Create service connection]をクリックします。
「Choose a service or connection type」画面にて[Azure Resource Manager]を選択し、[Next]をクリックします。
「Authentication method」画面にて[Service principal(manual)]を選択し、[Next]をクリックします。
Service connectionの作成画面にて、以下のとおり入力・選択し、[Verify]をクリックします。
- Environment: Azure Cloud
- Scope Level: Subscription
- Subscription Id: <サービスプリンシパルを作成したAzure環境のサブスクリプションID>
- Subscription Name: <サービスプリンシパルを作成したAzure環境のサブスクリプション名>
- Service Principal Id: <作成したサービスプリンシパルのアプリケーション(クライアント)ID>
- Credential: Service Principal Key
- Service principal Key: <作成したサービスプリンシパルのサービスプリンシパルキー>
- Tenant ID: <作成したサービスプリンシパルのディレクトリ(テナント)ID>
[Verify]ボタンの横に「Verification Succeeded」と表示されることを確認します。
残りの項目を以下のとおり入力・選択し、[Verify and save]をクリックします。
Service connectionが正しく作成されることを確認します。
Azure DevOpsへタスクを追加する¶
本環境の自動構築に必要なタスクを追加します。
タスク「Azure Pipelines Terraform Tasks」を追加する¶
以下のURLにアクセスし、[Get it free]をクリックします。
Microsoftのログイン画面が表示された場合は、Azure DevOpsのユーザーでログインします。
「Select an Azure DevOps organization」画面にて、作成した組織を選択し[Install]をクリックします。
「You are all set!」と表示されることを確認します。
Azure DevOpsとGitHubを連携する¶
本環境の自動構築に必要なコードを保存・管理するGitHubとAzure DevOpsを連携する手順です。
作成したAzure DevOpsのプロジェクトページにアクセスします。
- URL: https://dev.azure.com/<組織名>/<プロジェクト名>
画面左下の[Project settings]をクリックします。
画面左のメニューより「Pipelines」>[Service connections]をクリックします。
表示された「Service connections」画面右上の[New service connection]をクリックします。
「New service connection」画面にて[GitHub]を選択し、[Next]をクリックします。
「New GitHub service connection」画面にて以下のとおり入力・選択し、[Authorize]をクリックします。
GitHubへのサインイン画面が表示されるので、ユーザー情報を入力しGitHubにサインインします。
「New GitHub service connection」画面にて、残りの空欄を以下のとおり入力・選択し、[Save]をクリックします。
「Service connections」画面に、作成したサービス接続が表示されていることを確認します。