Sobre o tratamento de arquivo com diretorio no jenkins.

360 views
Skip to first unread message

Marco Antonio

unread,
May 10, 2017, 9:59:08 AM5/10/17
to jenkinsci-br
Senhores bom dia.



Sobre o tratamento no jenkins de diretorio, eu tenho o seguinte problema, que pode ser visto no log abaixo, alguém ja passou por isso?


Mas existem os diretorios/arquivos que ele ta pedindo entende.

Started by user anonymous
Building in workspace D:\Jenkins\workspace\12.1.15 - TOTVS.Integration
Querying for remote changeset at '$/Saude/Legado/12.1.15/HIS/Fontes/TOTVS.Integration' as of 'D2017-05-04T12:51:23Z'...
Query result is: Changeset #85910 by 'POA01\alexandre.fraga' on '2017-05-02T18:55:48Z'.
Checking if there exists a mapping for D:\Jenkins\workspace\12.1.15 - TOTVS.Integration...no.
Downloading list of workspaces from http://tfs.totvs.com.br:8080/tfs/cd-pa...
Creating workspace 'Hudson-12.1.15 - TOTVS.Integration-MASTER' owned by 'POA01\gcad.sysadmin'...
Mapping '$/Saude/Legado/12.1.15/HIS/Fontes/TOTVS.Integration' to local folder 'D:\Jenkins\workspace\12.1.15 - TOTVS.Integration' in workspace 'Hudson-12.1.15 - TOTVS.Integration-MASTER'...
Created workspace 'Hudson-12.1.15 - TOTVS.Integration-MASTER'.
Getting version 'C85910' to 'D:\Jenkins\workspace\12.1.15 - TOTVS.Integration'...
Finished getting version 'C85910'. Retrieved 1490 resources.
Path To MSBuild.exe: C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe
Executing the command cmd.exe /C " chcp 1252 && "C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" /p:deployonbuild=true /t:Clean,Rebuild /m /p:Configuration=Release,BuildInParallel=true "/p:Platform=Any CPU" /v:m /property:WarningLevel=0 /p:VisualStudioVersion=14.0 /nodereuse:false /l:FileLogger,Microsoft.Build.Engine Integration.sln " && exit %%ERRORLEVEL%% from D:\Jenkins\workspace\12.1.15 - TOTVS.Integration
[12.1.15 - TOTVS.Integration] $ cmd.exe /C " chcp 1252 && "C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" /p:deployonbuild=true /t:Clean,Rebuild /m /p:Configuration=Release,BuildInParallel=true "/p:Platform=Any CPU" /v:m /property:WarningLevel=0 /p:VisualStudioVersion=14.0 /nodereuse:false /l:FileLogger,Microsoft.Build.Engine Integration.sln " && exit %%ERRORLEVEL%%
Active code page: 1252
Microsoft (R) Build Engine version 14.0.25420.1
Copyright (C) Microsoft Corporation. All rights reserved.

CSC : error CS7027: Error signing output with public key from file '..\..\Gens.snk' -- File not found. [D:\Jenkins\workspace\12.1.15 - TOTVS.Integration\TOTVS.Integration.MACC.Entities\TOTVS.Integration.MACC.Entities.csproj]
CSC : error CS7027: Error signing output with public key from file '..\..\Gens.snk' -- File not found. [D:\Jenkins\workspace\12.1.15 - TOTVS.Integration\TOTVS.Integration.Messages\TOTVS.Integration.Messages.csproj]
  TOTVS.Integration.Dimastec -> D:\Jenkins\workspace\12.1.15 - TOTVS.Integration\TOTVS.Integration.Dimastec\bin\Release\TOTVS.Integration.Dimastec.dll
CSC : error CS7027: Error signing output with public key from file '..\..\Gens.snk' -- File not found. [D:\Jenkins\workspace\12.1.15 - TOTVS.Integration\TOTVS.Integration.FluigIdentity.Entities\TOTVS.Integration.FluigIdentity.Entities.csproj]
CSC : error CS7027: Error signing output with public key from file '..\..\Gens.snk' -- File not found. [D:\Jenkins\workspace\12.1.15 - TOTVS.Integration\TOTVS.Integration.HCor.Entities\TOTVS.Integration.HCor.Entities.csproj]
Build step 'Build a Visual Studio project or solution using MSBuild' marked build as failure
Started calculate disk usage of build
Finished Calculation of disk usage of build in 0 seconds
Started calculate disk usage of workspace
Finished Calculation of disk usage of workspace in 0 seconds
Finished: FAILURE

João Francisco Amorim Enomoto

unread,
May 10, 2017, 10:35:45 AM5/10/17
to jenkinsci-br
Marco,

O problema que você tá tomando acontece porque voltar um diretório (../) depende de onde você executa o script. Por padrão, cada job tem um workspace e é de lá que os comandos são executados, a não ser que você tenha configurado outro diretório base.

Se você quiser ter certeza qual o diretório corrente da sua construção, crie um script prompt do DOS antes da sua construção com o seguinte conteúdo:

echo %cd%
Isso deve te informar o diretório de onde ele está tentando executar e você conseguirá validar se a partir daí o seu build consegue chegar no arquivo.

Abraços!

--
Você recebeu essa mensagem porque está inscrito no grupo "jenkinsci-br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para jenkinsci-br...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Marco Antonio

unread,
May 10, 2017, 3:35:54 PM5/10/17
to jenkinsci-br
Tranquilo meu caro.......

Mas este é o problema MAS como o jenkins faz o build automático .. ele se perde quando tentamos compilar uma dll dependente que está em um caminho tipo ..\...\library\xxx .. e para resolver isto tenho que copiar todas as dependências  para um local comum OU refazer a estrutura no TFS destas dependências OU AINDA solicitar que os DEV resolvam as dependências  direto no TFS ? 

João Francisco Amorim Enomoto

unread,
May 10, 2017, 4:22:58 PM5/10/17
to jenkinsci-br
Eu não entendi exatamente o que você quis dizer, mas... O Jenkins não faz nada que você não peça pra ele fazer. Se seu projeto tem pastas e dentro dessas pastas é que a compilação deve acontecer, geralmente os plugins tem um parâmetro que fala exatamente a pasta de onde você deve disparar a construção. Se seu projeto usa a estrutura de pastas relativa para saber de onde você deve puxar referências, isso depende de onde exatamente você dispara a construção.

Ex: você tem uma pasta "Projeto Secreto" dentro do seu diretório base de código onde fica o código que você vai compilar. Se "Projeto Secreto" referencia "Biblioteca Secreta" que está na mesma pasta do Projeto, e há uma referência de "../Biblioteca Secreta" em "Projeto Secreto", então a construção só funciona corretamente se você compilar o projeto em "Projeto Secreto". Se você compilar na raiz do projeto, ele vai procurar por uma pasta fora do projeto e não vai achar.

Sistema de arquivos representado acima:
"Meu Projeto"
  -> "Biblioteca Secreta"
  -> "Projeto Secreto"
     -> Projeto Secreto.csproj
  -> Meu Projeto.csproj

Em suma, o problema não é exatamente do Jenkins, mas de como você configurou a construção.

Abraços!

--
Reply all
Reply to author
Forward
0 new messages