Llama a la API UpdateJob para actualizar una plantilla de trabajo.
Pruébelo ahora
Test
Autorización de RAM
|
Action |
Nivel de acceso |
Tipo de recurso |
Clave de condición |
Acción dependiente |
|
sae:UpdateJob |
update |
*All Resource
|
Ninguna | Ninguna |
Sintaxis de la solicitud
POST /pop/v1/sam/job/updateJob HTTP/1.1
Parámetros de la solicitud
|
Parámetro |
Tipo |
Obligatorio |
Descripción |
Ejemplo |
| AppId |
string |
Sí |
El ID de la plantilla de trabajo que se va a actualizar. |
7171a6ca-d1cd-4928-8642-7d5cfe69**** |
| Jdk |
string |
No |
La versión de Java Development Kit (JDK) de la que depende el paquete de despliegue. Se admiten las siguientes versiones:
Este parámetro no es compatible cuando Package Type está establecido en Image. |
Open JDK 8 |
| WebContainer |
string |
No |
La versión de Tomcat de la que depende el paquete de despliegue. Se admiten las siguientes versiones:
Este parámetro no es compatible cuando Package Type está establecido en Image. |
apache-tomcat-7.0.91 |
| PackageVersion |
string |
No |
La versión del paquete de despliegue. Este parámetro es obligatorio si Package Type está establecido en FatJar, War o PythonZip. |
1.0.1 |
| PackageUrl |
string |
No |
La URL del paquete de despliegue. Este parámetro es obligatorio si Package Type está establecido en FatJar, War o PythonZip. |
http://myoss.oss-cn-hangzhou.aliyuncs.com/my-buc/2019-06-30/****.jar |
| ImageUrl |
string |
No |
La URL de la imagen. Este parámetro es obligatorio si Package Type está establecido en Image. |
registry.cn-hangzhou.aliyuncs.com/sae_test/ali_sae_test:0.0.1 |
| Command |
string |
No |
El comando de inicio de la imagen. El comando debe ser un objeto ejecutable que exista en el contenedor. Ejemplo:
En este ejemplo, |
echo |
| CommandArgs |
string |
No |
Los argumentos del Command de inicio de la imagen. El valor debe ser una matriz JSON convertida a cadena. Formato:
En el ejemplo anterior, |
["a","b"] |
| Envs |
string |
No |
Las variables de entorno del contenedor. Puede personalizar variables de entorno o hacer referencia a variables de un ConfigMap. Para hacer referencia a un ConfigMap, primero debe crear una instancia de ConfigMap. Para obtener más información, consulte CreateConfigMap. El valor es una cadena JSON. Se admiten los siguientes campos:
|
[{"name":"envtmp","value":"0"}] |
| CustomHostAlias |
string |
No |
La asignación personalizada entre un nombre de host y una dirección IP en el contenedor. El valor es una cadena JSON. Se admiten los siguientes campos:
|
[{"hostName":"samplehost","ip":"127.0.0.1"}] |
| JarStartOptions |
string |
No |
Las opciones del paquete JAR para iniciar la aplicación. El comando de inicio predeterminado de la aplicación es: |
custom-option |
| JarStartArgs |
string |
No |
Los argumentos del paquete JAR para iniciar la aplicación. El comando de inicio predeterminado de la aplicación es: |
-Xms4G -Xmx4G |
| EdasContainerVersion |
string |
No |
La versión del entorno de ejecución de la aplicación en High-speed Service Framework (HSF), como un contenedor Ali-Tomcat. |
3.5.3 |
| SlsConfigs |
string |
No |
Las configuraciones para recopilar registros en Log Service.
Se admiten los siguientes campos:
Si la configuración de SLS no cambia durante un despliegue, no necesita configurar este parámetro. Para dejar de utilizar la función de recopilación de registros, establezca el valor de este parámetro en una cadena vacía ( Nota
Los proyectos que se crean automáticamente con una plantilla de trabajo se eliminan cuando se elimina la plantilla de trabajo. Por lo tanto, al seleccionar un proyecto existente, no seleccione un proyecto creado automáticamente por SAE. |
[{"logDir":"","logType":"stdout"},{"logDir":"/tmp/a.log"}] |
| Timezone |
string |
No |
La zona horaria. Valor predeterminado: Asia/Shanghai. |
Asia/Shanghai |
| NasId |
string |
No |
El ID del sistema de archivos Apsara File Storage NAS. Si las configuraciones no cambian durante un despliegue, no necesita configurar este parámetro. Para borrar las configuraciones de NAS, establezca el valor de este parámetro en una cadena vacía ( |
10d3b4**** |
| MountHost |
string |
No |
El destino de montaje del sistema de archivos NAS en la nube privada virtual (VPC) donde se encuentra la plantilla de trabajo. Si las configuraciones no cambian durante un despliegue, no necesita configurar este parámetro. Para borrar las configuraciones de NAS, establezca el valor de este parámetro en una cadena vacía ( |
10d3b4bc9****.com |
| MountDesc |
string |
No |
La descripción del montaje de NAS. Si las configuraciones no cambian durante un despliegue, no necesita configurar este parámetro. Para borrar las configuraciones de NAS, establezca el valor de este parámetro en una cadena vacía ( |
[{mountPath: "/tmp", nasPath: "/"}] |
| PostStart |
string |
No |
El script que se ejecuta después de iniciar el contenedor. Ejemplo: |
{"exec":{"command":["sh","-c","echo hello"]}} |
| PreStop |
string |
No |
El script que se ejecuta antes de detener el contenedor. Ejemplo: |
{"exec":{"command":["sh","-c","echo hello"]}} |
| WarStartOptions |
string |
No |
El comando de inicio para la aplicación desplegada en un paquete WAR. El procedimiento es el mismo que para configurar el comando de inicio de una imagen. Para obtener más información, consulte Establecer un comando de inicio. |
CATALINA_OPTS=\"$CATALINA_OPTS $Options\" catalina.sh run |
| ConfigMapMountDesc |
string |
No |
La descripción de la instancia de ConfigMap montada en el contenedor. Puede utilizar la instancia de ConfigMap creada en la página de Configuraciones de espacio de nombres para inyectar configuraciones en el contenedor. El valor es una cadena JSON. Se admiten los siguientes campos:
Nota
Puede pasar el parámetro
|
[{"configMapId":16,"key":"test","mountPath":"/tmp"}] |
| TerminationGracePeriodSeconds |
integer |
No |
El periodo de tiempo de espera para terminación graceful. Valor predeterminado: 30. Unidad: segundos. Valores válidos: de 1 a 300. |
10 |
| PhpConfigLocation |
string |
No |
La ruta en la que se monta el archivo de configuración de inicio de la aplicación PHP. Asegúrese de que el servidor PHP utilice este archivo de configuración para iniciar la aplicación. |
/usr/local/etc/php/php.ini |
| PhpConfig |
string |
No |
El contenido del archivo de configuración de PHP. |
k1=v1 |
| TomcatConfig |
string |
No |
Las configuraciones del archivo de Tomcat. Si establece este parámetro en "" o "{}", las configuraciones se eliminan. El valor es una cadena JSON. Se admiten los siguientes campos:
|
{"port":8080,"contextPath":"/","maxThreads":400,"uriEncoding":"ISO-8859-1","useBodyEncodingForUri":true} |
| OssMountDescs |
string |
No |
La descripción del montaje de OSS. El valor es una cadena JSON. Se admiten los siguientes parámetros:
|
[{"bucketName": "oss-bucket", "bucketPath": "data/user.data", "mountPath": "/usr/data/user.data", "readOnly": true}] |
| OssAkId |
string |
No |
El AccessKey ID que se utiliza para leer datos de OSS y escribir datos en OSS. |
xxxxxx |
| OssAkSecret |
string |
No |
El AccessKey secret que se utiliza para leer datos de OSS y escribir datos en OSS. |
xxxxxx |
| Php |
string |
No |
El ID de la instancia de Container Registry Enterprise Edition. |
cri-xxxxxx |
| AcrInstanceId |
string |
No |
El ID de la instancia de Container Registry Enterprise Edition. Este parámetro es obligatorio si ImageUrl está establecido en una imagen en una instancia de Container Registry Enterprise Edition. |
cri-xxxxxx |
| AcrAssumeRoleArn |
string |
No |
El Alibaba Cloud Resource Name (ARN) del rol de RAM necesario para extraer imágenes entre cuentas. Para obtener más información, consulte Otorgar permisos entre cuentas de Alibaba Cloud mediante un rol de RAM. |
acs:ram::123456789012****:role/adminrole |
| ImagePullSecrets |
string |
No |
El ID del secreto. |
10 |
| EnableImageAccl |
boolean |
No |
Especifica si se debe habilitar la aceleración de imágenes. |
|
| TriggerConfig |
string |
No |
La configuración del disparador. Configure este parámetro según el tipo de trabajo.
|
{"type":"time","config":"0 1 */1 * ?","timezone":"GMT+8:00"} |
| ConcurrencyPolicy |
string |
No |
La política de ejecución de trabajos concurrentes. Valores válidos:
|
Allow |
| Timeout |
integer |
No |
El periodo de tiempo de espera para el trabajo. Unidad: segundos. |
3600 |
| BackoffLimit |
integer |
No |
El número de reintentos para el trabajo. |
3 |
| Slice |
boolean |
No |
Habilita la fragmentación de trabajos. |
true |
| SliceEnvs |
string |
No |
Los parámetros para la fragmentación de trabajos. |
[0,1,2] |
| Replicas |
string |
No |
El número de instancias concurrentes para el trabajo. |
3 |
| RefAppId |
string |
No |
El ID de la aplicación referenciada. |
7171a6ca-d1cd-4928-8642-7d5cfe69**** |
| ProgrammingLanguage |
string |
No |
El lenguaje de programación. Valores admitidos: java, php, python y shell. |
java |
| Python |
string |
No |
El entorno de Python. Se admite PYTHON 3.9.15. |
PYTHON 3.9.15 |
| PythonModules |
string |
No |
Las dependencias de módulos personalizados. De forma predeterminada, se instalan las dependencias definidas en el archivo requirements.txt en el directorio raíz del paquete. Si no configura este parámetro o el paquete no tiene un archivo requirements.txt, puede especificar las dependencias que desea instalar. |
Flask==2.0 |
| NasConfigs |
string |
No |
Las configuraciones para montar un sistema de archivos NAS. |
|
| BestEffortType |
string |
No |
La política BestEffort. |
Elementos de la respuesta
|
Elemento |
Tipo |
Descripción |
Ejemplo |
|
object |
Información sobre la plantilla de trabajo actualizada. |
||
| RequestId |
string |
El ID de la solicitud. |
01CF26C7-00A3-4AA6-BA76-7E95F2A3*** |
| Message |
string |
El mensaje de respuesta.
|
success |
| TraceId |
string |
El ID de rastreo que puede utilizar para consultar los detalles de una solicitud. |
ac1a0b2215622246421415014e**** |
| Data |
object |
Los datos devueltos. |
|
| ChangeOrderId |
string |
El ID de la orden de cambio. Puede utilizar este ID para consultar el estado de ejecución del trabajo. |
01db03d3-3ee9-48b3-b3d0-dfce2d88**** |
| AppId |
string |
El ID de la plantilla de trabajo. |
7171a6ca-d1cd-4928-8642-7d5cfe69**** |
| ErrorCode |
string |
|
|
| Code |
string |
El código de estado HTTP.
|
200 |
| Success |
boolean |
Indica si se actualizó la plantilla de trabajo. Valores válidos:
|
true |
Ejemplos
Respuesta exitosa
JSON Formato
{
"RequestId": "01CF26C7-00A3-4AA6-BA76-7E95F2A3***",
"Message": "success",
"TraceId": "ac1a0b2215622246421415014e****",
"Data": {
"ChangeOrderId": "01db03d3-3ee9-48b3-b3d0-dfce2d88****",
"AppId": "7171a6ca-d1cd-4928-8642-7d5cfe69****"
},
"ErrorCode": "",
"Code": "200",
"Success": true
}
Códigos de error
|
Código de estado HTTP |
Código de error |
Mensaje de error |
Descripción |
|---|---|---|---|
| 400 | Application.MissingJdk | Your application must at least contain a JDK component. | |
| 400 | InvalidApplication.NotFound | The current application does not exist. | |
| 400 | InvalidComponent.NotFound | The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist. | |
| 400 | InvalidHostnameIp.Invalid | The hostname and/or IP is invalid: Hostname [%s], IP [%s]. | |
| 400 | InvalidInstanceSpecification.Unsupported | The instance specification is not supported: CPU [%s], memory [%s]. | |
| 400 | InvalidPackageType.NotFound | The package type must be War, FatJar, or Image. | |
| 400 | InvalidParameter.FileName | The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). In addition, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. | |
| 400 | InvalidParameter.NotEmpty | You must specify the parameter %s. | |
| 400 | InvalidParameter.Obviously | The specified parameter is invalid {%s}. | |
| 400 | InvalidParameter.WithMessage | The parameter is invalid {%s}: %s | |
| 400 | JarApplication.MissingJdk | A FatJar application must contain JDK. | |
| 400 | NoComputeResourceQuota.Exceed | Your compute resource is insufficient. Please contact us to raise the quota. | |
| 400 | PandoraApplication.MissingJdk | The Pandora application is missing a JDK component. | |
| 400 | PandoraApplication.OnlyJdk | A Pandora application only requires JDK component. | |
| 400 | WarApplication.MissingJdkWebcontainer | A War application must contain JDK and Tomcat. | |
| 400 | LogService.ConfigQuotaExceed | The maximum number of Log Service configs is exceeded. | The maximum number of Log Service configs is exceeded, please join the DingTalk group 32874633 for technical support. |
| 400 | LogService.InternalError | An exception occurred while calling Log Service. Please submit a ticket to solve the problem. | An exception occurred while calling log service. please join the DingTalk group 32874633 for technical support. |
| 400 | LogService.LogDirInvalid | The log collection path is invalid. | The log collection path is invalid. |
| 400 | LogService.NotAvailable | Log Service is unavailable. Please activate Log Service first. | The log service is not available. Please open the log service first. |
| 400 | LogService.ProjectNumQuotaExceed | The maximum number of Log Service projects is exceeded. | The maximum number of Log Service projects is exceeded, please join the DingTalk group 32874633 for technical support. |
| 400 | user.indebt | The user has an outstanding payment. | |
| 400 | NoComputeResourceQuota.App.Exceed | You can create %s instances for each application. Please submit a ticket to raise the quota. | You can create %s instances for each application. please join the DingTalk group 32874633 for technical support. |
| 400 | NoComputeResourceQuota.User.Exceed | Your account is limited to create %s instances. Please submit a ticket to raise the quota. | Your account is limited to create %s instances. please join the DingTalk group 32874633 for technical support. |
| 400 | System.Upgrading | The system is being upgraded. Please try again later. | |
| 400 | VolumnPath.Conflict | Conflict between log collection directory and persistent storage directory. | Conflict between log collection directory and persistent storage directory. |
| 400 | Application.ChangerOrderRunning | An application change process is in progress. Please try again later. | An application change process is in progress. Please try again later. |
| 400 | Application.InvalidStatus | The application status is abnormal. Please try again later. | The application status is abnormal. Please try again later. |
| 400 | MountConflict.ConfigMap | Conflict detected for ConfigMap path %s. | |
| 400 | NotFound.ConfigMap | The ConfigMap object (ID: %s) does not exist. | |
| 400 | NotFound.ConfigMapKey | The key %s of ConfigMap object (ID: %s) does not exist. | |
| 400 | Package.Version.Too.Long | The maximum length of package version is exceeded. | This package version is too long. |
| 400 | App.Package.Version.Exists | The package version of application already exists. | The package version of application already exists. |
| 400 | Slb.Occupied | The SLB instance is occupied. | This SLB is occupied. |
| 400 | Slb.Tag.Not.Qualified | The current SLB instance cannot be reused because it may have been occupied by %s. | The current SLB instance cannot be reused because it may have been occupied by %s. |
| 400 | MinReadyInstances.Not.Smaller.Replicas | The minimum number of available instances must be less than the number of application instances. | The minimum number of available instances must be less than the number of application instances. |
| 400 | BatchWaitTime.Not.Smaller.Zero | BatchWaitTime must not be smaller than zero. | BatchWaitTime must not be smaller than zero. |
| 400 | Sls.Config.Mixed.Multi.Project | The specified Config contains multiple projects. | |
| 400 | Sls.Config.User.Defined.Missing.Logstore.Info | The specified Config is invalid. Both Project and Logstore must be specified. | |
| 400 | Sls.Config.User.Defined.Missing.Project.Info | The specified Config is invalid. Both Project and Logstore must be specified. | |
| 400 | Sls.Logstore.Name.Invalid | The specified name of Logstore is invalid. The Logstore name must not contain the prefix "sae-". | |
| 400 | Sls.Logstore.User.Defined.Not.Exist | The user defined Logstore does not exist. | |
| 400 | Sls.Project.Name.Invalid | The specified project name is invalid. The project name must not contain the prefix "sae-". | |
| 400 | Sls.Project.User.Defined.Not.Exist | The user defined project does not exist. | |
| 400 | Sae.Errorcode.Ahas.Create.Error.Message | Failed to create AHAS. | |
| 400 | InvalidImageUrl.AcrInstanceId.Domain.NotMatch | The specified domain of ImageUrl does not match AcrInstanceId domains. | |
| 400 | PhpApplication.MissingPhpRuntime | A PHP application must contain PHP Runtime. | |
| 404 | InvalidNamespaceId.NotFound | The specified NamespaceId does not exist. | |
| 404 | InvalidAcrInstanceId.NotFound | The specified AcrInstanceId does not exist. | |
| 404 | Associate.Eip.Not.Enough | No sufficient EIPs are available. |
Consulte Códigos de error para ver la lista completa.
Notas de la versión
Consulte Notas de la versión para ver la lista completa.