このサンプルテンプレートでは、GitHub からコードをプルし、ソフトウェアパッケージをビルドして、Object Storage Service (OSS) にアップロードする方法について説明します。このテンプレートを使用すると、既存の Elastic Compute Service (ECS) インスタンスのソフトウェアパッケージをビルドできます。また、このテンプレートを使用して、ビルド完了後にリリースされる一時的な ECS インスタンスのソフトウェアパッケージをビルドすることもできます。
前提条件
ECS インスタンスが作成され、ECS インスタンスがインターネットにアクセスできること。詳細については、「ECS インスタンスの作成」および「インターネットアクセスの有効化」をご参照ください。
重要このサンプルテンプレートは、Linux オペレーティングシステムのみをサポートしています。
OSS がアクティブ化され、OSS バケットが作成されていること。詳細については、「OSS のアクティブ化」および「バケットの作成」をご参照ください。
サンプルテンプレート
Object Storage Service (OSS) や GitHub など、コードソースを指定します。CloudOps Orchestration Service (OOS) は、コードソースからコードをプルするための一時 URL を生成します。
JAR パッケージなどのソフトウェアパッケージをビルドし、OSS にアップロードします。
例
コードソースを準備する
この例では、Spring Boot プロジェクトのサンプルコードを使用します。コードは Gitee と GitHub にアップロードされています。コードを使用する場合は、コードを自分のリポジトリにフォークする必要があります。コードアドレス:
テンプレートを作成する
CloudOps Orchestration Service コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択し、[テンプレートの作成] をクリックします。
[acs-ecs-examplesoftwarepacakgebuildfromgit] を選択し、[次のステップ] をクリックします。
[プロセス構成] タブで、パラメーターを設定し、[テンプレートの作成] をクリックします。
一時的な認証リンクを生成するためにコードソースを指定します。
この例では、Gitee をコードソースとして使用します。[所有者]、[組織]、[リポジトリ]、[ブランチ] の各パラメーターを設定します。
説明Alibaba Cloud に GitHub または Gitee リポジトリへのアクセスが許可されていない場合は、[必要な権限を付与する] をクリックします。
サンプルコードをフォークしている場合、アカウントに属するすべてのリポジトリが [リポジトリ] ドロップダウンリストに自動的に表示されます。この場合、コードをフォークしたリポジトリを選択します。

JAR パッケージなどのソフトウェアパッケージをビルドし、OSS にアップロードします。
コードソースと ECS インスタンスを選択し、ビルドコマンドを入力します。

[コードリソース]: この例では、
gitが選択されています。前のタスクの出力であるauthorizedUrlが使用されます。[ビルド ECS の選択]: ECS インスタンスを選択します。[既存の ECS] または [新規 ECS] を選択できます。
説明[新規 ECS] を選択した場合、従量課金制で課金されます。OOS は ECS インスタンスに Docker がインストールされているかどうかを自動的にチェックします。Docker がインストールされていない場合、OOS は ECS インスタンスに Docker Community Edition を自動的にインストールします。
[ビルド構成]: 必要に応じてビルドコマンドを提供します。
このサンプルテンプレートを実行すると、最初に Maven がインストールされ、JAR パッケージが作成されます。JAR パッケージは
targetディレクトリにあります。サンプルを要件を満たすスクリプトに置き換えることができます。サンプルスクリプト (Alibaba Cloud Linux 3)
### sample build script set -e yum install -y maven-3.5.4 mvn packageサンプルスクリプト (Ubuntu)
### sample build script set -e apt install -y maven mvn packageサンプルスクリプト (CentOS)
### sample build script set -e yum install -y maven mvn package
パッケージパスとビルド名を入力します。
次の例では、パッケージパスは
target/です。OOS はパッケージを.tgzファイルに圧縮します。
ビルド出力を OSS にアップロードします。
ソフトウェアパッケージをアップロードする OSS バケットとオブジェクトパスを指定します。

テンプレートの作成 をクリックします。
テンプレートを実行する
CloudOps Orchestration Service コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
カスタムテンプレート ページで、テンプレートを見つけて、[アクション] 列の [実行の作成] をクリックします。
[基本情報] ステップで、パラメーターを設定し、[次のステップ: パラメーター設定] をクリックします。
[パラメーター設定] ステップで、使用可能なパラメーターがない場合は [OK] をクリックします。
[作成] をクリックします。
[タスク実行管理] ページで、実行ステータスが [成功] の場合、実行は完了です。

OSS コンソール にログインします。指定したバケットとパスを探して、アップロードされたソフトウェアパッケージを表示します。

次のステップ
コードが更新された場合は、対応する GitHub リポジトリにコードをプッシュし、テンプレートを再度実行するだけで済みます。その後、OOS はコードソースから最新のコードをプルし、ソフトウェアパッケージを OSS にプッシュします。テンプレートを変更する場合は、テンプレートを変更してから実行します。