porta azure tfs azure-web-sites webdeploy

porta - Implementación continua del sitio web de azurew: Web Deploy no puede modificar el archivo ''XXX'' en el destino porque está bloqueado por un proceso externo



porta azure (3)

Me estoy encontrando con el siguiente error al intentar implementar un sitio web azure mediante la implementación continua de TFS.

Estoy usando la plantilla de definición de compilación TfvcContinousDeploymentTemplate.12.xaml.

Mensaje de excepción: Web Deploy no puede modificar el archivo ''Antlr3.Runtime.dll'' en el destino porque está bloqueado por un proceso externo. Para permitir que la operación de publicación tenga éxito, es posible que deba reiniciar su aplicación para liberar el bloqueo, o usar el controlador de reglas AppOffline para aplicaciones .Net en su próximo intento de publicación. Obtenga más información en: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE . (tipo DeploymentDetailedException)

He hecho lo sugerido y agregado

<EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>

al perfil de publicación, sin embargo, no está desconectando la aplicación ya que recibo el mismo error.

Aquí hay una vista de la definición de mi build donde está configurado para usar el perfil de publicación con la configuración de la aplicación sin conexión.


Sé que este es un tema viejo. Pero tuve este problema y lo resolví en Azure.

Agregue MSDEPLOY_RENAME_LOCKED_FILES = 1 a su configuración en Azure.


Si desea automatizar la detención y el inicio del servicio de aplicaciones Azure antes y después de la implementación, entonces si está utilizando VSTS, esta tarea ahora está disponible de fábrica (si está utilizando TFS, busque la sugerencia en una tarea de mercado) en uno de los comentarios)

Para aprovechar estas tareas:

  1. En la sección Release de VSTS, agregue una tarea a su definición de versión de tipo "Azure App Service Manage (PREVIEW) - Iniciar, Detener, Reiniciar o Intervalo de intercambio para un servicio de aplicación de Azure"
  2. En la tarea creada, seleccione la acción (para la primera tarea, seleccione "Detener servicio de aplicación")
  3. Arrastre y suelte esta tarea antes de la tarea de implementación y agregue una tarea "Iniciar servicio de aplicación" detrás de la tarea de implementación.
  4. En la configuración de la tarea, también puede verificar que esto se aplique solo a un espacio específico del Servicio de aplicaciones Azure (por ejemplo, "Etapa")

Después de configurar esas dos tareas adicionales, funcionó bien para mí.

(... por cierto, VSTS Build y CI ahora también son compatibles con las compilaciones ASP.NET CORE realizadas con VS2017 al seleccionar el Agente "HOST VS 2017")


Te encontraste con una limitación de Azure y .NET

Recomendado es reiniciar su aplicación. Esto se puede hacer cambiando una variable de entorno que a su vez fuerza a iis a reiniciarse.

Por ejemplo: en el tablero azul:

Set COR_ENABLE_PROFILING = 0

luego implementar y luego otra vez

Set COR_ENABLE_PROFILING = 1

Puede encontrar una descripción de este problema aquí