Thanks….
--Chung
From: Winston
Prakash
[mailto:winston.prakash@xxxxxxxxx]
Sent: Monday, April 02, 2012 5:15 PM
To: Hudson developer discussions
Cc: Ley, Chung
Subject: Re: [hudson-dev] General newbie question
(projects + job
executions)
On 3/29/12 9:49 AM, Ley, Chung wrote:
Thanks for your
responses.
I am also new
(not familiar)
with Maven, but from what I heard, I will like need that as
the
“clue” to combine projects/artifacts together. However, I
don’t know what the learning curve will be like since I may
have to start
with something quickly and fast.
I
would highly recommend using maven. If you are new to maven
you might want to
read these e-books
Maven
by
example
Maven
Cook
Book
Maven:
The
Complete Reference
Maven helps you to divide your project components in to
buildable chunks and
create artifacts. These artifacts can be referenced from
other components. Then
you can build the final application by combining the
artifacts of each module.

As for the
remote
job…. Will I still need to install something on the
“farm” in order for Hudson to initiate and wait for job that
way,
it sounds like that I don’t if we are to just have Hudson to
call and
WAIT. On the other hand, I do have integration test that
will takes 12hrs
+ running on a 100CPU farm; so I will likely like to option
to not to wait.
I'm not sure what do you mean by virtual Farm. Are they
virual machines
(VmWare, VirtualBox etc)? If so one possibility is to add
those VMs as
slaves to Hudson and tie your Integration Test job to that
slave.
I am having
problem with setting
up ldap configuration and may need additional help. For
now, my plan is
that everyone will need to logs on using the Windows
authentication AND then
certain ids will have special permissions (such as mine)….
However,
I guess I will need an “admin” account that manage all of
that,
right? I assumed that I do that via some configuration
file. Can
you point me to it?
From
your other e-mail, I guess you are successful in setting up
LDAP
authentication. I would suggest Matrix/Project
authorization.
Currently, I am
deploying Hudson
as a WAR file inside JBoss, but that seems to make the
editing of the
configuration files so much more difficult…. Do you
recommend that
I deploy that as a native application?
Depends on your needs. For large number of builds better to
use sophisticated
Java EE appserver, than the bundled simple Servlet
Container.
Finally…. I am
so
sorry to have so many questions…. Can you recommend any
additional
resource/documentation for learning best practices and other
aspects of
Hudson…. I am starting with the Hudson “Book”
from the web site, and some of the other PPTs that are
available there; but you
may have additional recommendations…. Just trying to learn
the
different available plug-ins are time consumingJ
If you outline your requirements we may be able to point you
to the right
plugins. Eventually you might want to write your own plugin,
you don't any of
the plugin suits your requirements.
- Winston
Thanks again.
--Chung
Hi,
Answers inline...
Although they might be classed more as opinion than answers.
On 27/03/2012 15:59, Ley, Chung wrote:
Hi,
I am very new to Hudson and as a matter of
fact I am new to
using CI.
I am looking into setting up Hudson, but
have a couple of
general design questions.
I have
projects where each
project encompass a number of different components/parts where
each part is
being developed by a different set of developers. What is the
best way to
model that in Hudson?
We
use Hudson project jobs for each component in this case,
then each dev team can
see there component build and test results by checking there
job results. You
cna then use artifacts from those component jobs to build
larger integration
projects that show results of that integration, building up
to the logical 'whole
thing'. It's slightly harder to architect, although not that
hard if you are
using maven.
The
"test"
job/script that need to be done for some of these components
can be huge tasks
and the job need to submit to a virtual farm for "execution".
Is that possible? How do you approach that? It sounds like I
like
to install some execution agent/broker in the server farm side
to make this
happen.
Depending
on how you submit to this farm and how the results are
reported you could use a
Hudson job to submit and wait for the results, although this
would block a
Hudson executor, it wouldn't massively increase your server
load as it would
just be waiting. Investigate the build timeout plugin to
protect from farm
failures etc...
Also have a look at Hudson's ability to fingerprint files in
sub-projects and
join up test results based on the shared usage of a
fingerprinted file.
Do you
manage the
development + main + release branches all in the same CI
server or do you
manage them in separate CI? How do you model it such that the
main is
"build" from the development? How do you make such build that
by default it is only on a successful build (without error)
from the
development, but allow certain users to override it?
You
can manage these in the same CI and promote builds up
through the levels. Have
a look at the promoted builds plugin for what you can do.
You can streamline
the UI by having development, main, and release views that
can be used by the
different groups, dev, qa, etc...
Thanks…
--Chung
_______________________________________________
hudson-dev mailing list
hudson-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/hudson-dev
_______________________________________________
hudson-dev mailing list
hudson-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/hudson-dev