Comparteix a través de


AzureSpringCloud@0: tarea de Azure Spring Apps v0

Esta tarea implementa aplicaciones en Azure Spring Apps y administra esas implementaciones.

Syntax

# Azure Spring Apps v0
# Deploy applications to Azure Spring Apps and manage deployments.
- task: AzureSpringCloud@0
  inputs:
    azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription. 
    Action: 'Deploy' # 'Deploy' | 'Set Production' | 'Delete Staging Deployment'. Required. Action. Default: Deploy.
    AzureSpringCloud: # string. Required. Azure Spring Apps Name. 
    AppName: # string. Required. App. 
    #DeploymentType: 'Artifacts' # 'Artifacts' | 'CustomContainer'. Optional. Use when Action = Deploy. Deployment Type. Default: Artifacts.
    #UseStagingDeployment: true # boolean. Optional. Use when Action = Deploy || Action = Set Production. Use Staging Deployment. Default: true.
    #CreateNewDeployment: false # boolean. Optional. Use when Action = Deploy && UseStagingDeployment = false. Create a new staging deployment if one does not exist. Default: false.
    #DeploymentName: # string. Optional. Use when UseStagingDeployment = false && Action != Delete Staging Deployment. Deployment. 
    #Package: '$(System.DefaultWorkingDirectory)/**/*.jar' # string. Optional. Use when Action = Deploy && DeploymentType = Artifacts. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.jar.
    #RegistryServer: 'docker.io' # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Registry Server. Default: docker.io.
    #RegistryUsername: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Registry Username. 
    #RegistryPassword: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Registry Password. 
    #ImageName: 'hello-world:v1' # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Image Name and Tag. Default: hello-world:v1.
    #ImageCommand: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Image Command. 
    #ImageArgs: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Image Arguments. 
    #ImageLanguageFramework: # 'springboot'. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Language Framework. 
  # Application and Configuration Settings
    #Builder: # string. Optional. Use when Action = Deploy && DeploymentType = Artifacts. Builder. 
    #EnvironmentVariables: # string. Optional. Use when Action = Deploy. Environment Variables. 
    #JvmOptions: # string. Optional. Use when Action = Deploy && DeploymentType = Artifacts. JVM Options. 
    #RuntimeVersion: 'Java_11' # 'Java_8' | 'Java_11' | 'Java_17' | 'Java_21' | 'NetCore_31'. Optional. Use when Action = Deploy && DeploymentType = Artifacts. Runtime Version. Default: Java_11.
    #DotNetCoreMainEntryPath: # string. Optional. Use when RuntimeVersion = NetCore_31. Main Entry Path. 
    #Version: # string. Optional. Use when Action = Deploy. Version.
# Azure Spring Apps v0
# Deploy applications to Azure Spring Apps and manage deployments.
- task: AzureSpringCloud@0
  inputs:
    azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription. 
    Action: 'Deploy' # 'Deploy' | 'Set Production' | 'Delete Staging Deployment'. Required. Action. Default: Deploy.
    AzureSpringCloud: # string. Required. Azure Spring Apps Name. 
    AppName: # string. Required. App. 
    #DeploymentType: 'Artifacts' # 'Artifacts' | 'CustomContainer'. Optional. Use when Action = Deploy. Deployment Type. Default: Artifacts.
    #UseStagingDeployment: true # boolean. Optional. Use when Action = Deploy || Action = Set Production. Use Staging Deployment. Default: true.
    #CreateNewDeployment: false # boolean. Optional. Use when Action = Deploy && UseStagingDeployment = false. Create a new staging deployment if one does not exist. Default: false.
    #DeploymentName: # string. Optional. Use when UseStagingDeployment = false && Action != Delete Staging Deployment. Deployment. 
    #Package: '$(System.DefaultWorkingDirectory)/**/*.jar' # string. Optional. Use when Action = Deploy && DeploymentType = Artifacts. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.jar.
    #RegistryServer: 'docker.io' # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Registry Server. Default: docker.io.
    #RegistryUsername: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Registry Username. 
    #RegistryPassword: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Registry Password. 
    #ImageName: 'hello-world:v1' # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Image Name and Tag. Default: hello-world:v1.
    #ImageCommand: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Image Command. 
    #ImageArgs: # string. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Image Arguments. 
    #ImageLanguageFramework: # 'springboot'. Optional. Use when Action = Deploy && DeploymentType = CustomContainer. Language Framework. 
  # Application and Configuration Settings
    #Builder: # string. Optional. Use when Action = Deploy && DeploymentType = Artifacts. Builder. 
    #EnvironmentVariables: # string. Optional. Use when Action = Deploy. Environment Variables. 
    #JvmOptions: # string. Optional. Use when Action = Deploy && DeploymentType = Artifacts. JVM Options. 
    #RuntimeVersion: 'Java_11' # 'Java_8' | 'Java_11' | 'NetCore_31'. Optional. Use when Action = Deploy && DeploymentType = Artifacts. Runtime Version. Default: Java_11.
    #DotNetCoreMainEntryPath: # string. Optional. Use when RuntimeVersion = NetCore_31. Main Entry Path. 
    #Version: # string. Optional. Use when Action = Deploy. Version.
# Azure Spring Apps v0
# Deploy applications to Azure Spring Apps and manage deployments.
- task: AzureSpringCloud@0
  inputs:
    azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription. 
    Action: 'Deploy' # 'Deploy' | 'Set Production' | 'Delete Staging Deployment'. Required. Action. Default: Deploy.
    AzureSpringCloud: # string. Required. Azure Spring Apps Name. 
    AppName: # string. Required. App. 
    #UseStagingDeployment: true # boolean. Optional. Use when Action = Deploy || Action = Set Production. Use Staging Deployment. Default: true.
    #CreateNewDeployment: false # boolean. Optional. Use when Action = Deploy && UseStagingDeployment = false. Create a new staging deployment if one does not exist. Default: false.
    #DeploymentName: # string. Optional. Use when UseStagingDeployment = false && Action != Delete Staging Deployment. Deployment. 
    #Package: '$(System.DefaultWorkingDirectory)/**/*.jar' # string. Optional. Use when Action = Deploy. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.jar.
  # Application and Configuration Settings
    #EnvironmentVariables: # string. Optional. Use when Action = Deploy. Environment Variables. 
    #JvmOptions: # string. Optional. Use when Action = Deploy. JVM Options. 
    #RuntimeVersion: 'Java_11' # 'Java_8' | 'Java_11' | 'NetCore_31'. Optional. Use when Action = Deploy. Runtime Version. Default: Java_11.
    #DotNetCoreMainEntryPath: # string. Optional. Use when RuntimeVersion = NetCore_31. Main Entry Path. 
    #Version: # string. Optional. Use when Action = Deploy. Version.

Entradas

azureSubscription - Suscripción de Azure
Alias de entrada: ConnectedServiceName. string. Obligatorio.

Especifica la suscripción de Azure Resource Manager para la implementación.


Action - Acción
string. Obligatorio. Valores permitidos: Deploy, Set Production (Establecer implementación de producción), Delete Staging Deployment. Valor predeterminado: Deploy.

Acción que se va a realizar en Azure Spring Apps.


AzureSpringCloud - Nombre de Azure Spring Apps
string. Obligatorio.

Nombre o identificador de recurso de la instancia de Azure Spring Apps que se va a implementar.


AppName - Aplicación
string. Obligatorio.

Nombre de la aplicación de Azure Spring Apps que se va a implementar. La aplicación debe existir antes de la ejecución de la tarea.


DeploymentType - Tipo de implementación
string. Opcional. Use cuando Action = Deploy. Valores permitidos: Artifacts, CustomContainer (contenedor personalizado). Valor predeterminado: Artifacts.

Para implementar con código fuente o paquete de Java, elija "Artefactos"; Para implementar con la imagen de contenedor, elija "Contenedor personalizado".


UseStagingDeployment - Uso de la implementación de ensayo
boolean. Opcional. Use cuando Action = Deploy || Action = Set Production. Valor predeterminado: true.

En el momento en que se ejecuta la tarea, esta entrada selecciona automáticamente la implementación establecida como staging.

Si se establece trueen , aplique la tarea a la implementación establecida como implementación de ensayo en el momento de la ejecución. Si se omite, se debe establecer el parámetro DeploymentName.


CreateNewDeployment - Cree una nueva implementación de ensayo si no existe.
boolean. Opcional. Use cuando Action = Deploy && UseStagingDeployment = false. Valor predeterminado: false.

Si se establece trueen y la implementación especificada por DeploymentName no existe en tiempo de ejecución, se creará. Si se omite, se debe establecer el parámetro DeploymentName.


DeploymentName - Despliegue
string. Opcional. Use cuando UseStagingDeployment = false && Action != Delete Staging Deployment.

Implementación a la que se aplicará esta tarea. Si no usa implementaciones azul-verde, establezca este campo en default. El valor debe comenzar con una letra y estar formado solo por letras minúsculas y números.


Package - Paquete o carpeta
string. Opcional. Use cuando Action = Deploy && DeploymentType = Artifacts. Valor predeterminado: $(System.DefaultWorkingDirectory)/**/*.jar.

Ruta de acceso del archivo al paquete o carpeta que contiene el contenido de la aplicación de Azure Spring Apps (.jar archivo para Java, .zip para .NET Core).
Se admiten variables (versión de compilación | ) y caracteres comodín.
Por ejemplo: $(System.DefaultWorkingDirectory)/**/*.jar


Package - Paquete o carpeta
string. Opcional. Use cuando Action = Deploy. Valor predeterminado: $(System.DefaultWorkingDirectory)/**/*.jar.

Ruta de acceso del archivo al paquete o carpeta que contiene el contenido de la aplicación de Azure Spring Apps (.jar archivo para Java, .zip para .NET Core).
Se admiten variables (versión de compilación | ) y caracteres comodín.
Por ejemplo: $(System.DefaultWorkingDirectory)/**/*.jar


Builder - Constructor
string. Opcional. Use cuando Action = Deploy && DeploymentType = Artifacts.

Seleccione un generador de VMware Tanzu® Build Service™, que se puede usar en el nivel empresarial.
Para obtener una descripción detallada, consulte Uso del servicio de compilación de Tanzu.


RegistryServer - Servidor de registro
string. Opcional. Use cuando Action = Deploy && DeploymentType = CustomContainer. Valor predeterminado: docker.io.

Registro de la imagen de contenedor. Valor predeterminado: docker.io.


RegistryUsername - Nombre de usuario del Registro
string. Opcional. Use cuando Action = Deploy && DeploymentType = CustomContainer.

El nombre de usuario del registro de contenedor.


RegistryPassword - Contraseña del Registro
string. Opcional. Use cuando Action = Deploy && DeploymentType = CustomContainer.

Contraseña del registro de contenedor.


ImageName - Nombre y etiqueta de imagen
string. Opcional. Use cuando Action = Deploy && DeploymentType = CustomContainer. Valor predeterminado: hello-world:v1.

Etiqueta de imagen de contenedor.


ImageCommand - Comando Image
string. Opcional. Use cuando Action = Deploy && DeploymentType = CustomContainer.

Comando de la imagen de contenedor.


ImageArgs - Argumentos de imagen
string. Opcional. Use cuando Action = Deploy && DeploymentType = CustomContainer.

Argumentos de la imagen de contenedor.


ImageLanguageFramework - Marco de lenguaje
string. Opcional. Use cuando Action = Deploy && DeploymentType = CustomContainer. Valores permitidos: springboot.


EnvironmentVariables - Variables de entorno
string. Opcional. Use cuando Action = Deploy.

Las variables de entorno que se van a escribir mediante la sintaxis -key value (por ejemplo: -CUSTOMER_NAME Contoso-WEBSITE_TIME_ZONE). Los valores que contienen espacios deben ir entre comillas dobles (por ejemplo: "Eastern Standard Time").


JvmOptions - Opciones de JVM
string. Opcional. Use cuando Action = Deploy && DeploymentType = Artifacts.

Edita las opciones de JVM de la aplicación. Cadena que contiene opciones de JVM, como -Xms1024m -Xmx2048m.


JvmOptions - Opciones de JVM
string. Opcional. Use cuando Action = Deploy.

Edita las opciones de JVM de la aplicación. Cadena que contiene opciones de JVM, como -Xms1024m -Xmx2048m.


RuntimeVersion - Versión del entorno de ejecución
string. Opcional. Use cuando Action = Deploy && DeploymentType = Artifacts. Valores permitidos: Java_8 (Java 8), Java_11 (Java 11), Java_17 (Java 17), Java_21 (Java 21), NetCore_31 (.Net Core 3.1). Valor predeterminado: Java_11.

La versión en tiempo de ejecución en la que se ejecutará la aplicación.


RuntimeVersion - Versión del entorno de ejecución
string. Opcional. Use cuando Action = Deploy && DeploymentType = Artifacts. Valores permitidos: Java_8 (Java 8), Java_11 (Java 11), NetCore_31 (.Net Core 3.1). Valor predeterminado: Java_11.

La versión en tiempo de ejecución en la que se ejecutará la aplicación.


RuntimeVersion - Versión del entorno de ejecución
string. Opcional. Use cuando Action = Deploy. Valores permitidos: Java_8 (Java 8), Java_11 (Java 11), NetCore_31 (.Net Core 3.1). Valor predeterminado: Java_11.

La versión en tiempo de ejecución en la que se ejecutará la aplicación.


DotNetCoreMainEntryPath - Ruta de acceso de entrada principal
string. Opcional. Use cuando RuntimeVersion = NetCore_31.

Ruta de acceso al archivo ejecutable de .NET en relación con la raíz zip.


Version - Versión
string. Opcional. Use cuando Action = Deploy.

La versión de implementación. Si no se establece, la versión se deja sin cambios.


Opciones de control de tareas

Todas las tareas tienen opciones de control además de las entradas de tareas. Para obtener más información, vea Opciones de control y propiedades de tareas comunes.

Variables de salida

Esta tarea define las siguientes variables de salida, que puede consumir en pasos, trabajos y fases de bajada.

testEndpoint
Solo después de la acción "Implementar". Contiene una dirección URL privada para acceder a la implementación actualizada.

Comentarios

Use esta tarea para implementar aplicaciones en Azure Spring Apps y administrar implementaciones de Azure Spring Cloud.

Ejemplos

En los ejemplos siguientes, se muestran escenarios de uso habituales. Para más información, consulte Automatización de implementaciones de aplicaciones en Azure Spring Apps.

Eliminación de una implementación de almacenamiento provisional

La acción "Eliminar la implementación de ensayo" permite eliminar la implementación que no recibe tráfico de producción. Esto libera los recursos usados por esa implementación y deja espacio para una nueva implementación de almacenamiento provisional:

variables:
  azureSubscription: Contoso

steps:
- task: AzureSpringCloud@0
  continueOnError: true # Don't fail the pipeline if a staging deployment doesn't already exist.
  inputs:
    continueOnError: true
    inputs:
    azureSubscription: $(azureSubscription)
    Action: 'Delete Staging Deployment'
    AppName: customer-api
    AzureSpringCloud: contoso-dev-az-spr-cld

Implementando

En producción

En el ejemplo siguiente se implementa en la implementación de producción predeterminada en Azure Spring Apps. Este es el único escenario de implementación posible cuando se usa la SKU básica:

Nota:

El patrón de búsqueda de paquetes solo debe devolver exactamente un paquete. Si la tarea de compilación genera varios paquetes JAR como sources.jar y javadoc.jar, debe refinar el patrón de búsqueda para que solo coincida con el artefacto binario de la aplicación.

variables:
  azureSubscription: Contoso

steps:
- task: AzureSpringCloud@0
    inputs:
    azureSubscription: $(azureSubscription)
    Action: 'Deploy'
    AzureSpringCloud: contoso-dev-az-spr-cld
    AppName: customer-api
    UseStagingDeployment: false
    DeploymentName: default
    Package: '$(System.DefaultWorkingDirectory)/**/*customer-api*.jar'

Azul-verde

En el ejemplo siguiente se implementa en una implementación de ensayo preexistente. Esta implementación no recibirá tráfico de producción hasta que se establezca como implementación de producción.

variables:
  azureSubscription: Contoso

steps:
- task: AzureSpringCloud@0
    inputs:
    azureSubscription: $(azureSubscription)
    Action: 'Deploy'
    AzureSpringCloud: contoso-dev-az-spr-cld
    AppName: customer-api
    UseStagingDeployment: true
    Package: '$(System.DefaultWorkingDirectory)/**/*customer-api*.jar'

Para obtener más información sobre las implementaciones azul-verde, incluido un enfoque alternativo, consulte Estrategias de implementación azul-verde.

Definición de la implementación de producción

En el ejemplo siguiente se establece la implementación de ensayo actual como producción, intercambiando eficazmente qué implementación recibe tráfico de producción.

variables:
  azureSubscription: Contoso

steps:
- task: AzureSpringCloud@0
    inputs:
    azureSubscription: $(azureSubscription)
    Action: 'Set Production'
    AzureSpringCloud: contoso-dev-az-spr-cld
    AppName: customer-api
    UseStagingDeployment: true

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
Peticiones None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables que se pueden establecer Any
Versión del agente 2.104.1 o superior
Categoría de la tarea: Implementación