msbuild - prod - ¿Cómo acceder a la carpeta de artefactos después de la compilación en TFS en línea?
msbuild cli (2)
PreInfo: tengo .net web api de la red (vs2015) mezclada con proyectos ordinarios.
He pasado casi dos días para que esto funcione, busque y haya intentado todo lo que se me ocurra, pero no puedo vivir la creación y publicación de TFS en línea para jugar juntos.
La compilación (paso artefacto de publicación) dice que " Directorio" D: / a / 1 / a "está vacío. No se agregará nada para construir el artefacto" soltar ".
pero el paso "ejecutar punto neto" dice
"Publicado en D: / a / 1 / s / Operator / MobileService / root / MobileService / src / AMP.Operator.MobileService / bin / release / net452 / win7-x64 / publish"
... así que debe estar en algún lugar en el que el lanzamiento pueda retomarlo, pero no importa lo que intente, no puedo lograr que lo recojan.
Aquí está mi configuración de compilación
Y la verdad con $ (System.DefaultWorkingDirectory) / MobileService-Dev, tenga en cuenta que he probado todos los combo de $ (build.artifactstagingdirectory) en la compilación para publicar sin suerte, pero estoy seguro de que esto debería apuntar a la carpeta de publicación de la compilación.
Espero que alguien pueda indicarme una solución. No puedo entender lo difícil que es hacer que esto funcione ...
Dentro de la definición de compilación, recomiendo agregar un paso Copy Files
que copiará los artefactos de compilación de sus resultados de msbuild
al Directorio de etapas de artefactos de compilación antes de ejecutar el paso Publish Artifact
.
- Carpeta de origen:
$(Build.SourcesDirectory)
- Contenido:
**/bin/$(BuildConfiguration)/**
- Carpeta de destino:
$(Build.ArtifactStagingDirectory)
Supongo que la variable $(BuildConfiguration)
es personalizada para su definición y probablemente sea Debug
o Release
. No estoy seguro de qué es exactamente lo que hace el paso Run dotnet , pero esta definición de build I setup publicó mis artefactos de construcción correctamente. El paso Publicar artefactos de construcción que estoy ejecutando tiene los mismos pasos que el suyo, excepto que la única opción de control habilitada es Enabled
.
También estoy corriendo en la actualización 2 de TFS 2015.
Debe especificar el argumento de salida (--output / -o) para el comando dotnet publish. Argumentos:
Publish -c $(BuildConfiguration) -o $(Build.ArtifactStagingDirectory)
Por cierto: dijiste "run dot net" paso dice "Publicado en D: / a / 1 / s ....", los archivos están en D: / a / 1 / s, no hay archivos en D: / a / 1 / a (uno es s y otro es a ).