cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Edison Su <Edison...@citrix.com>
Subject RE: RPM build is fixed, sort of...
Date Fri, 07 Sep 2012 00:12:49 GMT


> -----Original Message-----
> From: Rohit Yadav
> Sent: Thursday, September 06, 2012 2:48 AM
> To: cloudstack-dev@incubator.apache.org
> Cc: Edison Su
> Subject: Re: RPM build is fixed, sort of...
> 
> 
> On 06-Sep-2012, at 3:06 PM, Hugo Trippaers
> <HTrippaers@schubergphilis.com> wrote:
> 
> > Hey Edison,
> >
> > That should be easy to do once the build is "mavenized". I'm starting
> to seriously dislike waf already, so would be happy to see it go.
> 
> What technical difficulties are you facing with waf? Let's not take
> decision based on one's preference.
> 
> If we decide to get rid of war, then I can try to write cmake based
> packaging scripts that package debs and rpm.
> (I package/release debs/rpm for VideoLAN's VLMC,
> https://github.com/bhaisaab/cmakeqt)

Yah, basically, we just need a tool for "make install", waf can do it, but the current waf
script has some many dead code(people trying to do everything in waf).
We can either cleanup waf, or use maven to package the whole thing. To me, both are ok.
BTW, will you want to help us on the build system?

> 
> Rohit
> 
> >
> > Cheers,
> >
> > Hugo
> >
> > Sent from my iPhone
> >
> > On 6 sep. 2012, at 10:22, "Edison Su" <Edison.su@citrix.com> wrote:
> >
> >> I just thought about how to get rid of waf, and how to package
> artifacts build by maven. I don't want to hack on the waf stuff, which
> gets easy thing done but to complicated.
> >> If war build by maven contains all the files needed by packager,
> then we probably just unzip the war, then call rpmbuild to build rpm.
> >> Does war contain files under agent/distro? Or maybe write another
> assembly plugin to package all these system level configuration files?
> >>
> >> Sent from my iPhone
> >>
> >> On Sep 5, 2012, at 11:37 PM, "Hugo Trippaers"
> <HTrippaers@schubergphilis.com> wrote:
> >>
> >>> Yeah, I know ;-).  I'm doing builds and deployments for all
> software in our company. It's not that bad once you get to know it, but
> maven expects you to do things the maven way.
> >>>
> >>> As for building packages, maven is designed to take care of all
> dependency problems directly. In the maven world the build would
> produce an artifact that would be packaged later on. So in our case the
> artifact would be a war file with all code for the server (including ui
> components) and several jar files with for example the agent and
> console-proxy. Currently our package system is designed to collect all
> loose jars itself and put it into a package. The "maven" way would be
> to take the war file and deploy that file.
> >>>
> >>> If you build using the "mvn -P client" command, you will find the
> war file in "client/target/cloud-client-ui-4.0.0-SNAPSHOT.war". If you
> look inside that file it should contain everything needed to run the
> webapplication for the server (awsapi has a similar file). Technically
> you should be able to drop that webapplication in any java web
> container and run the UI without having to worry about dependencies.
> >>>
> >>> I haven't checked all the libs yet, but with maven we can define
> which libs are required for various stages; compiling, testing, runtime,
> and a special for provided. This controls if a lib is added to the
> compile classpath, the runtime classpath or the test classpath.
> Provided means we need it for compilation but we expect that it is
> present when we install the application. Good examples of provided is
> the servlet api, you need it for compilation, but it is present on all
> web application containers.
> >>>
> >>> Back to your original question, how about packaging the war file
> directly? Or having rpm install unpack the war and add it to the rpm,
> would that safe you work to check the rpms?
> >>>
> >>> Cheers,
> >>>
> >>> Hugo
> >>>
> >>>> -----Original Message-----
> >>>> From: Edison Su [mailto:Edison.su@citrix.com]
> >>>> Sent: Wednesday, September 05, 2012 11:52 PM
> >>>> To: Hugo Trippaers
> >>>> Cc: cloudstack-dev@incubator.apache.org
> >>>> Subject: RE: RPM build is fixed, sort of...
> >>>>
> >>>> I can understand why build engineer doesn't like maven from my
> yesterday's
> >>>> experience.
> >>>> Maven automatically downloads a bunch of jars for you, that's good
> for
> >>>> developer, but a nightmare for build engineer. How can I find out
> which jar I
> >>>> should put into RPM/DEB?
> >>>> I need to manually test one by one.
> >>>>
> >>>>> -----Original Message-----
> >>>>> From: Hugo Trippaers [mailto:HTrippaers@schubergphilis.com]
> >>>>> Sent: Wednesday, September 05, 2012 1:52 PM
> >>>>> To: Edison Su
> >>>>> Cc: cloudstack-dev@incubator.apache.org
> >>>>> Subject: Re: RPM build is fixed, sort of...
> >>>>>
> >>>>> That's maven. A snapshot dependency will get a build version
> number
> >>>>> depending on the time it was built. Only release versions have a
> fixed
> >>>>> version number.
> >>>>>
> >>>>> Maven it self will automagically take this into account when
> building
> >>>>> classpaths, but for external tools it is a bit trickier.
> >>>>>
> >>>>> Cheers,
> >>>>>
> >>>>> Hugo
> >>>>>
> >>>>> Sent from my iPhone
> >>>>>
> >>>>> On 5 sep. 2012, at 19:00, "Edison Su" <Edison.su@citrix.com>
> wrote:
> >>>>>
> >>>>>> When I "mvn install" under deps folder, I got:
> >>>>>> [INFO] Copying xapi-5.6.100-1-SNAPSHOT.jar to /root/incubator-
> >>>>> cloudstack/deps/xapi-5.6.100-1-20120825.123319-1.jar
> >>>>>>
> >>>>>> Anybody knows why this happened?
> >>>>>>
> >>>>>>> -----Original Message-----
> >>>>>>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >>>>>>> Sent: Wednesday, September 05, 2012 9:36 AM
> >>>>>>> To: cloudstack-dev@incubator.apache.org
> >>>>>>> Cc: Hugo Trippaers
> >>>>>>> Subject: Re: RPM build is fixed, sort of...
> >>>>>>>
> >>>>>>> I'm getting xapi-5.6.100-1-SNAPSHOT.jar from a fresh pull
of
> the
> >>>>>>> 4.0 repo, then following the install-non-oss.sh instructions
> >>>>>>>
> >>>>>>> On Wed, Sep 5, 2012 at 10:09 AM, Edison Su
> <Edison.su@citrix.com>
> >>>>> wrote:
> >>>>>>>> What the name of the jar for xapi under deps folder
on your
> >>>>>>> environment?
> >>>>>>>>
> >>>>>>>> Sent from my iPhone
> >>>>>>>>
> >>>>>>>> On Sep 5, 2012, at 12:20 AM, "Hugo Trippaers"
> >>>>>>> <HTrippaers@schubergphilis.com> wrote:
> >>>>>>>>
> >>>>>>>>> Hey Edison,
> >>>>>>>>>
> >>>>>>>>> I still get an error when building rpms with your
changes:
> >>>>>>>>>
> >>>>>>>>> Processing files: cloud-utils-4.0.0-0.1.el6.maven.x86_64
> >>>>>>>>> Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.kvoZ6x
> >>>>>>>>> + umask 022
> >>>>>>>>> + cd /home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILD
> >>>>>>>>> + cd cloud-4.0.0
> >>>>>>>>> + DOCDIR=/home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILDROOT/cloud-4.0.0-
> >>>>>>> 0.1.el6.maven.x86_64/usr/share/doc/cloud-utils-4.0.0
> >>>>>>>>> + export DOCDIR
> >>>>>>>>> + rm -rf /home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILDROOT/cloud-4.0.0-
> >>>>>>> 0.1.el6.maven.x86_64/usr/share/doc/cloud-utils-4.0.0
> >>>>>>>>> + /bin/mkdir -p /home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILDROOT/cloud-4.0.0-
> >>>>>>> 0.1.el6.maven.x86_64/usr/share/doc/cloud-utils-4.0.0
> >>>>>>>>> + cp -pr README.html /home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILDROOT/cloud-4.0.0-
> >>>>>>> 0.1.el6.maven.x86_64/usr/share/doc/cloud-utils-4.0.0
> >>>>>>>>> + cp -pr debian/copyright /home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILDROOT/cloud-4.0.0-
> >>>>>>> 0.1.el6.maven.x86_64/usr/share/doc/cloud-utils-4.0.0
> >>>>>>>>> + exit 0
> >>>>>>>>> Requires(rpmlib): rpmlib(CompressedFileNames) <=
3.0.4-1
> >>>>>>> rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> >>>>>>> rpmlib(VersionedDependencies) <= 3.0.3-1
> >>>>>>>>> Requires: /usr/bin/env
> >>>>>>>>> Obsoletes: vmops-utils < 4.0.0-0.1.el6.maven
Processing files:
> >>>>>>>>> cloud-client-ui-4.0.0-0.1.el6.maven.x86_64
> >>>>>>>>> Requires(interp): /bin/sh
> >>>>>>>>> Requires(rpmlib): rpmlib(CompressedFileNames) <=
3.0.4-1
> >>>>>>> rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> >>>>>>> rpmlib(VersionedDependencies) <= 3.0.3-1
> >>>>>>>>> Requires(pre): /bin/sh
> >>>>>>>>> Obsoletes: vmops-client-ui < 4.0.0-0.1.el6.maven
Processing
> >>>>>>>>> files: cloud-server-4.0.0-0.1.el6.maven.x86_64
> >>>>>>>>> Provides: config(cloud-server) = 4.0.0-0.1.el6.maven
> >>>>>>>>> Requires(rpmlib): rpmlib(CompressedFileNames) <=
3.0.4-1
> >>>>>>> rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> >>>>>>> rpmlib(VersionedDependencies) <= 3.0.3-1
> >>>>>>>>> Obsoletes: vmops-server < 4.0.0-0.1.el6.maven
Processing
> files:
> >>>>>>>>> cloud-agent-scripts-4.0.0-0.1.el6.maven.x86_64
> >>>>>>>>> Processing files: cloud-python-4.0.0-0.1.el6.maven.x86_64
> >>>>>>>>> Requires(rpmlib): rpmlib(CompressedFileNames) <=
3.0.4-1
> >>>>>>> rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> >>>>>>>>> Requires: /bin/bash /usr/bin/python python(abi)
= 2.6
> Processing
> >>>>>>>>> files: cloud-deps-4.0.0-0.1.el6.maven.x86_64
> >>>>>>>>> error: File not found: /home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILDROOT/cloud-4.0.0-
> >>>>>>> 0.1.el6.maven.x86_64/usr/share/java/xapi-5.6.100-1-
> 20120825.123319-
> >>>>>>> 1.jar
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> RPM build errors:
> >>>>>>>>> File not found: /home/spark/git-workdir/incubator-
> >>>>>>> cloudstack/artifacts/rpmbuild/BUILDROOT/cloud-4.0.0-
> >>>>>>> 0.1.el6.maven.x86_64/usr/share/java/xapi-5.6.100-1-
> 20120825.123319-
> >>>>>>> 1.jar
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> Cheers,
> >>>>>>>>>
> >>>>>>>>> Hugo
> >>>>>>>>>
> >>>>>>>>>> -----Original Message-----
> >>>>>>>>>> From: Hugo Trippaers [mailto:HTrippaers@schubergphilis.com]
> >>>>>>>>>> Sent: Wednesday, September 05, 2012 8:24 AM
> >>>>>>>>>> To: 'Edison Su'; cloudstack-dev@incubator.apache.org
> >>>>>>>>>> Subject: RE: RPM build is fixed, sort of...
> >>>>>>>>>>
> >>>>>>>>>> Hey Edison,
> >>>>>>>>>>
> >>>>>>>>>> No problem, I'll leave it to you then.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Cheers,
> >>>>>>>>>>
> >>>>>>>>>> Hugo
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>> -----Original Message-----
> >>>>>>>>>>> From: Edison Su [mailto:Edison.su@citrix.com]
> >>>>>>>>>>> Sent: Wednesday, September 05, 2012 6:42
AM
> >>>>>>>>>>> To: cloudstack-dev@incubator.apache.org
> >>>>>>>>>>> Cc: Hugo Trippaers
> >>>>>>>>>>> Subject: RPM build is fixed, sort of...
> >>>>>>>>>>>
> >>>>>>>>>>> Hi Hugo,
> >>>>>>>>>>> I reverted three of your
> >>>>>>>>>>> patches(1f207506daa1874421b01ad8ea733e6bc8b8ce60/
> >>>>>>>>>>> 79004fc7bc5f24f8bf9c75f7a0b0fef01042db13/
> >>>>>>>>>>> a4f1971e80f2aaf86017ddc989513eefb04265fa),
I don't know how
> >>>> to
> >>>>> get
> >>>>>>>>>>> waf+maven work, but I know how to get ant
work right now.
> >>>>>>>>>>> Still need to use "maven install" to download
all the deps.
> >>>>> "waf
> >>>>>>>>>>> rpm" works right now, but may still have
other issues
> during
> >>>>>>>>>>> the
> >>>>>>> rpm
> >>>>>>>>>>> install. Seems jasper related jars are not
included in the
> >>>>>>>>>>> classpath.conf, so you may not login into
UI.


Mime
View raw message