Re: Skill set to maintain a enterprise build system using Maven
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
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
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
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
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
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
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 >