Code Engine

IBM Cloud Code Engine Code Engine はサービス・デスティネーションを表し、受信した通知をプログラムで消費することができる。 たとえば、イベントに関する通知を受信すると、その通知の内容に基づいて、バックエンドのマイクロサービスへの「 Code Engine 」宛先が動作を開始することがあります。

Code Engine の送信先を設定する

run type ジョブのデスティネーションとして Code Engine を設定する前に、 Event Notifications インスタンスと同じアカウント Code Engine プロジェクトが 作成され、ジョブが設定されて いることを確認してください。

run type ジョブがある場合、 Event Notifications CLIまたはAPIを使用して Code Engine ジョブをデスティネーションとして設定している場合は、サービス間のアクセスを許可する権限を有効にしていることを確認してください。 詳しくは、許可を使用した、サービス間のアクセス権限の付与を参照してください。

Code Engine の送信先を設定するには、以下の手順を実行してください

  1. Event Notifications のインスタンスで、「 Destinations 」をクリックします。

  2. [ 作成 ] をクリックして、新しい宛先を追加します。

  3. [ 宛先を作成 ] ダイアログに、以下の宛先の詳細を入力してください:

    • 名前 :宛先の名前を入力してください。
    • 説明 :必要に応じて、目的地の説明を入力してください。
    • 種類 :「 目的地 」の項目で、 Code Engine リストから目的地の種類を選択してください。
    • 実行タイプ : Code Engine ジョブまたは Code Engine アプリケーションから1つを選択してください。

    選択した実行タイプが「ジョブ」の場合は、以下の詳細情報を入力してください:

    • プロジェクト名 :リストから「 Code Engine 」プロジェクト名を選択してください。 それ以外の場合は、「 新しいプロジェクトを作成 」をクリックして、 Code Engine プロジェクトを作成してください。

      Code Engine プロジェクトを選択すると、サービス間の認証がまだ存在しない場合、2つのサービスインスタンス間で内部的に認証が設定されます。

    • ジョブ名 :リストからジョブ名を選択してください。

    選択した実行タイプが「アプリケーション」の場合は、以下の詳細情報を入力してください:

    • URL: Code Engine アプリケーションにアクセスするには、 URL ( HTTPS のみ)にアクセスしてください。
    • 動詞 :呼び出す動詞(GET または POST)を選択してください。
    • ヘッダー :必要に応じて、 Code Engine アプリケーションに渡すヘッダーのリストを入力してください。
  4. [ 宛先を作成 ] をクリックします。

Event Notifications Code Engine 関数に対応しました。

許可を使用した、サービス間のアクセス権限の付与

IBM Cloud® Identity and Access Management (IAM) を使用して、あるサービスに別のサービスへのアクセス権限を付与する許可を作成または削除します。

コンソールでの許可の作成

  1. IBM Cloud コンソールで、「管理」 > **「アクセス (IAM)」をクリックし、「許可」**を選択します。

  2. 「作成」 をクリックします。

  3. ソース・アカウントを選択します。

    • ターゲット・サービスへのアクセスを必要とするソース・サービスがこのアカウント内にある場合は、**「このアカウント」**を選択します。
  4. 次のようなソースサービスを選択します。 Event Notifications.

  5. 選択した属性に基づいて、すべてのリソースに対する権限を付与するか、リソースに対する権限を付与するかを指定します。 選択した属性に基づいてリソースを選択した場合は、 「属性の追加」(ソース・リソース・グループのみ、またはソース・サービス・インスタンスのみ) を指定します。

  6. 「ターゲット・サービス」 として Code Engine を選択します。

  7. 対象サービスについて、認証の対象をすべてのプロジェクトとするか、 アカウント内の特定のプロジェクトのみとするか、あるいは特定のリソースグループ内のプロジェクトのみとするかを指定してください。

  8. 両方の役割 (ビューアーとライター) を選択して、ターゲット・サービスにアクセスするソース・サービスへのアクセス権限を割り当てます。

    サービス間の認証で、これら2つの役割(リーダーまたはライター)のうち1つだけを選択した場合、ジョブのトリガーや宛先の設定はできません。 このような場合、サービス間の認証失敗のエラーが発生する。 両方のロールが選択された状態で、サービス間の認可を再作成してください。

  9. 「許可」 をクリックします。

CLI を使用した許可の作成

ソース・サービスにターゲット・サービスへのアクセスを許可するには、ibmcloud iam authorization-policy-create コマンドを実行します。

このコマンドで利用可能なすべてのパラメーターについて詳しくは、ibmcloud iam authorization-policy-create を参照してください。

Code Engine ジョブでのイベント・ペイロードへのアクセス

イベントペイロードは、環境変数を使って Code Engine ジョブに送信されている。この環境変数は、 ibmendata 環境変数を使って取得できる。

Code Engine 宛先構成のテスト

Code Engine の送信先は、送信先の横にあるオプションメニューでテストすることができます。 ワンクリックで、指定された設定が正しいかどうかを確認できます。

デスティネーションのテストの詳細については、「 デスティネーションのテスト 」を参照してください。

Code Engine 再試行ポリシー

Code Engine に通知を送信する際、ネットワークエラーやアプリケーションの不具合などの問題により、リクエストに失敗することがある。 Event Notifications は、失敗したリクエストを自動的に再試行し、回復力を提供する。

再試行回数、遅延、タイムアウト値などの再試行動作の詳細については、 宛先の再試行ポリシーを 参照してください。