Re: Skill set to maintain a enterprise build system using Maven

2015-05-30 Thread Dan Tran
Hi Ron

One person may not be desirable  since he/she may win a lottery :-)

Developers should not change the POM who would? RelEng?

Thanks

-Dan

On Sat, May 30, 2015 at 3:22 PM, Ron Wheeler  wrote:

> On 30/05/2015 1:29 AM, Dan Tran wrote:
>
>> Hi
>>
>>
>>   I would like to ask if the community can share with me what it takes to
>> maintain an enterprise build system with continuous integration of 100+
>> developer + QA and growing using Maven.  The build system contains many
>> components with their own release cycle and they do integrate together.
>>
>>
>> - is java skill set to develop plugin a must?
>>
> a) Most projects should not need to develop plug-ins.
> b) This is a one-time need if it exists and there are companies and
> consultants available to do this for you
>
>> - do you have a team or just a few of deep understanding of Maven
>> developers?
>>
> One personwill do.
>
>> - will a none java RelEng able to perform Maven release?
>>
> Sure
>
>> - does your RelEng maintains the pom or developers?
>>
> developers should not touch POMs
>
>> - what are your challenges?
>>
> a) adjusting your project structure and methodology to incorporate "the
> maven way"
> b) resisting the impulse to try to impose an existing mindset about
> development and build processes on Maven
>
>  Thanks
>>
>> -Dan
>>
>>
>
> --
> Ron Wheeler
> President
> Artifact Software Inc
> email: rwhee...@artifact-software.com
> skype: ronaldmwheeler
> phone: 866-970-2435, ext 102
>
>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>
>


Re: Skill set to maintain a enterprise build system using Maven

2015-05-30 Thread Ron Wheeler

On 30/05/2015 1:29 AM, Dan Tran wrote:

Hi


  I would like to ask if the community can share with me what it takes to
maintain an enterprise build system with continuous integration of 100+
developer + QA and growing using Maven.  The build system contains many
components with their own release cycle and they do integrate together.


- is java skill set to develop plugin a must?

a) Most projects should not need to develop plug-ins.
b) This is a one-time need if it exists and there are companies and 
consultants available to do this for you

- do you have a team or just a few of deep understanding of Maven
developers?

One personwill do.

- will a none java RelEng able to perform Maven release?

Sure

- does your RelEng maintains the pom or developers?

developers should not touch POMs

- what are your challenges?
a) adjusting your project structure and methodology to incorporate "the 
maven way"
b) resisting the impulse to try to impose an existing mindset about 
development and build processes on Maven



Thanks

-Dan




--
Ron Wheeler
President
Artifact Software Inc
email: rwhee...@artifact-software.com
skype: ronaldmwheeler
phone: 866-970-2435, ext 102


-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Skill set to maintain a enterprise build system using Maven

2015-05-30 Thread Dan Tran
Hi Mirko

Looks like you have Artifactory to store all of release artifacts and
another 'release' repo to store the final approved release

Is internal tooling, thirdparty upload  going thru the same release process?

Thanks

-Dan

On Sat, May 30, 2015 at 2:41 PM, Mirko Friedenhagen  wrote:

> Hello Dan,
>
> - Every developer may deploy SNAPSHOTs, however this is normally done
> by Jenkins.
> - We do not enforce staging from Jenkins, however almost all projects
> do this. We do not enforce this, so Jenkins outages do not inhibit
> releasing hot fixes.
> - Releases are deployed to a staging repository in Artifactory and we
> have a process called package-qa where for every staged release a
> corresponding JIRA ticket has to be created with information (changes,
> Wiki page, diff link since last release, ticket queue). This is a
> central place where you may see all releases in one place.
> - This ticket is parsed by a script from Jenkins which procures
> artifacts from staging to a releases repository and adds general
> quality information from SonarQube and Jenkins as well as the SHA1
> sums to the ticket so we have a second record which may be used to
> detect forgery. Additionally the script checks for the existence of
> the SCM tag and retrieves the number of changed lines between
> releases.
> - No blocker or critical and no new major issues are allowed in
> SonarQube, otherwise procurement will fail.
> - The reporter and the "mover" have to be different persons to enforce
> a "four eyes" principle.
> - The "mover" (sometimes someone from development QA, most of the
> times nowadays another developer) has to check some things and must
> inspect the diff to detect whether all changes are explained.
> - Our operations teams will only pick production releases from the
> final releases repository, other stages may pick up artifacts from the
> staging repository.
> - We do not sign artifacts.
>
> Regards
> Mirko
> Regards Mirko
> --
> http://illegalstateexception.blogspot.com/
> https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
> https://bitbucket.org/mfriedenhagen/
>
>
> On Sat, May 30, 2015 at 7:31 PM, Dan Tran  wrote:
> > Thanks Mirko
> >
> >   * What about snapshot and release policy, do developers/qa have access
> to
> > deploy snapshot and release artifacts?
> >   * do you use artifact signing similar to Maven Central?
> >
> >
> > Thanks again
> >
> > -Dan
> >
> > On Sat, May 30, 2015 at 9:21 AM, Mirko Friedenhagen <
> mfriedenha...@gmail.com
> >> wrote:
> >
> >> What I forgot:
> >>
> >> patience, social skills  and remembering that not every application
> >> developer needs to be a build specialist are important as well :-)
> >>
> >> Regards
> >> Mirko
> >> --
> >> Sent from my mobile
> >> Am 30.05.2015 07:29 schrieb "Dan Tran" :
> >>
> >> > Hi
> >> >
> >> >
> >> >  I would like to ask if the community can share with me what it takes
> to
> >> > maintain an enterprise build system with continuous integration of
> 100+
> >> > developer + QA and growing using Maven.  The build system contains
> many
> >> > components with their own release cycle and they do integrate
> together.
> >> >
> >> >
> >> >- is java skill set to develop plugin a must?
> >> >- do you have a team or just a few of deep understanding of Maven
> >> > developers?
> >> >- will a none java RelEng able to perform Maven release?
> >> >- does your RelEng maintains the pom or developers?
> >> >- what are your challenges?
> >> >
> >> > Thanks
> >> >
> >> > -Dan
> >> >
> >>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>
>


Re: Skill set to maintain a enterprise build system using Maven

2015-05-30 Thread Mirko Friedenhagen
Hello Dan,

- Every developer may deploy SNAPSHOTs, however this is normally done
by Jenkins.
- We do not enforce staging from Jenkins, however almost all projects
do this. We do not enforce this, so Jenkins outages do not inhibit
releasing hot fixes.
- Releases are deployed to a staging repository in Artifactory and we
have a process called package-qa where for every staged release a
corresponding JIRA ticket has to be created with information (changes,
Wiki page, diff link since last release, ticket queue). This is a
central place where you may see all releases in one place.
- This ticket is parsed by a script from Jenkins which procures
artifacts from staging to a releases repository and adds general
quality information from SonarQube and Jenkins as well as the SHA1
sums to the ticket so we have a second record which may be used to
detect forgery. Additionally the script checks for the existence of
the SCM tag and retrieves the number of changed lines between
releases.
- No blocker or critical and no new major issues are allowed in
SonarQube, otherwise procurement will fail.
- The reporter and the "mover" have to be different persons to enforce
a "four eyes" principle.
- The "mover" (sometimes someone from development QA, most of the
times nowadays another developer) has to check some things and must
inspect the diff to detect whether all changes are explained.
- Our operations teams will only pick production releases from the
final releases repository, other stages may pick up artifacts from the
staging repository.
- We do not sign artifacts.

Regards
Mirko
Regards Mirko
--
http://illegalstateexception.blogspot.com/
https://github.com/mfriedenhagen/ (http://osrc.dfm.io/mfriedenhagen)
https://bitbucket.org/mfriedenhagen/


On Sat, May 30, 2015 at 7:31 PM, Dan Tran  wrote:
> Thanks Mirko
>
>   * What about snapshot and release policy, do developers/qa have access to
> deploy snapshot and release artifacts?
>   * do you use artifact signing similar to Maven Central?
>
>
> Thanks again
>
> -Dan
>
> On Sat, May 30, 2015 at 9:21 AM, Mirko Friedenhagen > wrote:
>
>> What I forgot:
>>
>> patience, social skills  and remembering that not every application
>> developer needs to be a build specialist are important as well :-)
>>
>> Regards
>> Mirko
>> --
>> Sent from my mobile
>> Am 30.05.2015 07:29 schrieb "Dan Tran" :
>>
>> > Hi
>> >
>> >
>> >  I would like to ask if the community can share with me what it takes to
>> > maintain an enterprise build system with continuous integration of 100+
>> > developer + QA and growing using Maven.  The build system contains many
>> > components with their own release cycle and they do integrate together.
>> >
>> >
>> >- is java skill set to develop plugin a must?
>> >- do you have a team or just a few of deep understanding of Maven
>> > developers?
>> >- will a none java RelEng able to perform Maven release?
>> >- does your RelEng maintains the pom or developers?
>> >- what are your challenges?
>> >
>> > Thanks
>> >
>> > -Dan
>> >
>>

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Skill set to maintain a enterprise build system using Maven

2015-05-30 Thread Dan Tran
Thanks Mirko

  * What about snapshot and release policy, do developers/qa have access to
deploy snapshot and release artifacts?
  * do you use artifact signing similar to Maven Central?


Thanks again

-Dan

On Sat, May 30, 2015 at 9:21 AM, Mirko Friedenhagen  wrote:

> What I forgot:
>
> patience, social skills  and remembering that not every application
> developer needs to be a build specialist are important as well :-)
>
> Regards
> Mirko
> --
> Sent from my mobile
> Am 30.05.2015 07:29 schrieb "Dan Tran" :
>
> > Hi
> >
> >
> >  I would like to ask if the community can share with me what it takes to
> > maintain an enterprise build system with continuous integration of 100+
> > developer + QA and growing using Maven.  The build system contains many
> > components with their own release cycle and they do integrate together.
> >
> >
> >- is java skill set to develop plugin a must?
> >- do you have a team or just a few of deep understanding of Maven
> > developers?
> >- will a none java RelEng able to perform Maven release?
> >- does your RelEng maintains the pom or developers?
> >- what are your challenges?
> >
> > Thanks
> >
> > -Dan
> >
>


Re: Skill set to maintain a enterprise build system using Maven

2015-05-30 Thread Mirko Friedenhagen
What I forgot:

patience, social skills  and remembering that not every application
developer needs to be a build specialist are important as well :-)

Regards
Mirko
-- 
Sent from my mobile
Am 30.05.2015 07:29 schrieb "Dan Tran" :

> Hi
>
>
>  I would like to ask if the community can share with me what it takes to
> maintain an enterprise build system with continuous integration of 100+
> developer + QA and growing using Maven.  The build system contains many
> components with their own release cycle and they do integrate together.
>
>
>- is java skill set to develop plugin a must?
>- do you have a team or just a few of deep understanding of Maven
> developers?
>- will a none java RelEng able to perform Maven release?
>- does your RelEng maintains the pom or developers?
>- what are your challenges?
>
> Thanks
>
> -Dan
>


Re: Skill set to maintain a enterprise build system using Maven

2015-05-30 Thread Mirko Friedenhagen
Hello Dan,

currently I have a team of two (with me three) devops guys.
We provide 30 Jenkins masters with 20 build nodes and about 1800 jobs which
we provision ourselves as well (Debian is already installed and we are able
to login via ssh).
We provide the department pom, some Maven plugins, Artifactory, Gitlab,
several SonarQube instances, several Testlink instances and some other
minor systems as well.

The department has about 200 developers, 150 of them use Java/Maven, the
others objective-c, c++, Scala, Python, PHP, JavaScript and Ruby.

Most teams do have one developer who is more interested in build tooling
and we support them with diagnosis of Jenkins or Maven related problems
(nowadays we try to answer questions for SBT and npm as well..).

We all have a sound knowledge of Java, Python and Shell.

Now: while you may write Maven plugins in Jython, Ant or any other JVM
language, most of the documentation is directed to writing these in Java.

Releasing with Maven is trivial once the project is setup properly, so no
Java knowhow is needed here, IMO.

The poms are maintained by the teams/developers, we help when they
encounter problems (which might to restructuring the project as well).

The challenges are mostly with the non-Maven projects, IMO having a soundly
setup department pom *and* settings will help, Maven is a very good build
tool for company setups.

Because of the many systems (we have to arrange for firewall settings from
build nodes to qa systems as well) we get about 4 support requests per day,
so one of us is ticketeer of the day.

Regards
Mirko
-- 
Sent from my mobile
Am 30.05.2015 07:29 schrieb "Dan Tran" :

> Hi
>
>
>  I would like to ask if the community can share with me what it takes to
> maintain an enterprise build system with continuous integration of 100+
> developer + QA and growing using Maven.  The build system contains many
> components with their own release cycle and they do integrate together.
>
>
>- is java skill set to develop plugin a must?
>- do you have a team or just a few of deep understanding of Maven
> developers?
>- will a none java RelEng able to perform Maven release?
>- does your RelEng maintains the pom or developers?
>- what are your challenges?
>
> Thanks
>
> -Dan
>