You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cloudstack.apache.org by jean-michel <je...@obarun.org> on 2020/09/12 11:50:41 UTC

Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Hi

It's a first time with Cloudstack and Java for me. Despite of the
various documentation I found about building Cloudstack from sources and
then packaging, I still don't know which profile I should use with mvn
for production purpose and if in this case a profile is necessary.

Thx for your help


Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Posted by David Jumani <Da...@shapeblue.com>.
Thanks Jean!
Primate is the UI while CloudMonkey is a cli tool. They both end up making API calls to the management server, although cloudmonkey exposes the entire list of APIs.

Thanks,
David
________________________________
From: jean-michel <je...@obarun.org>
Sent: Saturday, September 12, 2020 8:31 PM
To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
Subject: Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Thank you David for all of these useful information.


Building packages for Debian 10 has succeeded however with some
adjustments to be made.


So, my little contribution:

1) At least two patches are required for cloudstack 4.14.0.0

https://github.com/apache/cloudstack/pull/4226/commits/2454b3ae971c418e54f738659c89312f143ac378

https://github.com/apache/cloudstack/pull/4306/commits/4081a5c2dcc6d6e387fd65df35b238cb551bd7fe


2) The build of the package python3-mysql.connector for Debian 10

https://salsa.debian.org/python-team/modules/mysql-connector-python/


Now comes the time to test the packages and next the build of
cloudstack-primate, which look very nice.


One last question. Do I really need Cloudmonkey if I use
cloudstack-primate?


Thx

On 2020-09-12 14:43, David Jumani wrote:
> If you're building an os package and planning on installing it on a vm, there's no need to build it with mvn manually. The build process :
> # To install dependencies, can skip if already done
> git clone https://github.com/rhtyd/cloudstack-nonoss.git
> cd cloudstack-nonoss
> ./install-non-oss.sh
>
> <goto your cloudstack repo>
>
> Assuing you're using Ubuntu / debian then
> dpkg-buildpackage -uc -us -b
>
> For centos :
> package.sh --distribution centos7
>
> The profiles passed are to ensure the various modules are built so that Cloudstack functions properly
> The systemvm.iso contains all the necessary jars for the systemvms to work
>
> After this, you should have the cloudstack-*.deb/rpm packages ready to install
> The logging level, etc is configurable once you install CloudStack.
> ________________________________
> From: jean-michel <jm...@gmx.com>
> Sent: Saturday, September 12, 2020 6:07 PM
> To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
> Subject: Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?
>
> Hi David
>
>
> Thx for this quick reply.
>
>
> So, if I'm not mistaken there are two steps:
>
> 1) Cloudstack build with mvn
>
> and then
>
> 2) Os packaging with one of the script depending on the OS target.
>
>
> Now let's take the first step with mvn.
>
> 1) What bothers me, but maybe wrongly, it's the 'developer' option
> passed to mvn.
>
> First of all I don't plan to develop on my workstation, but secondly I
> want to be sure that the result of the build will not contain some debug
> flags or others things for development.
>
> 2) Do I really need, for production purpose the 'systemvm' option ? What
> is 'systemvm' and should I build 'systemvm.iso' for production purpose ?
>
> I found this documentation
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/How+to+build+CloudStack
> but it's not clear for me.
>
> I also tried the 'deps' option like in this documentation
> http://docs.cloudstack.apache.org/en/4.14.0.0/installguide/building_from_source.html#building-deb-packages
>
> but during the build I get a 'deps' profile doesn't exist, something
> like that.
>
>
> Thx
>
> On 2020-09-12 14:03, David Jumani wrote:
>> Hi Jean,
>>
>> When building from source, you can follow the guide here
>> http://docs.cloudstack.apache.org/en/latest/developersguide/developer_guide.html?highlight=nonoss#building-non-free-packages
>> It includes a step that installs dependencies.
>>
>> When building os packages, you can use the packaging/package.sh script for centos or dpkg-buildpackage for debian systems.
>> package.sh --distribution centos7
>>
>> It internally uses the developer and systemvm profile :
>> mvn -Psystemvm,developer -Dnoredist clean package
>>
>>
>> Hope this helps!
>>
>> Thanks,
>> David
>>
>> ________________________________
>> From: jean-michel <je...@obarun.org>
>> Sent: Saturday, September 12, 2020 5:20 PM
>> To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
>> Subject: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?
>>
>> Hi
>>
>> It's a first time with Cloudstack and Java for me. Despite of the
>> various documentation I found about building Cloudstack from sources and
>> then packaging, I still don't know which profile I should use with mvn
>> for production purpose and if in this case a profile is necessary.
>>
>> Thx for your help
>>
>>
>> David.Jumani@shapeblue.com
>> www.shapeblue.com<http://www.shapeblue.com>
>> 3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
>> @shapeblue
>>
>>
>>
> David.Jumani@shapeblue.com
> www.shapeblue.com<http://www.shapeblue.com>
> 3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
> @shapeblue
>
>
>

David.Jumani@shapeblue.com 
www.shapeblue.com
3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
@shapeblue
  
 


Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Posted by jean-michel <je...@obarun.org>.
Thank you David for all of these useful information.


Building packages for Debian 10 has succeeded however with some
adjustments to be made.


So, my little contribution:

1) At least two patches are required for cloudstack 4.14.0.0

https://github.com/apache/cloudstack/pull/4226/commits/2454b3ae971c418e54f738659c89312f143ac378

https://github.com/apache/cloudstack/pull/4306/commits/4081a5c2dcc6d6e387fd65df35b238cb551bd7fe


2) The build of the package python3-mysql.connector for Debian 10

https://salsa.debian.org/python-team/modules/mysql-connector-python/


Now comes the time to test the packages and next the build of
cloudstack-primate, which look very nice.


One last question. Do I really need Cloudmonkey if I use
cloudstack-primate?


Thx

On 2020-09-12 14:43, David Jumani wrote:
> If you're building an os package and planning on installing it on a vm, there's no need to build it with mvn manually. The build process :
> # To install dependencies, can skip if already done
> git clone https://github.com/rhtyd/cloudstack-nonoss.git
> cd cloudstack-nonoss
> ./install-non-oss.sh
>
> <goto your cloudstack repo>
>
> Assuing you're using Ubuntu / debian then
> dpkg-buildpackage -uc -us -b
>
> For centos :
> package.sh --distribution centos7
>
> The profiles passed are to ensure the various modules are built so that Cloudstack functions properly
> The systemvm.iso contains all the necessary jars for the systemvms to work
>
> After this, you should have the cloudstack-*.deb/rpm packages ready to install
> The logging level, etc is configurable once you install CloudStack.
> ________________________________
> From: jean-michel <jm...@gmx.com>
> Sent: Saturday, September 12, 2020 6:07 PM
> To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
> Subject: Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?
>
> Hi David
>
>
> Thx for this quick reply.
>
>
> So, if I'm not mistaken there are two steps:
>
> 1) Cloudstack build with mvn
>
> and then
>
> 2) Os packaging with one of the script depending on the OS target.
>
>
> Now let's take the first step with mvn.
>
> 1) What bothers me, but maybe wrongly, it's the 'developer' option
> passed to mvn.
>
> First of all I don't plan to develop on my workstation, but secondly I
> want to be sure that the result of the build will not contain some debug
> flags or others things for development.
>
> 2) Do I really need, for production purpose the 'systemvm' option ? What
> is 'systemvm' and should I build 'systemvm.iso' for production purpose ?
>
> I found this documentation
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/How+to+build+CloudStack
> but it's not clear for me.
>
> I also tried the 'deps' option like in this documentation
> http://docs.cloudstack.apache.org/en/4.14.0.0/installguide/building_from_source.html#building-deb-packages
>
> but during the build I get a 'deps' profile doesn't exist, something
> like that.
>
>
> Thx
>
> On 2020-09-12 14:03, David Jumani wrote:
>> Hi Jean,
>>
>> When building from source, you can follow the guide here
>> http://docs.cloudstack.apache.org/en/latest/developersguide/developer_guide.html?highlight=nonoss#building-non-free-packages
>> It includes a step that installs dependencies.
>>
>> When building os packages, you can use the packaging/package.sh script for centos or dpkg-buildpackage for debian systems.
>> package.sh --distribution centos7
>>
>> It internally uses the developer and systemvm profile :
>> mvn -Psystemvm,developer -Dnoredist clean package
>>
>>
>> Hope this helps!
>>
>> Thanks,
>> David
>>
>> ________________________________
>> From: jean-michel <je...@obarun.org>
>> Sent: Saturday, September 12, 2020 5:20 PM
>> To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
>> Subject: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?
>>
>> Hi
>>
>> It's a first time with Cloudstack and Java for me. Despite of the
>> various documentation I found about building Cloudstack from sources and
>> then packaging, I still don't know which profile I should use with mvn
>> for production purpose and if in this case a profile is necessary.
>>
>> Thx for your help
>>
>>
>> David.Jumani@shapeblue.com
>> www.shapeblue.com<http://www.shapeblue.com>
>> 3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
>> @shapeblue
>>
>>
>>
> David.Jumani@shapeblue.com 
> www.shapeblue.com
> 3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
> @shapeblue
>   
>  
>

Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Posted by David Jumani <Da...@shapeblue.com>.
If you're building an os package and planning on installing it on a vm, there's no need to build it with mvn manually. The build process :
# To install dependencies, can skip if already done
git clone https://github.com/rhtyd/cloudstack-nonoss.git
cd cloudstack-nonoss
./install-non-oss.sh

<goto your cloudstack repo>

Assuing you're using Ubuntu / debian then
dpkg-buildpackage -uc -us -b

For centos :
package.sh --distribution centos7

The profiles passed are to ensure the various modules are built so that Cloudstack functions properly
The systemvm.iso contains all the necessary jars for the systemvms to work

After this, you should have the cloudstack-*.deb/rpm packages ready to install
The logging level, etc is configurable once you install CloudStack.
________________________________
From: jean-michel <jm...@gmx.com>
Sent: Saturday, September 12, 2020 6:07 PM
To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
Subject: Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Hi David


Thx for this quick reply.


So, if I'm not mistaken there are two steps:

1) Cloudstack build with mvn

and then

2) Os packaging with one of the script depending on the OS target.


Now let's take the first step with mvn.

1) What bothers me, but maybe wrongly, it's the 'developer' option
passed to mvn.

First of all I don't plan to develop on my workstation, but secondly I
want to be sure that the result of the build will not contain some debug
flags or others things for development.

2) Do I really need, for production purpose the 'systemvm' option ? What
is 'systemvm' and should I build 'systemvm.iso' for production purpose ?

I found this documentation
https://cwiki.apache.org/confluence/display/CLOUDSTACK/How+to+build+CloudStack
but it's not clear for me.

I also tried the 'deps' option like in this documentation
http://docs.cloudstack.apache.org/en/4.14.0.0/installguide/building_from_source.html#building-deb-packages

but during the build I get a 'deps' profile doesn't exist, something
like that.


Thx

On 2020-09-12 14:03, David Jumani wrote:
> Hi Jean,
>
> When building from source, you can follow the guide here
> http://docs.cloudstack.apache.org/en/latest/developersguide/developer_guide.html?highlight=nonoss#building-non-free-packages
> It includes a step that installs dependencies.
>
> When building os packages, you can use the packaging/package.sh script for centos or dpkg-buildpackage for debian systems.
> package.sh --distribution centos7
>
> It internally uses the developer and systemvm profile :
> mvn -Psystemvm,developer -Dnoredist clean package
>
>
> Hope this helps!
>
> Thanks,
> David
>
> ________________________________
> From: jean-michel <je...@obarun.org>
> Sent: Saturday, September 12, 2020 5:20 PM
> To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
> Subject: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?
>
> Hi
>
> It's a first time with Cloudstack and Java for me. Despite of the
> various documentation I found about building Cloudstack from sources and
> then packaging, I still don't know which profile I should use with mvn
> for production purpose and if in this case a profile is necessary.
>
> Thx for your help
>
>
> David.Jumani@shapeblue.com
> www.shapeblue.com<http://www.shapeblue.com>
> 3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
> @shapeblue
>
>
>

David.Jumani@shapeblue.com 
www.shapeblue.com
3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
@shapeblue
  
 


Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Posted by jean-michel <jm...@gmx.com>.
Hi David


Thx for this quick reply.


So, if I'm not mistaken there are two steps:

1) Cloudstack build with mvn

and then

2) Os packaging with one of the script depending on the OS target.


Now let's take the first step with mvn.

1) What bothers me, but maybe wrongly, it's the 'developer' option
passed to mvn.

First of all I don't plan to develop on my workstation, but secondly I
want to be sure that the result of the build will not contain some debug
flags or others things for development.

2) Do I really need, for production purpose the 'systemvm' option ? What
is 'systemvm' and should I build 'systemvm.iso' for production purpose ?

I found this documentation
https://cwiki.apache.org/confluence/display/CLOUDSTACK/How+to+build+CloudStack
but it's not clear for me.

I also tried the 'deps' option like in this documentation
http://docs.cloudstack.apache.org/en/4.14.0.0/installguide/building_from_source.html#building-deb-packages

but during the build I get a 'deps' profile doesn't exist, something
like that.


Thx

On 2020-09-12 14:03, David Jumani wrote:
> Hi Jean,
>
> When building from source, you can follow the guide here
> http://docs.cloudstack.apache.org/en/latest/developersguide/developer_guide.html?highlight=nonoss#building-non-free-packages
> It includes a step that installs dependencies.
>
> When building os packages, you can use the packaging/package.sh script for centos or dpkg-buildpackage for debian systems.
> package.sh --distribution centos7
>
> It internally uses the developer and systemvm profile :
> mvn -Psystemvm,developer -Dnoredist clean package
>
>
> Hope this helps!
>
> Thanks,
> David
>
> ________________________________
> From: jean-michel <je...@obarun.org>
> Sent: Saturday, September 12, 2020 5:20 PM
> To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
> Subject: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?
>
> Hi
>
> It's a first time with Cloudstack and Java for me. Despite of the
> various documentation I found about building Cloudstack from sources and
> then packaging, I still don't know which profile I should use with mvn
> for production purpose and if in this case a profile is necessary.
>
> Thx for your help
>
>
> David.Jumani@shapeblue.com 
> www.shapeblue.com
> 3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
> @shapeblue
>
>
>

Re: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Posted by David Jumani <Da...@shapeblue.com>.
Hi Jean,

When building from source, you can follow the guide here
http://docs.cloudstack.apache.org/en/latest/developersguide/developer_guide.html?highlight=nonoss#building-non-free-packages
It includes a step that installs dependencies.

When building os packages, you can use the packaging/package.sh script for centos or dpkg-buildpackage for debian systems.
package.sh --distribution centos7

It internally uses the developer and systemvm profile :
mvn -Psystemvm,developer -Dnoredist clean package


Hope this helps!

Thanks,
David

________________________________
From: jean-michel <je...@obarun.org>
Sent: Saturday, September 12, 2020 5:20 PM
To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
Subject: Building Cloudstack from source for production purpose and then packaging, which mvn profile to use ?

Hi

It's a first time with Cloudstack and Java for me. Despite of the
various documentation I found about building Cloudstack from sources and
then packaging, I still don't know which profile I should use with mvn
for production purpose and if in this case a profile is necessary.

Thx for your help


David.Jumani@shapeblue.com 
www.shapeblue.com
3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
@shapeblue