方法说明
创建一个App(createApp)。
调用方法
CreateAppResponse createApp(AppDescription appDescription) throws ClientException;CreateAppResponse createApp(CreateAppRequest req) throws ClientException;CreateAppResponse createApp(AppDescription appDescription, String idempotentToken) throws ClientException;
参数说明
| 参数 |
类型 |
是否必需 |
说明 |
| appDescription |
AppDescription |
是 |
创建App的描述。 |
下面类的包名都是: com.aliyuncs.batchcompute.pojo.v20151111
AppDescription 的属性
均有getter和setter方法。
| 属性 |
类型 |
是否必需 |
说明 |
| name |
String |
是 |
App名称。 |
| description |
String |
否 |
简短描述。 |
| inputParameters |
Map<String, InputParameterValue> |
否 |
输入参数描述。 |
| outputParameters |
Map<String, OutputParameterValue> |
否 |
输出参数描述。 |
| docker |
AppDescription.Docker |
否 |
使用Docker配置。Docker和VM必须选一个配置。 |
| vm |
AppDescription.VM |
否 |
使用ECS虚拟机相关配置。Docker和VM必须选一个配置。 |
| commandLine |
String |
是 |
执行应用时的命令行。 |
| envVars |
Map<String, String> |
否 |
环境变量。Map大小不能大于50,不能小于0。对于Key,允许的字符集为[a-zA-Z0-9_-],长度不能大于100。对于Value,长度不能大于1000。默认值:{} |
| daemonize |
Boolean |
否 |
应用在执行时,是否每次都要重新启动。默认值:False |
| config |
AppDescription.Config |
否 |
提交作业时的运行时参数 |
| 参数名称 |
类型 |
必选 |
描述 |
| description |
string |
否 |
参数描述。长度不能大于1000。默认值:空 |
| type |
string |
否 |
参数类型。枚举类型,可选值为:String、Number。默认值:String |
| defaultValue |
Any |
否 |
参数默认值。类型必须与Type指定的类型相同。默认值:null |
| localPath |
string |
否 |
LocalPath不为空说明该参数是OSS上的一个文件或者目录。在计算分析时,系统会将该参数值指定的OSS文件或者目录映射为本地LocalPath指定的文件或者目录。仅支持使用UTF-8编码。如果是目录,则必须以/结尾。长度不能大于1000。默认值:空 |
AppDescription.OutputParameterValue 的属性
| 参数名称 |
类型 |
必选 |
描述 |
| description |
string |
否 |
参数描述。长度不能大于1000。默认值:空 |
| type |
string |
否 |
参数类型。枚举类型,可选值为:String、Number。默认值:String |
| localPath |
string |
否 |
LocalPath不为空说明该参数是OSS上的一个文件或者目录。在计算分析时,系统会将本地LocalPath指定的文件或者目录映射为该参数值指定的OSS文件或者目录。仅支持使用UTF-8编码。如果是目录,则必须以/结尾。长度不能大于1000。默认值:空 |
AppDescription.Docker 的属性
| 参数名称 |
类型 |
必选 |
描述 |
| image |
string |
是 |
Docker镜像。长度不能大于1000 |
| registryOSSPath |
string |
否 |
docker registry storage在OSS上的根目录。长度不能大于1000。默认值:空 |
AppDescription.VM 的属性
| 参数名称 |
类型 |
必选 |
描述 |
| ECSImageId |
string |
是 |
ECS镜像Id。允许的字符集为[a-zA-Z0-9_-],长度不能大于100 |
AppDescription.Config 的属性
| 参数名称 |
类型 |
必选 |
描述 |
| resourceType |
App.ConfigValue |
否 |
资源类型 |
| instanceType |
App.ConfigValue |
否 |
实例类型 |
| instanceCount |
App.ConfigValueInteger |
否 |
实例个数 |
| minDiskSize |
App.ConfigValue |
否 |
最小系统磁盘大小(GB) |
| diskType |
App.ConfigValue |
否 |
系统磁盘类型 |
| maxRetryCount |
App.ConfigValueInteger |
否 |
某个Instance失败后,最大重试次数 |
| timeout |
App.ConfigValueLong |
否 |
Instance的运行时超时时间,单位为秒 |
AppDescription.ConfigValue 的属性
| 参数名称 |
类型 |
必选 |
描述 |
| description |
string |
否 |
给APP使用者的详细描述 |
| defaultValue |
string |
否 |
参数默认值 |
| overwritable |
boolean |
否 |
用户使用该APP提交作业时,是否可以覆盖掉默认值 |
AppDescription.ConfigValueInteger 的属性
| 参数名称 |
类型 |
必选 |
描述 |
| description |
string |
否 |
给APP使用者的详细描述 |
| defaultValue |
int |
否 |
参数默认值 |
| overwritable |
boolean |
否 |
用户使用该APP提交作业时,是否可以覆盖掉默认值 |
AppDescription.ConfigValueLong 的属性
| 参数名称 |
类型 |
必选 |
描述 |
| description |
string |
否 |
给APP使用者的详细描述 |
| defaultValue |
long |
否 |
参数默认值 |
| overwritable |
boolean |
否 |
用户使用该APP提交作业时,是否可以覆盖掉默认值 |
返回值说明
- 创建成功后返回一个CreateAppResponse实例,可以通过 response.getAppName() 获取创建的App名称。
| 类型 |
说明 |
| CreateAppResponse |
可以获取创建成功的AppName。 |
CreateAppResponse的包名为:com.aliyuncs.batchcompute.model.v20151111,下面的其他Response都是在这个包下面。
- 创建失败后,抛出异常: ClientException。
代码示例
try{ CreateAppResponse response = client.createApp(appDescription); String appName = response.getAppName(); //创建成功}catch(ClientException e){ e.printStackTrace(); //创建失败}