パイプラインタスクが実行されるたびに、ベースイメージに基づいて新しいインスタンスが割り当てられます。 サーバーレスアプリケーションセンターは、イメージを継続的に維持および更新し、必要なビルドツールを追加または更新します。 ビルドツールに複数のバージョンが存在する場合、Serverless Devsはデフォルトで最新バージョンを使用します。 ただし、以前のバージョンを使用するユーザーもいます。 サーバーレスアプリケーションセンターは、ビルドツールのバージョンを指定するためのランタイムセットアッププラグインを提供します。 このトピックでは、ランタイムセットアッププラグインを使用してランタイムを初期化する方法について説明します。
runtime-setupプラグインの使用
特定のバージョンのビルドツールを使用する場合は、Serverless Devsを使用する前に、ランタイムセットアッププラグインを使用してビルドツールのバージョンを指定できます。
ランタイムセットアッププラグインをステップで使用する
パイプラインテンプレートまたはタスクテンプレートでは、コンテキストでステップを実行することで、ランタイムセットアッププラグインを使用できます。 部品が実行されると、指定されたバージョンのビルドツールがコンテナ内のPATH環境変数に設定されます。 例:
---
kind: PipelineTemplate
name: mytemplate-<% .git.branch %>
description: cached pipelinetemplate
spec:
context:
data:
envName: test
deployFile: s.yaml
tasks:
# Build and deploy
- name: build-and-deploy
context:
data:
enable: true
steps:
# Pull code.
- plugin: "@serverless-cd/checkout"
# Initialize Serverless Devs.
- plugin: "@serverless-cd/s-setup"
# Use other plug-ins or scripts to perform actions.
# - run: make build && make deploy
# - plugin: "@serverless-cd/others"
taskTemplate: serverless-runner-task
---
ランタイムセットアッププラグインでサポートされているランタイムを次に示します。
nodejs12
nodejs14
nodejs16
nodejs18
nodejs20
java8
java11
java17
python2.7
python3.6
python3.7
python3.9
python3.10
go1.18
go1.19
go1.20
go1.21
その中で、nodejs14、java8、python3.9、およびgo1.18は、各プログラミング言語のデフォルトバージョンです。