演習 - 基本的なパイプラインを作成して実行する

完了

重要

この演習を行うには、独自の Azure サブスクリプションが必要です。また、料金が発生することがあります。 Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。

あなたは、玩具会社の Web サイトの更新のデプロイを自動化したいと思っています。 最初の手順として、Azure DevOps で基本的なパイプラインを作成します。

この演習では、以下のことを行います。

  • Azure DevOps 組織とプロジェクトを作成する。
  • 基本的なパイプラインを作成する。
  • 基本的なパイプラインを実行する。

Azure DevOps でのプロジェクトの作成

  1. ブラウザーで dev.azure.com にアクセスします。 サインインするか、新しいアカウントを作成します。

  2. 新しいアカウントを作成した場合は、画面の指示に従って Azure DevOps 組織を作成します。 その後、Azure DevOps によって新しいプロジェクトを作成するように求められます。 次の手順に進み、プロジェクトを設定します。

    既存の Azure DevOps 組織にサインインした場合は、[新しいプロジェクト] を選択して、新しいプロジェクトを作成します。

    新しいプロジェクトのボタンが強調されている Azure DevOps のスクリーンショット。

  3. [プロジェクトを作成して開始します] ペインで、新しいプロジェクトに関する次の詳細を入力します。

    • [プロジェクト名]: わかりやすく、短い名前を使用します。 この演習では、「toy-website」と入力します。
    • 説明: プロジェクトの目的の説明を入力します。 この演習では、「Toy company website」と入力します。
    • 可視性: Azure DevOps を使用して、パブリック リポジトリとプライベート リポジトリを作成できます。 この場合、あなたの会社の Web サイトのファイルには組織内のユーザーだけがアクセスできるようにする必要があるため、リポジトリはプライベートである必要があります。 後で他のユーザーにアクセス権を付与できます。

    プロジェクトの構成は次の例のようになります。

    プロジェクト名と表示オプションが強調して示されている Azure DevOps の [プロジェクトを作成して開始します] ペインのスクリーンショット。

  4. [プロジェクトの作成] を選択します。

リポジトリの複製

  1. [ようこそ] ペインまたはリソース メニューで、[リポジトリ] を選びます。

    ペインとリソース メニューで [リポジトリ] アイコンが強調して示されている [ようこそ] ペインのスクリーンショット。

  2. macOS を使用している場合は、Git リポジトリをクローンするための特別なパスワードが必要です。 [Git 資格情報の生成] を選択し、表示されるユーザー名とパスワードを安全な場所にコピーします。

  3. [コンピューターにクローンする] セクションで、[Clone in VS Code](VS Code にクローン) を選びます。 Visual Studio Code を開くことを許可するように求めるメッセージが表示されたら、[開く] を選択します。

    [Clone in VS Code]\(VS Code にクローン\) ボタンが強調されている、リポジトリの設定を示すスクリーンショット。

  4. ダイアログ ボックスが表示され、拡張機能でリポジトリの URI を開くことを許可するように求めるメッセージが表示されたら、[開く] を選びます。

  5. お使いのローカル デバイスに、このリポジトリに使用するフォルダーを作成してから、[リポジトリの場所を選択] を選択します。

  6. このリポジトリを初めて使用する場合は、サインインするように求められます。

    Windows の場合は、この演習で以前に Azure DevOps にサインインするために使用したのと同じ資格情報を入力します。

    macOS の場合は、先ほど生成した Git のユーザー名とパスワードを入力します。

  7. Visual Studio Code からリポジトリを開くように求められます。 [Open] を選択します。

    [開く] ボタンが強調されている、クローンしたリポジトリを開く Visual Studio Code ダイアログ ボックスのスクリーンショット。

Azure Pipelines の拡張機能をインストールする

Microsoft によって、Visual Studio Code 用の Azure Pipelines 拡張機能が発行されています。 この拡張機能はパイプライン YAML ファイルの作成に役立ちます。 この拡張機能をインストールして、作業しながら YAML ファイルが検証されるようにすることをお勧めします。

  1. Visual Studio Code で、[表示]>[拡張機能] (ショートカットは Ctrl + Shift + X) を選びます。

  2. [検索] ボックスに「Azure Pipelines」と入力し、Microsoft によって発行された Azure Pipelines 拡張機能を選びます。 [インストール] を選択します。

    Microsoft による

YAML パイプライン定義を作成する

これで組織、プロジェクト、リポジトリを作成できたので、基本的なパイプライン定義を作成する準備ができました。

  1. Visual Studio Code で [エクスプローラー] を開きます。

  2. [エクスプローラー] で、[TOY-WEBSITE] プロジェクト フォルダーをポイントして、[新しいフォルダー] アイコンを選びます。 そのフォルダーに deploy という名前を付けます。

  3. deploy フォルダーを選び、TOY-WEBSITE プロジェクトで [新しいファイル] アイコンを選びます。 そのファイルに azure-pipelines.yml という名前を付けます。

    作成した deploy フォルダーと azure-pipelines.yml ファイルが表示されている Visual Studio Code の [エクスプローラー] のスクリーンショット。

  4. YML ファイルがメイン パネルで開かれます。 次のパイプライン定義コードをファイルに貼り付けます。

    trigger: none
    
    pool:
      vmImage: ubuntu-latest
    
    jobs:
    - job:
      steps:
      - script: echo Hello world!
        displayName: 'Placeholder step'
    
  5. ファイルに加えた変更を保存します。

  6. [ターミナル]>[新しいターミナル] を選択して、Visual Studio Code ターミナル ウィンドウを開きます。

    ターミナル ウィンドウは通常、画面の下半分に表示されます。

  7. azure-pipelines.yml ファイルをコミットして Git リポジトリにプッシュするには、次のコードをターミナル パネルに貼り付けて Enter キーを押します。

    git add deploy/azure-pipelines.yml
    git commit -m "Add initial pipeline definition"
    git push
    

Azure Pipelines でパイプラインを設定する

パイプライン定義を作成しました。 次に、そのパイプラインを Azure Pipelines に登録します。

  1. Azure DevOps セッションのリソース メニューで、[パイプライン] を選択し、[最初のパイプラインを作成] ペインで [パイプラインの作成] を選択します。

    リソース メニューの [パイプライン] と [パイプラインの作成] ボタンが強調されている [最初のパイプラインを作成] ペインのスクリーンショット。

  2. [接続] タブの [コードはどこにありますか?] ペインで、[Azure リポジトリ Git] を選択します。

    [Azure リポジトリ Git] が選択されている [コードはどこにありますか?] ペインのスクリーンショット。

  3. [選択] タブの [リポジトリの選択] ペインで toy-website を選択します。

    toy-website リポジトリが選択された [パイプラインを構成する] タブを示すスクリーンショット。

  4. [構成] タブの [パイプラインを構成する] ペインで、[既存の Azure Pipelines YAML ファイル] を選択します。

    [既存の Azure Pipelines YAML ファイル] オプションが強調されているスクリーンショット。

  5. [既存の YAML ファイルを選択する] ペインの [パス] ドロップダウンで /deploy/azure-pipelines.yml を選択してから、[続行] を選択します。

    Azure DevOps [既存の YAML ファイルを選択する] ペインのスクリーンショット。[パス] がパイプライン ファイルに設定され、[続行] ボタンが強調表示されています。

    [レビュー] タブの [パイプライン YAML をレビューする] ウィンドウに、YAML パイプラインの定義が新しいパイプラインとして表示されます。

    ヒント

    Azure Pipelines Web インターフェイスには、パイプライン定義の管理に使用できるエディターが用意されています。 このモジュールでは、Visual Studio Code で定義ファイルを操作しますが、Azure Pipelines エディターを調べてその動作を確認することもできます。

  6. [実行] を選択します。

    [パイプラインを作成] フローの [レビュー] ステップが表示され [実行] ボタンが強調されているスクリーンショット。

    Azure Pipelines によってパイプラインが作成され、最初の実行が開始されます。

パイプライン実行を確認する

重要

この Azure DevOps 組織でパイプラインを初めて使用する場合は、次のエラーが表示されることがあります。

No hosted parallelism has been purchased or granted. (ホステッド並列処理が購入も許可もされていません。)

誤用を防ぐために、Azure DevOps では、新しい組織が Microsoft ホステッド パイプライン エージェントを無料で使用する前に、承認される必要があります。

Azure DevOps 組織に無料のパイプライン エージェントへのアクセス権を付与するように依頼するには、このフォームに入力します。

  1. パイプライン実行が開始されると、実行に関する情報がページに表示されます。

    ジョブがキューに登録済み状態になっているパイプラインを示すスクリーンショット。

    各パイプライン実行には識別子が含まれています。 この識別子を使用すると、特定のパイプライン実行を見つけるのに役立ちます。

    ジョブの状態は、最初は [キューに挿入済み] として表示されます。 パイプラインはすぐに開始されない場合があります。 ジョブは、エージェントのキューに追加されます。 エージェントが 1 つ使用可能になると、Azure Pipelines によってそのエージェントが割り当てられ、ジョブが開始されます。 その後、ジョブの状態は [実行中] になります。

    このページには、実行で使用された Git コミットのブランチ名と識別子が含まれています。 この情報は、パイプラインで使用されるリポジトリのコンテンツのバージョンを示します。

  2. ジョブの状態が [成功] に変わるまで、ページを更新します。 その後、[ジョブ] の下で [ジョブ] を選択します。

    ジョブが成功状態になっていてジョブ名が強調されているパイプラインを示すスクリーンショット。

  3. ジョブの情報ページには、パイプラインで実行されたステップのログが表示されます。 [プレースホルダー ステップ] が、左側のメニューの手順に表示されます。

    [プレースホルダー ステップ] が強調されているパイプラインのジョブのログを示すスクリーンショット。

    ジョブのステップの一覧には、自分が作成していないステップが含まれています。 これらのステップは、Azure Pipelines によって自動的に作成されます。 組織によっては、すべてのパイプラインに組織が自動的に含めるステップが表示される場合があります。 任意のステップを選んで、そのステップのログ ファイルを表示できます。

  4. [Checkout toy-website@main to s] を選択します。

    各ステップのログには、パイプライン実行中の正確な処理内容に関する詳細が表示されます。 ログの情報は、パイプラインの問題を診断する必要がある場合に役立ちます。 ステップを実行したエージェントに直接アクセスすることはできません。

    この場合、リポジトリの内容は Azure Repos からエージェントのファイル システムにダウンロードされています。

  5. [Placeholder step] を選択します。

    このステップのログには、パイプラインの YAML ファイルで作成したスクリプトの内容と、スクリプトの実行からの Hello world! テキスト出力が含まれています。

パイプラインの実行と実行に含まれていたコミットを相互参照する方法を理解することをお勧めします。 パイプラインの実行をコミットにリンクすると、デプロイの履歴をトレースし、問題を診断するのに役立ちます。 Azure DevOps には、パイプライン実行をコミットにリンクする方法がいくつか用意されています。 この手順では、コミット履歴を手動で検査します。

  1. リポジトリの概要に戻るには、DevOps リソースのメニューで、[リポジトリ]>[コミット] を選びます。

    コミット識別子と成功状態が強調されているコミット ペインを示すスクリーンショット。

    コミット識別子は、パイプライン実行からメモしたコミット識別子と同じです。 また、コミットに関連付けられているパイプライン実行の状態が Azure Pipelines に表示されます。

  2. コミットを選択します。 変更されたファイルとコミットからの変更の一覧が緑色で強調表示され、すべてのテキストが新しいことが示されます。