CI/CDパイプラインの構築について

Oracle Mobile HubにカスタムAPIコードをデプロイするプロセスは、Oracle Mobile Hubコンソールにログインする必要がある場合があります。Oracle Developer Cloud Serviceを使用して、リモートGitリポジトリにコミットをプッシュするたびにコードを配信するCI/CDパイプラインを設定できます。APIコードは、Oracle Developer Cloud ServiceのUnixシェル・ビルダーで実行される単純なスクリプトによって提供されます。

このスクリプトは、開発システムのコマンド行からコードを配布する場合に使用するものと同じです。これは数行までで、Oracle Technology Networkからダウンロードできるカスタム・コード・テスト・ツールに依存します。

アーキテクチャ

このアーキテクチャは、CI/CDプロセスのワークフローを示しています。

CI/CDプロセスのワークフロー

次のシナリオを図に示します。

  1. 開発システムでカスタムAPIコードを開発し、Gitリポジトリでコードを保守します。
  2. コードをリモートGitリポジトリにプッシュしています。Oracle Developer Cloud Serviceにはリモート・リポジトリが表示されますが、同様の機能を提供するサード・パーティ・サービスにあってもかまいません。
  3. 設定したスケジュールでリポジトリがポーリングされます。新しいビルドは、リポジトリで変更が検出された場合に開始されます。リモートGitリポジトリへのコミット直後に開始するように、ビルドを構成することもできます。
  4. ビルドには、ノードおよびプロジェクトの依存性をインストールする単純なスクリプトが含まれ、Oracle Mobile Hubにコードを配信します。配信プロセスでは、Oracle Technical Networkからダウンロードするカスタム・コード・テスト・ツールツールを使用する必要があります。

必要なサービスおよびロールについて

このソリューションは、Oracle Mobile Hubにアクセスする必要があります。Oracle Developer Cloud Serviceを使用してGitリポジトリをホストし、スクリプトを作成できますが、これらの機能を提供するサード・パーティ・サービスは機能します。

各サービスに必要なロールです。

サービス名:ロール 必須対象
Oracle Mobile Hub: ServiceDeployer 構成とメタデータの操作を可能にします。
Oracle Mobile Hub: ServiceDeveloper 一般的な開発とテストへのアクセスを許可します。
Oracle Developer Cloud Service: DEVELOPER_USER DevCSプロジェクトの作成およびアクセスDevCSのすべてのユーザーにこのロールが割り当てられている必要があります。

必要なクラウド・サービスを取得するために、OracleソリューションのOracle Cloudサービスを取得する方法について説明します。