DescribeJob - 获取任务模板配置信息

调用DescribeJob接口获取任务模板配置信息。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
sae:DescribeJob
  • 全部资源
    *

请求语法

GET /pop/v1/sam/job/describeJob HTTP/1.1

请求参数

名称类型必填描述示例值
AppIdstring

任务模板 ID。

7171a6ca-d1cd-4928-8642-7d5cfe69****
JobIdstring

任务 ID。

event-b798157b-40a2-4388-b578-71fb897103**-**

返回参数

名称类型描述示例值
object

返回数据。

RequestIdstring

请求 ID。

01CF26C7-00A3-4AA6-BA76-7E95F2A3****
Messagestring

调用结果的附加信息。

success
TraceIdstring

调用链 ID,用于精确查询调用信息。

ac1a0b2215622246421415014e****
Dataobject

任务模板信息。

VpcIdstring

VPC ID。

vpc-2ze0i263cnn311nvj****
ConfigMapMountDescarray<object>

ConfigMap 信息。

ConfigMapMountDescobject

ConfigMap 信息。

Keystring

ConfigMap 键值对。

k1
ConfigMapNamestring

ConfigMap 名称。

test
MountPathstring

容器挂载路径。

/tmp
ConfigMapIdlong

ConfigMap ID。

1
SecurityGroupIdstring

安全组 ID。

sg-wz969ngg2e49q5i4****
Jdkstring

部署包依赖的 JDK 版本。支持版本如下:

  • Open JDK 8
  • Open JDK 7
  • Dragonwell 11
  • Dragonwell 8
  • openjdk-8u191-jdk-alpine3.9
  • openjdk-7u201-jdk-alpine3.9

Package TypeImage 时不支持。

Open JDK 8
ImageUrlstring

镜像地址。当Package TypeImage 时必填。

docker.io/library/nginx:1.14.2
SlsConfigsstring

日志采集到 SLS 的配置。

  • 使用 SAE 自动创建的 SLS 资源:[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]
  • 使用自定义的 SLS 资源:[{"projectName":"test-sls","logType":"stdout","logDir":"","logstoreName":"sae","logtailName":""},{"projectName":"test","logDir":"/tmp/a.log","logstoreName":"sae","logtailName":""}]

参数说明如下:

  • projectName:配置 SLS 上的 Project 名称。
  • logDir:日志路径。
  • logType:日志类型。stdout 表示容器标准输出日志,仅可设置 1 条;如果不设置,则表示收集文件日志。
  • logstoreName:配置 SLS 上的 Logstore 名称。
  • logtailName:配置 SLS 上的 Logtail 名称,如果不指定,则表示新建 Logtail。

多次部署时如果 SLS 采集配置没有变更,则不需要设置该参数(即请求中无需包含 SlsConfigs 字段);如果不再需要使用 SLS 采集功能,您需要在请求中将该字段的值设置为空字符串(即请求中 SlsConfigs 字段的值为"")。

[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}]
Tagsarray<object>

标签信息。

Tagobject

标签信息。

Keystring

标签键。

k1
Valuestring

标签值。

v1
PackageUrlstring

部署包地址。当Package TypeFatJarWar 时必填。

https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war
PackageTypestring

任务包类型。取值说明如下:

  • 当您选择用 Java 部署时,支持 FatJarWarImage
  • 当您选择用 PHP 部署时,支持类型如下:
    • PhpZip
    • IMAGE_PHP_5_4
    • IMAGE_PHP_5_4_ALPINE
    • IMAGE_PHP_5_5
    • IMAGE_PHP_5_5_ALPINE
    • IMAGE_PHP_5_6
    • IMAGE_PHP_5_6_ALPINE
    • IMAGE_PHP_7_0
    • IMAGE_PHP_7_0_ALPINE
    • IMAGE_PHP_7_1
    • IMAGE_PHP_7_1_ALPINE
    • IMAGE_PHP_7_2
    • IMAGE_PHP_7_2_ALPINE
    • IMAGE_PHP_7_3
    • IMAGE_PHP_7_3_ALPINE
  • 当您选择用 Python 部署时,支持 PythonZipImage
War
PreStopstring

容器停止前执行脚本。在容器被删除前触发执行一段脚本,格式如:{"exec":{"command":\["cat","/etc/group"\]}}

{"exec":{"command":["cat","/etc/group"]}}
PackageVersionstring

部署包的版本号。当Package TypeFatJarWar 时必填。

1.0
JarStartArgsstring

JAR 包启动任务参数。任务默认启动命令:$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs

start
AppNamestring

任务模板名称。

demo-app
AppIdstring

任务模板 ID。

7171a6ca-d1cd-4928-8642-7d5cfe69****
JarStartOptionsstring

JAR 包启动任务选项。任务默认启动命令:$JAVA_HOME/bin/java $JarStartOptions -jar $CATALINA_OPTS "$package_path" $JarStartArgs

-Dtest=true
Replicasinteger

任务实例个数。

2
Memoryinteger

每个实例所需的内存,单位为 MB,不能为 0。与 CPU 为一一对应关系,目前仅支持以下固定规格:

  • 1024:对应 CPU 为 500 毫核和 1000 毫核。
  • 2048:对应 CPU 为 500、1000 毫核和 2000 毫核。
  • 4096:对应 CPU 为 1000、2000 毫核和 4000 毫核。
  • 8192:对应 CPU 为 2000、4000 毫核和 8000 毫核。
  • 12288:对应 CPU 为 12000 毫核。
  • 16384:对应 CPU 为 4000、8000 毫核和 16000 毫核。
  • 24576:对应 CPU 为 12000 毫核。
  • 32768:对应 CPU 为 16000 毫核。
  • 65536:对应 CPU 为 8000、16000 和 32000 毫核。
  • 131072:对应 CPU 为 32000 毫核。
2048
PhpConfigstring

PHP 配置文件内容。

k1=v1
PhpConfigLocationstring

PHP 任务启动配置挂载路径,需要您保证 PHP 服务器会使用这个配置文件启动。

/usr/local/etc/php/php.ini
PostStartstring

容器启动后执行脚本。在容器被创建后立刻触发执行一段脚本,格式如:{"exec":{"command":\["cat","/etc/group"\]}}

{"exec":{"command":["cat","/etc/group"]}}
TerminationGracePeriodSecondsinteger

优雅下线超时时间,默认为 30,单位为秒。取值范围为 1~300。

10
CommandArgsstring

镜像启动命令参数。启动命令 Command 所需参数。格式如下:

["a","b"]

Command 参数的示例中,CommandArgs=["abc", ">", "file0"],其中["abc", ">", "file0"]需要转成 String 类型,里面的格式为 JSON 数组。如果无此参数,则无需填写。

["a","b"]
NamespaceIdstring

命名空间 ID。

cn-beijing:test
MountHoststring

NAS 在任务模板 VPC 内的挂载点。部署时如果配置没有变更,则不需要设置该参数(即请求中无需包含 MountHost 字段);如果需要清除 NAS 配置,您需要在请求中将该字段的值设置为空字符串(即请求中 MountHost 字段的值为"")。

example.com
TomcatConfigstring

Tomcat 文件配置,设置为""或"{}"表示删除配置:

  • port:端口范围为 1024~65535,小于 1024 的端口需要 Root 权限才能操作。因为容器配置的是 Admin 权限,所以请填写大于 1024 的端口。如果不配置,则默认为 8080。
  • contextPath:访问路径,默认为根目录"/"。
  • maxThreads:配置连接池的连接数大小,默认大小为 400。
  • uriEncoding:Tomcat 的编码格式,包括UTF-8ISO-8859-1GBKGB2312。如果不设置,则默认为ISO-8859-1
  • useBodyEncoding:是否使用BodyEncoding for URL,默认为 true
{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true}
RegionIdstring

地域 ID。

cn-beijing
VSwitchIdstring

vSwitch ID。

vsw-2ze559r1z1bpwqxwp****
Cpuinteger

每个实例所需的 CPU,单位为毫核,不能为 0。目前仅支持以下固定规格:

  • 500
  • 1000
  • 2000
  • 4000
  • 8000
  • 16000
  • 32000
1000
Envsstring

容器环境变量参数。支持自定义或引用配置项。如需引用配置项,请先创建 ConfigMap 实例。更多信息,请参见 CreateConfigMap 。取值说明如下:

  • 自定义配置
    • name:环境变量名称。
    • value:环境变量值。
  • 引用配置项
    • name:环境变量名称。支持引用单个或全部键,如果引用全部键,需输入sae-sys-configmap-all-<配置项名称>,例如sae-sys-configmap-all-test1
    • valueFrom:环境变量引用。取值为configMapRef
    • configMapId:配置项 ID。
    • key:键。如果引用全部健值,则不设置该字段。
[{"name":"TEST_ENV_KEY","value":"TEST_ENV_VAR"}]
MountDescarray<object>

挂载描述信息。

MountDescobject

挂载描述信息。

MountPathstring

容器挂载路径。

/tmp
NasPathstring

NAS 相对文件目录。

/
CustomHostAliasstring

容器内自定义 Host 映射。取值说明如下:

  • hostName:域名或主机名。
  • ip:IP 地址。
[{"hostName":"test.host.name","ip":"0.0.0.0"}]
WebContainerstring

部署包依赖的 Tomcat 版本。支持版本如下:

  • apache-tomcat-7.0.91
  • apache-tomcat-8.5.42

Package TypeImage 时不支持。

apache-tomcat-7.0.91
Commandstring

镜像启动命令。该命令必须为容器内存在的可执行的对象。示例如下:

command:
      - echo
      - abc
      - >
      - file0

根据上述示例,则Command="echo", CommandArgs=["abc", ">", "file0"]

echo
WarStartOptionsstring

WAR 包启动任务选项。任务默认启动命令:java $JAVA_OPTS $CATALINA_OPTS -Options org.apache.catalina.startup.Bootstrap "$@" start

custom-option
NasIdstring

NAS ID。

AKSN89**
OssAkIdstring

OSS 读写的 AccessKey ID。

xxxxxx
OssAkSecretstring

OSS 读写的 AccessKey Secret。

xxxxxx
OssMountDescsarray<object>

OSS 挂载描述信息。

ossMountDescobject

OSS 挂载描述信息。

bucketNamestring

Bucket 名称。

oss-bucket
bucketPathstring

您在 OSS 创建的目录或 OSS 对象,如果 OSS 挂载目录不存在,会触发异常。

data/user.data
mountPathstring

您在 SAE 的容器路径。如果路径已存在,为覆盖关系;如果路径不存在,会新建。

/usr/data/user.data
readOnlyboolean

容器路径是否对挂载目录资源有可读权限,取值说明如下:

  • true:只读权限。
  • false:读写权限。
true
EdasContainerVersionstring

HSF 框架中任务运行环境版本,例如 Ali-Tomcat 容器。

3.5.3
Timezonestring

时区,默认为Asia/Shanghai

Asia/Shanghai
AppDescriptionstring

任务模板描述信息。

示例应用
AcrInstanceIdstring

ACR 企业版实例 ID。

cri-xxxxxx
AcrAssumeRoleArnstring

跨账号拉取镜像时所需的 RAM 角色的 ARN。更多信息,请参见跨账号拉取阿里云镜像通过 RAM 角色实现跨云账号授权

acs:ram::123456789012****:role/adminrole
ImagePullSecretsstring

对应保密字典 ID。

10
TriggerConfigstring

任务触发配置,根据任务类型进行配置。

  • 定时任务type 字段设为 time,config 字段为具体 Cron 表达式,timezone 字段为指定时区。 配置示例:{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}
  • 一次性任务type 字段设为 http,config 配置具体的 HTTP 触发规则。更多信息,请参见请求参数 SourceHttpEventParameters。 配置示例:{"type":"http","config":{"type":"HTTPS","method"、["GET"],"ip":[],"referer":[],"securityConfig":"none"}}
{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"}
ConcurrencyPolicystring

任务并发策略。取值说明如下:

  • Forbid:禁止并发运行,在前一个任务未完成时,不创建新任务。
  • Allow:允许并发运行任务。
  • Replace:当到达新任务创建时间点,而前一个任务未完成时,新的任务会取代前一个任务。
Allow
Suspendboolean

是否暂停任务模板。

false
Timeoutlong

任务超时时间,单位为秒。

3600
BackoffLimitlong

任务重试次数。

3
Sliceboolean

启用任务分片。

true
SliceEnvsstring

任务分片参数。

SliceEnvs
RefAppIdstring

引用的任务模板 ID。

7171a6ca-d1cd-4928-8642-7d5cfe69****
RefedAppIdsarray

被引用的任务目标 ID 列表。

appIdstring

任务模板 ID。

8621a6ca-d1cd-4928-8642-7d5cfe69****
PublicWebHookUrlsarray

一次性任务的公网请求 URL 列表。

publicWebHookUrlstring

公网 URL。

http://***/webhook/putEvents?token=***
VpcWebHookUrlsarray

一次性任务的内网请求 URL 列表。

vpcWebHookUrlstring

内网 URL。

http://***/webhook/putEvents?token=***
ProgrammingLanguagestring

创建任务模板的技术栈语言。取值说明如下:

  • java:Java 语言。
  • php:PHP 语言。
  • python:Python 语言。
  • other:多语言,例如 C++、Go、.NET 和 Node.js 等。
java
NasConfigsstring

挂载 NAS 的配置。

[{"mountPath":"/test1","readOnly":false,"nasId":"nasId1","mountDomain":"nasId1.cn-shenzhen.nas.aliyuncs.com","nasPath":"/test1"},{"nasId":"nasId2","mountDomain":"nasId2.cn-shenzhen.nas.aliyuncs.com","readOnly":false,"nasPath":"/test2","mountPath":"/test2"}]
Pythonstring

Python 环境。支持 PYTHON 3.9.15。

PYTHON 3.9.15
PythonModulesstring

自定义安装模块依赖。默认安装根目录下 requirements.txt 定义的依赖项。如果未配置或自定义软件包,可以指定安装的依赖。

Flask==2.0
ErrorCodestring

错误码。取值说明如下:

  • 请求成功:不返回 ErrorCode 字段。
  • 请求失败:返回 ErrorCode 字段。具体信息,请参见本文的错误码列表。
Codestring

接口状态或 POP 错误码。取值说明如下:

  • 2xx:成功。
  • 3xx:重定向。
  • 4xx:请求错误。
  • 5xx:服务器错误。
200
Successboolean

获取任务模板配置信息是否成功。取值说明如下:

  • true:获取成功。
  • false:获取失败。
true

示例

正常返回示例

JSON格式

{
  "RequestId": "01CF26C7-00A3-4AA6-BA76-7E95F2A3****",
  "Message": "success",
  "TraceId": "ac1a0b2215622246421415014e****",
  "Data": {
    "VpcId": "vpc-2ze0i263cnn311nvj****",
    "ConfigMapMountDesc": [
      {
        "Key": "k1",
        "ConfigMapName": "test",
        "MountPath": "/tmp",
        "ConfigMapId": 1
      }
    ],
    "SecurityGroupId": "sg-wz969ngg2e49q5i4****",
    "Jdk": "Open JDK 8",
    "ImageUrl": "docker.io/library/nginx:1.14.2",
    "SlsConfigs": "[{\"logDir\":\"\",\"logType\":\"stdout\"},{\"logDir\":\"/tmp/a.log\"}]",
    "Tags": [
      {
        "Key": "k1",
        "Value": "v1"
      }
    ],
    "PackageUrl": "https://edas-bj.oss-cn-beijing.aliyuncs.com/apps/K8s_APP_ID/d4c97c37-aba3-403e-ae1e-6f7d8742****/hello-sae.war",
    "PackageType": "War",
    "PreStop": "{\"exec\":{\"command\":[\"cat\",\"/etc/group\"]}}",
    "PackageVersion": "1.0",
    "JarStartArgs": "start",
    "AppName": "demo-app",
    "AppId": "7171a6ca-d1cd-4928-8642-7d5cfe69****",
    "JarStartOptions": "-Dtest=true",
    "Replicas": 2,
    "Memory": 2048,
    "PhpConfig": "k1=v1",
    "PhpConfigLocation": "/usr/local/etc/php/php.ini",
    "PostStart": "{\"exec\":{\"command\":[\"cat\",\"/etc/group\"]}}",
    "TerminationGracePeriodSeconds": 10,
    "CommandArgs": "[\"a\",\"b\"]",
    "NamespaceId": "cn-beijing:test",
    "MountHost": "example.com",
    "TomcatConfig": "{\"port\":8080,\"contextPath\":\"/\",\"maxThreads\":400,\"uriEncoding\":\"ISO-8859-1\",\"useBodyEncodingForUri\":true}",
    "RegionId": "cn-beijing",
    "VSwitchId": "vsw-2ze559r1z1bpwqxwp****",
    "Cpu": 1000,
    "Envs": "[{\"name\":\"TEST_ENV_KEY\",\"value\":\"TEST_ENV_VAR\"}]",
    "MountDesc": [
      {
        "MountPath": "/tmp",
        "NasPath": "/"
      }
    ],
    "CustomHostAlias": "[{\"hostName\":\"test.host.name\",\"ip\":\"0.0.0.0\"}]",
    "WebContainer": "apache-tomcat-7.0.91",
    "Command": "echo",
    "WarStartOptions": "custom-option",
    "NasId": "AKSN89**",
    "OssAkId": "xxxxxx",
    "OssAkSecret": "xxxxxx",
    "OssMountDescs": [
      {
        "bucketName": "oss-bucket",
        "bucketPath": "data/user.data",
        "mountPath": "/usr/data/user.data",
        "readOnly": true
      }
    ],
    "EdasContainerVersion": "3.5.3",
    "Timezone": "Asia/Shanghai",
    "AppDescription": "示例应用",
    "AcrInstanceId": "cri-xxxxxx",
    "AcrAssumeRoleArn": "acs:ram::123456789012****:role/adminrole",
    "ImagePullSecrets": "10",
    "TriggerConfig": "{\"type\":\"time\",\"config\":\"0 1 */1 * ?\",\"timezone\":\"GMT+8:00\"}",
    "ConcurrencyPolicy": "Allow",
    "Suspend": false,
    "Timeout": 3600,
    "BackoffLimit": 3,
    "Slice": true,
    "SliceEnvs": "SliceEnvs",
    "RefAppId": "7171a6ca-d1cd-4928-8642-7d5cfe69****",
    "RefedAppIds": [
      "8621a6ca-d1cd-4928-8642-7d5cfe69****"
    ],
    "PublicWebHookUrls": [
      "http://***/webhook/putEvents?token=***"
    ],
    "VpcWebHookUrls": [
      "http://***/webhook/putEvents?token=***"
    ],
    "ProgrammingLanguage": "java",
    "NasConfigs": "[{\"mountPath\":\"/test1\",\"readOnly\":false,\"nasId\":\"nasId1\",\"mountDomain\":\"nasId1.cn-shenzhen.nas.aliyuncs.com\",\"nasPath\":\"/test1\"},{\"nasId\":\"nasId2\",\"mountDomain\":\"nasId2.cn-shenzhen.nas.aliyuncs.com\",\"readOnly\":false,\"nasPath\":\"/test2\",\"mountPath\":\"/test2\"}]",
    "Python": "PYTHON 3.9.15",
    "PythonModules": "Flask==2.0"
  },
  "ErrorCode": "空",
  "Code": "200",
  "Success": true
}

错误码

HTTP status code错误码错误信息描述
404InvalidAppId.NotFoundThe specified AppId does not exist.指定的AppId不存在。

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
暂无变更历史