如何正确配置Jelastic Cloud API中utils.scheduler.CreateEnvTask的script参数?
解决Jelastic Cloud API
utils.scheduler.CreateEnvTask 脚本找不到的问题 你的问题根源在于script参数使用了API端点路径(environment.control.stopenv),而非Jelastic调度器识别的内置任务别名。以下是正确的配置方式:
正确请求示例
curl -X POST "JELASTIC_API_URL/utils/scheduler/rest/createenvtask" \ -d "session=API_ACCESS_TOKEN" \ -d "envName=ENV_NAME" \ -d "script=stopEnv" \ -d "trigger=once_delay:3600000" \ -H "Content-Type: application/x-www-form-urlencoded"
参数说明
script 格式要求
对于Jelastic内置的调度任务,必须使用预定义的任务别名,而非API端点的点分隔路径。常见内置别名包括:
stopEnv:停止指定环境(对应你需要的功能)startEnv:启动指定环境restartEnv:重启指定环境destroyEnv:销毁指定环境
trigger 参数
你使用的once_delay:3600000格式是正确的,代表延迟1小时(3600000毫秒)后执行一次任务。
关于你的额外发现
当拼写错误端点名称时,API会将错误的端点路径与你传入的script值拼接,这说明调度器在异常场景下会尝试结合上下文路径解析,但正常使用时只需传入标准任务别名即可。
服务商回复说明
若服务商提到需要非公开API,可能是其定制化环境的限制,但在标准Jelastic环境中,使用上述公开API和内置任务别名即可实现定时停止环境的需求。
内容的提问来源于stack exchange,提问作者Yale
相关产品推荐
相关产品推荐

