演習 - GitHub Actions を使用して更新を自動化する

完了

GitHub Actions は、Azure SQL Database などの多くのさまざまなサービスの CI/CD パイプラインを自動化する方法です。

バス乗車のシナリオでは、データベースを使用してアプリケーションの基盤を構築することを思い出してください。 データベースを更新する場合、または同じ構成を新しいデータベースに自動的にデプロイする場合、GitHub Actions を使用することができます。

更新を自動化するには、GitHub シークレットと yaml ファイルを構成する必要があります。 これらの設定が完了すると、プッシュされた新しいコミットによってワークフローがトリガーされ、その後、新しい Azure SQL Database またはその他のサービスが更新されます。

GitHub を使用してシークレットを安全に構成する

GitHub シークレットでは、シークレット、キー、その他の機密情報を GitHub に安全に格納する方法が導入されます。 このセクションでは、Azure SQL Database の接続文字列を含む新しい GitHub シークレットを作成します。

  1. テキスト ファイル、メモ帳、または用紙上で、Azure SQL Database の接続文字列を判別します。 これは Server=<server-name>.database.windows.net,1433;Initial Catalog=bus-db;User Id=cloudadmin;Password=<your-password>;Connection Timeout=30; のようになっています。

  2. GitHub でこのモジュールのリポジトリに移動します (サインインしていることを確認してください)。 これは https://github.com/<your-git-username>/serverless-full-stack-apps-azure-sql のようになっています。

  3. リポジトリの [Settings](設定) を選択します。

  4. [シークレットと変数]>[アクション]>[新しいリポジトリ シークレット] の順に選択し、次の情報を入力します。

    1. [Name](名前): AZURE_SQL_CONNECTION_STRING
    2. シークレット: 前の手順の接続文字列
  5. [Add secret](シークレットの追加) を選択します。

GitHub Actions 用に yaml ファイルを構成する

コード リポジトリには、いくつかのテンプレート yaml ファイルが用意されています。 このモジュールでは、Azure SQL Database のワークフロー ファイルのみを使用します。

  1. Visual Studio Code のアクティビティ バーで、[エクスプローラー] アイコンを選択し、リポジトリ ファイルを表示します。 それらが表示されない場合、[ファイル]>[フォルダーを開く] を選択し、リポジトリを複製した場所に移動します。

  2. フォルダー .github\workflows の下で、azuresqldatabase.yml.template の名前を azuresqldatabase.yml に変更します。

  3. テンプレートを確認し、ワークフローで実行される内容と、それによってデータベースがどのように更新されるかを理解してください。

Visual Studio Code と GitHub を使用してコミットをプッシュし結果を監視する

GitHub シークレットとワークフロー ファイルが構成されたので、コミットをプッシュしてワークフローを観察する準備ができました。

  1. アクティビティ バーの [ソース管理] アイコンを選択します。

  2. [メッセージ] ボックスに、"Enable database yaml" またはその他のメッセージを入力します。

  3. チェックマークをオンにします。 ファイルをステージングせずにコミットすることに関する警告が表示された場合は、[はい] を選択して、変更されたファイルをステージングできます。

  4. [...]>[プッシュ] を選択します。 これにより、GitHub でホストされているリポジトリに更新がプッシュされ、すべての GitHub Actions が開始されます。

    重要

    ログインを求めるメッセージが表示された場合は、GitHub のユーザー名を使用し、GitHub のパスワードの代わりに指定する個人用アクセス トークンを取得する必要があります。 これは、https://github.com/settings/tokens/new に移動して行うことができます。 メモ VSCode を追加し、すべてのボックスをオンにして、[トークンの生成] を選択します。 トークンのテキストをコピーし、安全な場所に格納します。 Visual Studio Code に戻り、このトークンを GitHub にログインするためのパスワード/トークンとして使用します。

  5. このモジュールの GitHub リポジトリに移動し、[アクション] を選択します。 GitHub Actions を使用すると、お使いのリポジトリ内でソフトウェア開発ワークフローを自動化、カスタマイズ、実行できます。

  6. 実行中の (または完了した) ワークフローの内容を確認します。 Azure SQL Action でリポジトリ内の .dacpac ファイルを使用して、データベースの最後の状態を Azure SQL Database にどのようにデプロイするかに注意してください。