2011-03-04 9 views
11

Estoy teniendo un pequeño drama con la sintaxis comodín en mi configuración de artefactos de TeamCity. Quiero tomar cada archivo que coincida con el patrón myproject. *. Dll desde cualquier carpeta y coloque cada DLL en la raíz de la ruta de los artefactos.¿Cuál es la sintaxis de comodín correcta para copiar los artefactos de TeamCity en la raíz de una ruta de destino?

Esto es lo que tengo en la actualidad:

**/obj/Debug/myproject.*.dll =>/

Esta es agarrar todas las DLL pero les está poniendo dentro de la misma estructura de carpetas como la fuente por lo que en lugar de terminar con "myproject.web.dll "en los artefactos que obtengo" Web/obj/debug/myproject.web.dll ".

¿Qué me falta aquí?

Respuesta

11

Me temo que no puedes hacer esto de una manera fácil. Debería recopilar su * .dll localmente en un solo lugar y utilizar la regla de artefactos de TeamCity para copiarlos en el directorio raíz.

O, puede introducir manualmente todos los caminos (sin ** parte)

Ésta es la forma en que funciona en el TC.

+1

Aunque no es la respuesta que me hubiera gustado, desafortunadamente parece ser la correcta. –

2

No estoy seguro de que pueda usar la raíz del artefacto sin copiar la estructura. Los documentos especifican

Si se omite el directorio de destino de los archivos están publicados en la raíz de los artefactos de construcción.

¿No puede simplemente usar un nombre de carpeta designado say dist, esto causaría problemas? ¡Si es así, Que son!

por ejemplo

**/obj/Debug/myproject.*.dll => dist 

Actualización - encuentran un poco más de información en los documentos serán publicados

Los archivos preservar la estructura de los directorios coinciden con el comodín (directorios acompañado de " "texto estático" no será creado). Es decir, TeamCity se crear directorios a partir de la primera aparición del comodín en el patrón.

Así que si puede ser más explícito, puede conducir a una estructura más plana.

+0

El mismo trato, acaba de terminar con toda la estructura de directorios en la carpeta "dist". De hecho, realmente no necesito la sintaxis "=> /" si quiero los archivos en la raíz de todos modos. –

+0

En términos de por qué esto causa problemas, es simplemente que es una solución grande con muchos proyectos y una vez que las DLL se capturan en la estructura de carpetas es un poco más difícil identificar lo que tienes. Debes ir recorriendo árboles de carpetas en lugar de solo poder ver todos los artefactos de un vistazo. –

Cuestiones relacionadas