OCI DevOpsビルド・パイプラインでのOracle GraalVM

このガイドでは、Oracle Cloud Infrastructure (OCI) DevOpsサービスでOracle GraalVMを使用する方法について説明します。OCI DevOpsは、開発者がOCIコンピュート・プラットフォームへのソフトウェアのデリバリおよびデプロイメントを自動化できるようにする、継続的インテグレーション/継続的デリバリ(CI/CD)サービスです。

ノート: Oracle GraalVMライセンスとサポートは、追加コストなしでOracle Cloud Infrastructureサブスクリプションに含まれています。

OCI DevOpsサービスは、ベース・コンテナ・イメージとしてOracle Linux 7を使用したビルド・ランナーを、多数のランタイムとツールとともに提供します。

Oracle GraalVM RPMはOracle YUMリポジトリにあります。各RPMは自己完結型で、必要なすべての依存性が自動的に取り込まれます。YUMパッケージ・マネージャを使用して、DevOpsビルド・パイプラインでOracle GraalVMをインストールして使用できます。

前提条件

ビルド・パイプラインを使用するには、ビルド仕様ファイルbuild-spec.ymlに文を追加します。DevOps CI/CDプラットフォームはファイルを読み取り、コマンドを1つずつ実行します。YUMパッケージ・マネージャ・コマンドを手動で実行する必要はありません。

Oracle GraalVMのRPMは、graalvm-17-native-imagegraalvm-20-native-imageおよびgraalvm-21-native-imageというパッケージ名で利用できます。各パッケージには、JDKとネイティブ・イメージが含まれています。

DevOpsビルド・パイプラインでOracle GraalVMをインストールして使用するには、次の例に示すようにビルド仕様ファイルを更新します。

  1. ネイティブ・イメージおよびJava Development Kit (JDK)を含むOracle GraalVM for JDK 21をインストールするコマンドを追加します:

     steps:
     - type: Command
         name: "Install Oracle GraalVM for JDK 21"
         command: |
         yum -y install graalvm-21-native-image
    
  2. Oracle GraalVM for JDK 21のJAVA_HOME環境変数を設定するコマンドを追加します:

     env:
     variables:
         "JAVA_HOME" : "/usr/lib64/graalvm/graalvm-java21"
    
  3. PATH環境変数を設定するコマンドを追加します:

     env:
     variables:
         # PATH is a reserved variable and cannot be defined as a variable.
         # PATH can be changed in a build step and the change is visible in subsequent steps.
    
     steps:
     - type: Command
         name: "Set PATH Variable"
         command: |
         export PATH=$JAVA_HOME/bin:$PATH
    

次に、完全なビルド仕様ファイルの例を示します。

Oracle GraalVMには多くの機能があり、それぞれをアドオンとしてインストールできます。yum listコマンドを使用して、インストールに使用可能なRPMのリストを取得します。たとえば、Oracle GraalVM for JDK 21では、次を実行します:

yum list graalvm-21*
...

この機能を試行するには、サンプル・プロジェクト: OCI DevOpsビルド・パイプラインでのOracle GraalVMの使用を使用します。OCI DevOpsサービスでOracle GraalVMを設定する方法、ビルド・パイプラインを作成する方法、ビルド・ステージを追加する方法などについて説明します。