操作场景
Batch 支持以 HTTP 的方式从 .tgz 格式文件里获取代码包,用户可以将代码打包后上传到 COS 里,相比 LOCAL 模式可以更方便地组织代码。
前提条件
操作步骤
查看 Demo
说明:
使用编辑器打开
2_RemoteCodePkg.py
文件。# custom (Change to your info)imageId = "img-m4q71qnf"Application = {"DeliveryForm": "PACKAGE","Command": "python ./codepkg/fib.py","PackagePath": "http://batchdemo-xxxxxxxxx.cos.ap-guangzhou.myqcloud.com/codepkg/codepkg.tgz"}StdoutRedirectPath = "your cos path"StderrRedirectPath = "your cos path"
自定义部分除 Application 以外,都已在前置准备中说明, Application 中配置请参考下表:
配置项 | 描述 |
DeliveryForm | 应用程序的交付方式,包括软件打包、容器镜像、CVM 内部直接运行三种,这里 PACKAGE 代表的是软件打包的方式。 |
PackagePath | 软件包的地址,HTTP 方式提供,必须是 .tgz 格式。Batch 会将这个软件包下载到被调度的 CVM 某个目录下,然后在该目录执行 Command。 |
Command | 任务启动命令,这里直接调用了软件包里的一个 Python 脚本文件,您可以下载软件包并查看里面的文件结构和内容。 |
fib.py
的内容如下fib = lambda n:1 if n<=2 else fib(n-1)+fib(n-2)print("Remote Code Package : %d"%(fib(20)))
提交作业
执行以下命令,执行 Python 脚本。
Demo 中已经通过 Python 脚本 + Batch 命令行工具的形式封装了提交作业流程。
python 2_RemoteCodePkg.py
返回结果如下所示,则表示提交成功。
{"RequestId": "c09e9291-2661-xxxx-8783-72d36f91ec8a","JobId": "job-7xxxx26l"}
查看状态
查看结果
1. 步骤同简单开始中的 查看结果。
2.
2_RemoteCodePkg.py
的执行结果如下:Remote Code Package : 6765