2010-04-22 13 views
5

Nos encontramos con un error al tratar de usar el proveedor "runCommand" de MSDeploy para ejecutar un archivo .cmd en una máquina remota. El tiempo de ejecución esperado debe ser de aproximadamente 10 segundos, pero MSDeploy solo lo ejecuta durante unos 2-3 segundos, después de lo cual se devuelven los detalles del error.MSDeploy: error al usar el proveedor runCommand para llamar al archivo .cmd remoto (tiempo de espera)

Aquí es la completa MSDeploy "runcommand" línea de comandos de texto que estoy utilizando:

    msdeploy.exe -Verb: sincronización -fuente: runcommand = "D: \ implementar web probador \ test_cmd.cmd", dontUseCommandExe = false, waitAttempts = 5, waitInterval = 1,000 -dest: auto, de equipo = http: // test-máquina: 89/MsDeployAgentService /, nombre de usuario = aaa, password = bbb

aquí están los detalles de error devuelto:

    Error 'Error: (4/21/2010 12:19:25 PM) Se produjo un error cuando la solicitud uest fue procesado en la computadora remota.

    Error: El proceso 'C: \ WINDOWS \ system32 \ cmd.exe' (línea de comando '/ c' D: \ web deploy tester \ test_cmd.cmd '') finalizó porque excedió el tiempo de espera. recuento

    error: 1.

    'ocurrió en la llamada a runcommand

alguna idea de por qué esto está ocurriendo y cómo resolverlo?

+0

Tengo el mismo problema, independientemente del waitInterval que especifique, msdeploy devuelve inmediatamente este error, cuando claramente no ha esperado el tiempo especificado antes de la creación de errores. –

+0

Me di cuenta de que cuando usaba esto en un archivo por lotes y estaba usando '"' cometí el error de incluir el 'waitInterval' dentro de la cita para la ruta del comando en lugar de fuera de él:' .. ", waitInterval..' –

Respuesta

6

Debe especificar un valor mayor de waitInterval. Este valor está en milisegundos. Es posible que desee probar 20000 (20 segundos). El valor predeterminado es 1000.

+2

Gracias por la respuesta, Sayed. He intentado su sugerencia e incluso he dado el proceso hasta unos minutos para completar, pero esto no resuelve el problema. Además, de acuerdo con la documentación de runCommand, parece que la configuración que mencionó es la duración del intervalo entre reintentos, no el tiempo permitido para que el comando remoto complete su ejecución antes del tiempo de espera. El .cmd se puede ejecutar desde el símbolo del sistema en la máquina local sin ningún problema y la cuenta que ejecuta la operación tiene privilegios de nivel de administrador. ¿Alguna otra teoría sobre por qué esto está ocurriendo? – dabuild

+1

Odio decirlo, pero "yo también". Tengo un "runCommand" en mi SourceManifest.xml, y waitInterval/waitAttempts parecen ser ignorados –

+2

Me las arreglé para hacer que MsDeploy.exe hiciera algo diferente de lo predeterminado al configurar waitAttempts = 1 y waitInterval = 20000, pero no es lo que esperado y se dio por vencido en el proveedor runCommand –

Cuestiones relacionadas