流水線任務每次運行時,都會基于基礎鏡像調度一個全新的實例。應用中心會持續維護并更新鏡像,添加或者更新用戶需要的構建工具。當構建工具存在多個版本時,Serverless Devs會默認使用最新的版本,但并不是所有用戶都期望使用最新版本的工具。所以應用中心提供了runtime-setup插件,用于指定默認使用的構建工具版本。本文介紹如何使用runtime-setup插件初始化運行環境。
插件使用
如果期望使用指定版本的構建工具,您需要在使用Serverless Devs前使用runtime-setup插件設置正確的構建工具版本。
在Steps中使用runtime-setup插件
在流水線模板或任務模板中,可以通過執行上下文Steps,使用runtime-setup插件。插件執行完畢后,會將指定版本的構建工具配置到容器中的PATH環境變量中。示例如下。
---
kind: PipelineTemplate
name: mytemplate-<% .git.branch %>
description: cached pipelinetemplate
spec:
context:
data:
envName: test
deployFile: s.yaml
tasks:
# 構建部署
- name: build-and-deploy
context:
data:
enable: true
steps:
# 拉取代碼
- plugin: "@serverless-cd/checkout"
# 初始化s工具
- plugin: "@serverless-cd/s-setup"
# 設置構建工具版本
- plugin: "@serverless-cd/runtime-setup"
inputs:
runtime:
- nodejs14
# - nodejs16
# - python3.9
# - python
# 使用其他插件或腳本,執行任意動作
# - run: make build && make deploy
# - plugin: "@serverless-cd/others"
taskTemplate: serverless-runner-task
---
runtime-setup插件支持的Runtime列表如下所示。
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為默認版本的Runtime。
文檔內容是否對您有幫助?