RE: [ALM Brasil] Team Foundation Build - Posso criar uma build

32 views
Skip to first unread message

Claudio Bernardo

unread,
May 24, 2012, 11:08:49 PM5/24/12
to André Henrique, almb...@googlegroups.com
=?utf-8?Q?mesclando_arquivos_de_v=C3=A1rios_diret=C3=B3rios=3F?=
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary=485b390f79fee95cf204c0cd6aa8

--485b390f79fee95cf204c0cd6aa8
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Andre,

Se eu entendi certo, hj vc tem sua area de projeto_desenvolvimento que
=C3=A9 onde o pessoal desenvolve funcionalidades novas e depois que ele est=
a
pronta, vc as coloca na area de sistemas, certo?

Partindo dessa premissa, se estiver errada por favor me corrija,
sugeriria vc utilizar uma estrategias de branch, que no sourcesafe vc
nao conseguia fazer tao facil quanto no TFS.

se for nessa linha, tem um material que publiquei da minha palestra no
ALM Summit.

Http://blog.lambda3.com.br/l3/claudioleite

Existem algumas estrategias q vc pode usar para isolar esses ambientes
sem ter que ter muito trabalho.

Sobre a parte de build, quando vc cria uma definicao de build vc tem
que informar os locais que ele baixara os codigos para compilar, entao
no seu caso, se a pasta resources nao estiver no mesmo diretorio, basta
adicionar essa pasta la que ela sera baixada e suas referenciad nao
quebraram.

Se vc tiver utilizando como recurso compartilhado entre team ptojects,
entao o ideal e usar alguma.estrategia de branch para teabalhar com
esses casos.

No material tem isso e um link para o guide do Visual.Studio ALM ranger
q explica com mais detalhes.

Espero ter ajudado

Claudio Leite
Sent from my awsome Windows Phone
From: Andr=C3=A9 Henrique
Sent: 24.mai.2012 16:40
To: almb...@googlegroups.com
Subject: Re: [ALM Brasil] Team Foundation Build - Posso criar uma build
mesclando arquivos de v=C3=A1rios diret=C3=B3rios?
*Agora sim!!! Segue texto completo:*


Trabalho em um projeto, onde o sistema utiliza para as camadas internas VB6
(que geram DLL's registradas no COM+) e a interface =C3=A9 VB .Net. Atualme=
nte
trabalhamos com o Visual SourceSafe e a base de dados do VSS j=C3=A1 ultrap=
assa
os 18 GB, e isso tem gerado inconsist=C3=AAncia na sua utiliza=C3=A7=C3=A3o=
. Comecei a
fazer o estudo de migra=C3=A7=C3=A3o para o TFS 2010. Entretanto, estou me =
esbarrando
com diversos problemas.

Para voc=C3=AAs entenderem melhor o problema, temos no *VSS a seguinte estr=
utura*
:
*- Referencias
- Sistemas
- M=C3=B3dulo 1*
- arquivo_do_modulo1.sln
- arquivo_do_modulo1.vbp
- arquivo_do_modulo1.aspx
- arquivo_do_modulo1.vb
* - M=C3=B3dulo 2*
- arquivo_do_modulo2.sln
- arquivo_do_modulo2.vbp
- arquivo_do_modulo2.aspx
- arquivo_do_modulo2.vb
*- M=C3=B3dulo 3
.
.
.
- M=C3=B3dulo 27*

Cada m=C3=B3dulo desse =C3=A9 utilizado para compila=C3=A7=C3=A3o. Na *m=C3=
=A1quina do
desenvolvedor*temos a seguinte estrutura:
*- Referencias
- Projeto_Desenvolvimento*
- solucao.sln (n=C3=A3o controlado pelo VSS)
- projeto.vbp (n=C3=A3o controlado pelo VSS)
- arquivo_do_modulo1.aspx
- arquivo_do_modulo1.vb
- arquivo_do_modulo2.aspx
- arquivo_do_modulo2.vb
*- Sistemas
- M=C3=B3dulo 1*
- solucao_do_modulo1.sln
- projeto_do_modulo1.vbp
- arquivo_do_modulo1.aspx
- arquivo_do_modulo1.vb
* - M=C3=B3dulo 2*
- solucao_do_modulo2.sln
- projeto_do_modulo2.vbp
- arquivo_do_modulo2.aspx
- arquivo_do_modulo2.vb
*- M=C3=B3dulo 3
.
.
.
- M=C3=B3dulo 27*
*
*OBS1.: Em projeto_desenvolvimento =C3=A9 colocado qualquer .ASPX + .VB de
qualquer m=C3=B3dulo, de acordo com a necessidade de desenvolvimento
OBS2.: Utilizamos como m=C3=A9todo de trabalho a seguinte sequ=C3=AAncia - =
Checkamos
o arquivo em "projeto_desenvolvimento", alteramos, debugamos, etc. Quando o
arquivo est=C3=A1 OK, =C3=A9 dado Check-in e em seguida baixamos todo o m=
=C3=B3dulo em
sistemas s=C3=B3 para compilar.

*O problema:
O TFS n=C3=A3o permite dar Get ou Check-out em locais n=C3=A3o mapeados,
impossibilitando de manter essa mesma estrutura no TFS.*


******** Solu=C3=A7=C3=A3o que tenho em mente:*

*Criar no TFS a seguinte estrutura:*

*- Referencias
- Projeto_Desenvolvimento*
- solucao.sln
- projeto.vbp
- Todos os arquivos de todos os m=C3=B3dulos
*- Sistemas
- M=C3=B3dulo 1*
- solucao_do_modulo1.sln
- projeto_do_modulo1.vbp
* - M=C3=B3dulo 2*
- solucao_do_modulo2.sln
- projeto_do_modulo2.vbp
.
.
.
* - M=C3=B3dulo 27*

Ter=C3=ADamos um projeto de desenvolvimento com todos os arquivos juntos, m=
as na
hora de compilar precisaria criar uma BUILD que buscasse as referencias no
diret=C3=B3rio "referencias", os arquivos .aspx e .vbp do m=C3=B3dulo que e=
staria
compilando em "projeto_desenvolvimento" e a solu=C3=A7=C3=A3o na pasta do m=
=C3=B3dulo (que
teria s=C3=B3 a solu=C3=A7=C3=A3o e o .vbp - talvez algum outro espec=C3=AD=
fico).

Entretanto, *n=C3=A3o sei se build consegue fazer isso, nem estou encontran=
do
alguma outra ideia para resolver esse problema.*


Desde j=C3=A1 agrade=C3=A7o a aten=C3=A7=C3=A3o,

--=20
------------------------
*Andr=C3=A9 Henrique*
con...@andrehenrique.com.br
(81) 9655-6625


Em 24 de maio de 2012 11:38, cezar hiraki velazquez <yukito...@gmail.co=
m
> escreveu:

> Andr=C3=A9
>
> O e-mail veio sem a parte onde voc=C3=AA mostra a estrutura,
>
> Abs,
> C=C3=A9zar Vel=C3=A1zquez
>
> Em 24 de maio de 2012 11:23, Andr=C3=A9 Henrique <contato@andrehenrique.c=
om.br>escreveu:
>
> Ol=C3=A1 pessoal,
>>
>> Trabalho em um projeto, onde o sistema utiliza para as camadas internas
>> VB6 (que geram DLL's registradas no COM+) e a interface =C3=A9 VB .Net.
>> Atualmente trabalhamos com o Visual SourceSafe e a base de dados do VSS =
j=C3=A1
>> ultrapassa os 18 GB, e isso tem gerado inconsist=C3=AAncia na sua utiliz=
a=C3=A7=C3=A3o.
>> Comecei a fazer o estudo de migra=C3=A7=C3=A3o para o TFS 2010. Entretan=
to, estou me
>> esbarrando com diversos problemas.
>>
>> Para voc=C3=AAs entenderem melhor o problema, temos no VSS a seguinte
>> estrutura:
>>
>>
>

--485b390f79fee95cf204c0cd6aa8
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html><head><meta content=3D"text/html; charset=3Dutf-8" http-equiv=3D"Cont=
ent-Type"></head><body><div><div style=3D"font-family: Calibri,sans-serif; =
font-size: 11pt;">Andre,<br><br>Se eu entendi certo, hj vc tem sua area de =
projeto_desenvolvimento que =C3=A9 onde o pessoal desenvolve funcionalidade=
s novas e depois que ele esta pronta, vc as coloca na area de sistemas, cer=
to?<br><br>Partindo dessa premissa, se estiver errada por favor me corrija,=
sugeriria vc utilizar uma estrategias de branch, que no sourcesafe vc nao =
conseguia fazer tao facil quanto no TFS.<br><br>se for nessa linha, tem um =
material que publiquei da minha palestra no ALM Summit.<br><br>Http://blog.=
lambda3.com.br/l3/claudioleite<br><br>Existem algumas estrategias q vc pode=
usar para isolar esses ambientes sem ter que ter muito trabalho.<br><br>So=
bre a parte de build, quando vc cria uma definicao de build vc tem que info=
rmar os locais que ele baixara os codigos para compilar, entao no seu caso,=
se a pasta resources nao estiver no mesmo diretorio, basta adicionar essa =
pasta la que ela sera baixada e suas referenciad nao quebraram.<br><br>Se v=
c tiver utilizando como recurso compartilhado entre team ptojects, entao o =
ideal e usar alguma.estrategia de branch para teabalhar com esses casos.<br=
><br>No material tem isso e um link para o guide do Visual.Studio ALM range=
r q explica com mais detalhes.<br><br>Espero ter ajudado<br><br>Claudio Lei=
te<br>Sent from my awsome Windows Phone<br></div></div><hr><span style=3D"f=
ont-family: Tahoma,sans-serif; font-size: 10pt; font-weight: bold;">From: <=
/span><span style=3D"font-family: Tahoma,sans-serif; font-size: 10pt;">Andr=
=C3=A9 Henrique</span><br><span style=3D"font-family: Tahoma,sans-serif; fo=
nt-size: 10pt; font-weight: bold;">Sent: </span><span style=3D"font-family:=
Tahoma,sans-serif; font-size: 10pt;">24.mai.2012 16:40</span><br><span sty=
le=3D"font-family: Tahoma,sans-serif; font-size: 10pt; font-weight: bold;">=
To: </span><span style=3D"font-family: Tahoma,sans-serif; font-size: 10pt;"=
>almb...@googlegroups.com</span><br><span style=3D"font-family: Tahoma,sa=
ns-serif; font-size: 10pt; font-weight: bold;">Subject: </span><span style=
=3D"font-family: Tahoma,sans-serif; font-size: 10pt;">Re: [ALM Brasil] Team=
Foundation Build - Posso criar uma build mesclando arquivos de v=C3=A1rios=
diret=C3=B3rios?</span><br><br></body></html><b>Agora sim!!! Segue texto c=
ompleto:</b><br><br><br>Trabalho em um projeto, onde o sistema utiliza para=
as camadas internas VB6 (que geram DLL&#39;s registradas no COM+) e a inte=
rface =C3=A9 VB .Net. Atualmente trabalhamos com o Visual SourceSafe e a ba=
se de dados do VSS j=C3=A1 ultrapassa os 18 GB, e isso tem gerado inconsist=
=C3=AAncia na sua utiliza=C3=A7=C3=A3o. Comecei a fazer o estudo de migra=
=C3=A7=C3=A3o para o TFS 2010. Entretanto, estou me esbarrando com diversos=
problemas.<br>
<br>Para voc=C3=AAs entenderem melhor o problema, temos no <b>VSS a seguint=
e estrutura</b>:<br><b>- Referencias<br>- Sistemas<br>=C2=A0=C2=A0=C2=A0 - =
M=C3=B3dulo 1</b><br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_mod=
ulo1.sln<br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_modulo1.vbp<=
br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_modulo1.aspx<br>
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_modulo1.vb<br>=C2=A0=C2=
=A0<b>=C2=A0 - M=C3=B3dulo 2</b><br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 -=
arquivo_do_modulo2.sln<br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_=
do_modulo2.vbp<br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_modulo=
2.aspx<br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_modulo2.vb<br>=
=C2=A0=C2=A0=C2=A0 <b>- M=C3=B3dulo 3<br>
=C2=A0=C2=A0=C2=A0 .<br>=C2=A0=C2=A0=C2=A0 .<br>=C2=A0=C2=A0=C2=A0 .<br>=C2=
=A0=C2=A0=C2=A0 - M=C3=B3dulo 27</b><br>=C2=A0=C2=A0=C2=A0 <br>Cada m=C3=B3=
dulo desse =C3=A9 utilizado para compila=C3=A7=C3=A3o. Na <b>m=C3=A1quina d=
o desenvolvedor</b> temos a seguinte estrutura:<br><b>- Referencias<br>- Pr=
ojeto_Desenvolvimento</b><br>
=C2=A0=C2=A0=C2=A0 - solucao.sln (n=C3=A3o controlado pelo VSS)<br>=C2=A0=
=C2=A0=C2=A0 - projeto.vbp (n=C3=A3o controlado pelo VSS)<br>=C2=A0=C2=A0=
=C2=A0 - arquivo_do_modulo1.aspx<br>=C2=A0=C2=A0=C2=A0 - arquivo_do_modulo1=
.vb<br>=C2=A0=C2=A0=C2=A0 - arquivo_do_modulo2.aspx<br>=C2=A0=C2=A0=C2=A0 -=
arquivo_do_modulo2.vb<br>
<b>- Sistemas<br>=C2=A0=C2=A0=C2=A0 - M=C3=B3dulo 1</b><br>=C2=A0=C2=A0=C2=
=A0 =C2=A0=C2=A0=C2=A0 - solucao_do_modulo1.sln<br>=C2=A0=C2=A0=C2=A0 =C2=
=A0=C2=A0=C2=A0 - projeto_do_modulo1.vbp<br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=
=C2=A0 - arquivo_do_modulo1.aspx<br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 -=
arquivo_do_modulo1.vb<br>=C2=A0=C2=A0<b>=C2=A0 - M=C3=B3dulo 2</b><br>=C2=
=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - solucao_do_modulo2.sln<br>
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - projeto_do_modulo2.vbp<br>=C2=A0=C2=
=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_modulo2.aspx<br>=C2=A0=C2=A0=C2=
=A0 =C2=A0=C2=A0=C2=A0 - arquivo_do_modulo2.vb<br>=C2=A0=C2=A0=C2=A0 <b>- M=
=C3=B3dulo 3<br>=C2=A0=C2=A0=C2=A0 .<br>=C2=A0=C2=A0=C2=A0 .<br>=C2=A0=C2=
=A0=C2=A0 .<br>=C2=A0=C2=A0=C2=A0 - M=C3=B3dulo 27</b><br><i><span style=3D=
"background-color:rgb(255,255,255);color:rgb(0,0,0)">=C2=A0=C2=A0=C2=A0 </s=
pan><br style=3D"background-color:rgb(255,255,255);color:rgb(0,0,0)">
</i><span style=3D"color:rgb(0,0,0);background-color:rgb(255,255,255)">OBS1=
.: Em projeto_desenvolvimento =C3=A9 colocado qualquer .ASPX + .VB de qualq=
uer m=C3=B3dulo, de acordo com a necessidade de desenvolvimento<br>OBS2.: U=
tilizamos como m=C3=A9todo de trabalho a seguinte sequ=C3=AAncia - Checkamo=
s o arquivo em &quot;projeto_desenvolvimento&quot;, alteramos, debugamos, e=
tc. Quando o arquivo est=C3=A1 OK, =C3=A9 dado Check-in e em seguida baixam=
os todo o m=C3=B3dulo em sistemas s=C3=B3 para compilar.</span><br>
<br><b>O problema:<br>O TFS n=C3=A3o permite dar Get ou Check-out em locais=
n=C3=A3o mapeados, impossibilitando de manter essa mesma estrutura no TFS.=
</b><br><br><br><b style=3D"color:rgb(51,51,255)">******* Solu=C3=A7=C3=A3o=
que tenho em mente:</b><br>
<br><u>Criar no TFS a seguinte estrutura:</u><br><br><b>- Referencias<br>- =
Projeto_Desenvolvimento</b><br>=C2=A0=C2=A0=C2=A0 - solucao.sln<br>=C2=A0=
=C2=A0=C2=A0 - projeto.vbp<br>=C2=A0=C2=A0=C2=A0 - Todos os arquivos de tod=
os os m=C3=B3dulos<br><b>- Sistemas<br>=C2=A0=C2=A0=C2=A0 - M=C3=B3dulo 1</=
b><br>
=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - solucao_do_modulo1.sln<br>=C2=A0=C2=
=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - projeto_do_modulo1.vbp<br>=C2=A0=C2=A0<b>=C2=
=A0 - M=C3=B3dulo 2</b><br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - solucao_=
do_modulo2.sln<br>=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 - projeto_do_modulo=
2.vbp<br>=C2=A0=C2=A0=C2=A0 .<br>=C2=A0=C2=A0=C2=A0 .<br>=C2=A0=C2=A0=C2=A0=
.<br>=C2=A0=C2=A0=C2=A0<b> - M=C3=B3dulo 27</b><br>
<br>Ter=C3=ADamos um projeto de desenvolvimento com todos os arquivos junto=
s, mas na hora de compilar precisaria criar uma BUILD que buscasse as refer=
encias no diret=C3=B3rio &quot;referencias&quot;, os arquivos .aspx e .vbp =
do m=C3=B3dulo que estaria compilando em &quot;projeto_desenvolvimento&quot=
; e a solu=C3=A7=C3=A3o na pasta do m=C3=B3dulo (que teria s=C3=B3 a solu=
=C3=A7=C3=A3o e o .vbp - talvez algum outro espec=C3=ADfico).<br>
<br>Entretanto, <b>n=C3=A3o sei se build consegue fazer isso, nem estou enc=
ontrando alguma outra ideia para resolver esse problema.</b><br><br><br>Des=
de j=C3=A1 agrade=C3=A7o a aten=C3=A7=C3=A3o,<br><br>-- <br>---------------=
---------<div><b><i>Andr=C3=A9 Henrique</i></b></div>
<div><a href=3D"mailto:con...@andrehenrique.com.br" target=3D"_blank">cont=
a...@andrehenrique.com.br</a></div><div>(81) 9655-6625</div><br><br><div cla=
ss=3D"gmail_quote">Em 24 de maio de 2012 11:38, cezar hiraki velazquez <spa=
n dir=3D"ltr">&lt;<a href=3D"mailto:yukito...@gmail.com" target=3D"_bla=
nk">yukito...@gmail.com</a>&gt;</span> escreveu:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">Andr=C3=A9=C2=A0<div><br></div><div>O e-mail=
veio sem a parte onde voc=C3=AA mostra a estrutura,</div><div><br></div><d=
iv>Abs,</div><div>
C=C3=A9zar Vel=C3=A1zquez<br><br><div class=3D"gmail_quote">Em 24 de maio d=
e 2012 11:23, Andr=C3=A9 Henrique <span dir=3D"ltr">&lt;<a href=3D"mailto:c=
ont...@andrehenrique.com.br" target=3D"_blank">con...@andrehenrique.com.br=
</a>&gt;</span> escreveu:<div class=3D"im">
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">Ol=C3=A1 pessoal,<br><br>Trabalho em um proj=
eto, onde o sistema utiliza para as camadas internas VB6 (que geram DLL&#39=
;s registradas no COM+) e a interface =C3=A9 VB .Net. Atualmente trabalhamo=
s com o Visual SourceSafe e a base de dados do VSS j=C3=A1 ultrapassa os 18=
GB, e isso tem gerado inconsist=C3=AAncia na sua utiliza=C3=A7=C3=A3o. Com=
ecei a fazer o estudo de migra=C3=A7=C3=A3o para o TFS 2010. Entretanto, es=
tou me esbarrando com diversos problemas. <br>

<br>Para voc=C3=AAs entenderem melhor o problema, temos no VSS a seguinte e=
strutura:<br><br></blockquote></div></div><br></div>
</blockquote></div><br><br clear=3D"all"><br>

--485b390f79fee95cf204c0cd6aa8--

André Henrique

unread,
May 25, 2012, 10:18:36 AM5/25/12
to almb...@googlegroups.com, André Henrique

Claudio Leite,

Muito obrigado pela resposta, estou lendo o material (espero encontrar alguma luz - risos).

Mas ja explicando um pouco mais, o problema eh que a area de projeto_desenvolvimento (area de desenvolvimento de novas funcionalidades) eh diferente da area de sistemas (usada para compilacao).
Em sistemas temos os modulos separados por pastas/diretorios, cada pasta eh um projeto separado (um modulo do sistema).
Em desenvolvimento temos alguns arquivos de cada uma dessas pastas (conforme a necessidade de cada desenvolvedor).

A imagem  abaixo ilustra como eh o funcionamento no VSS. A pasta Sistemas eh mapeada juntamente com Sistemas do respositorio, entretanto em desenvolvimento o desenvolvedor seleciona (da get e check-out) em alguns arquivos aleatorios (conforme necessidade) de qualquer pasta em Sistemas. Em desenvolvimento nao existe subpastas, a pasta Sistema soh eh usada para compilacao.

O TFS nao permite dar Get ou Check-out fora do mapeamento.
O TFS remove os arquivos ao retirar mapeamento.
Esses comportamentos do TFS impossibilitam replicarmos a nossa metologia de trabalho.

Pensei em criar um projeto de desenvolvimento com todos os modulos juntos (sem pasta), e recriar a estrutura de Sistemas usando BUILD's, mas para isso a build precisa selecionar arquivos específicos do projeto Desenvolvimento.
Ou usar essa mesma ideia, só que com Branch, ou seja, cada modulo seria um branch "parcial" de desenvolvimento, se isso for possível.

Abracos,


Andre Henrique

PS.: Digitei sem acento ou caracter especial.

Claudio Bernardo

unread,
May 27, 2012, 11:30:59 AM5/27/12
to André Henrique, almb...@googlegroups.com
Andre,

Quando vc diz que em sistemas vc tem alguns arquivos, isso significa.que tem mais ou menos arquivos nessa outra area?

Exemplificando, na area de projeto_desenvolvimento vc tem o modulo A com 10 arquivos e na area de sistemas, independente um pouco da estrutura de pastas, para o modulo A vc tem mais ou menos arquivos ou os mesmos arquivos?

Abs

Claudio Leite



Sent from my awsome Windows Phone

From: André Henrique
Sent: 25.mai.2012 11:18
To: almb...@googlegroups.com
Cc: André Henrique

Subject: Re: [ALM Brasil] Team Foundation Build - Posso criar uma build

Reply all
Reply to author
Forward
0 new messages