Re: [openstack-dev] [murano] Berkshelf/Chef/Puppet installation on Murano images

2016-02-26 Thread JJ Asghar
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

On 2/26/16 6:35 AM, Olivier Lemasle wrote:
> Hi all,

Hi!

> Some months ago, I started to work on a Murano integration with
> Berkshelf [1] to manage Chef cookbooks dependencies when Murano deploys
> a Chef cookbook (cf spec [2]).

This is awesome! Thanks for this. It's crazy thought, we have the
openstack-chef[1] project, why didn't you spin it up there?


> However, I still haven't finalize the work with the integration tests
> (review on hold [4]) because it requires having Berkshelf installed on
> the image (and the latest murano-agent).
> 
> I still wonder what is the best way to install Berkshelf.

That's up for debate, you mention the chefdk lower in the email, it
maybe the way you want to go, but there are caveats.

> Of course, we can install Berkshelf in Murano agent DIB elements. But do
> we really want this additional software coming up in Murano images even
> if neither Berkshelf nor Chef is used?

Probably not, if you've bootstrapped the image to be what you want and
chef isn't used anymore then no. But the advantage of having chef there
is the ability to have it check in to the chef-server and update/change
the configuration over time. Unless you're just planning to rebuild the
image every time.

> An other solution is to install Berkshelf at runtime using cloud-init,
> like Henar Muñoz did for Chef and Puppet last month [7]. However, I'm a
> little bit confused by all these solutions. Is there a recommended
> solution? And which solution should I use to make my functional tests
> work [4]?

Cloud-init isn't great, but you can pull the chefdk down via it then
hand it off to chef to finish your bootstraping. Remember chef can be
called at any time while cloud-init is only called on creation...well
not 100% but that's the majority of use cases.

> Any thought?

I'm interested to see where this goes. Maybe we should sync up off list
and talk about this more, I'm here to help so don't hesitate to reach out.

[1]: https://wiki.openstack.org/wiki/Chef

- -- 
Best Regards,
JJ Asghar
c: 512.619.0722 t: @jjasghar irc: j^2
-BEGIN PGP SIGNATURE-
Version: GnuPG/MacGPG2 v2
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJW0HGdAAoJEDZbxzMH0+jTLFkP/iQfTjNdG6aXF+eKFE2iKPo0
rUIj5D0c/chzTX+lrV49KrvJoDkjjSVelDP/B3CMOGZvhmXtluOZ+o0igM5Vq2Tt
xJvxKkHVE/yNqTSbBJrsdCJ6Mtr+BZL4rZvvWoN4NOd9ocUCMWvPin15lZDmbPE3
CIYaEXiQ4eVHYaTJgtij6YGww8y7Uk2xFDXxqsw0akPTgRUe/Ui0eeZqcJQLraVN
T2vgAbGgjlp8rlphUms3jhTyitAvZ7T7TVMd84iBvgIfsMH/audLDyqas/8Sb14P
1i3GRywTXvz1SKEl+SBqSYfsI1tLeQZvL5zIxBe4Ds/eLw37lsyLrvoEIu00p4Qz
zQAcez1jBN8DMhenzHJQTdB9JKo7VP8hGCWem9UD3Q6IxjMUVHg6m8L2vHqpYSBz
Z9+597SAHo+UK+hXynHBAyQ4CVJ+mZ1GnWhIewlSke2DM0X/65Ye/k0figMk4Hf6
LfN38Lqqb49LHySSeMMNle5lF9FAUGeCI949SZL54kp+3yPLS6QpMUZ84hA9eI95
7webdSoO5TP/fpUWi6jwEOTjSIdtWZQnbFk+WOeP/RKd+IUCe4MEij4Y/RxAYZSd
zkpxhUHImmteMuy2kDK7O7+KWMgm4ddWgFzSQQOGVCCoF99i/MJndRS3K6eadtbY
SAI0iY56aSRHpa7dyzVv
=E1YO
-END PGP SIGNATURE-

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [murano] Berkshelf/Chef/Puppet installation on Murano images

2016-02-26 Thread Olivier Lemasle
Hi all,

Some months ago, I started to work on a Murano integration with
Berkshelf [1] to manage Chef cookbooks dependencies when Murano deploys
a Chef cookbook (cf spec [2]).

The main work is in murano-agent and was merged in last November [3].

However, I still haven't finalize the work with the integration tests
(review on hold [4]) because it requires having Berkshelf installed on
the image (and the latest murano-agent).

I still wonder what is the best way to install Berkshelf.

Currently, Chef and Puppet are installed along with Murano agent in the
DIB elements [5]
However, the murano-apps examples using Chef and Puppet contain
additional DIB elements to install Chef/Puppet [6]; I suppose they
aren't needed anymore.

Of course, we can install Berkshelf in Murano agent DIB elements. But do
we really want this additional software coming up in Murano images even
if neither Berkshelf nor Chef is used?

An other solution is to install Berkshelf at runtime using cloud-init,
like Henar Muñoz did for Chef and Puppet last month [7]. However, I'm a
little bit confused by all these solutions. Is there a recommended
solution? And which solution should I use to make my functional tests
work [4]?

One more thing: the recommended way to install Berkshelf is now to use
ChefDK (Chef Development Kit), which includes multiple tools [8].
An Ubuntu image with murano-agent installed with DIB elements (including
Chef & Puppet) is 438 MB. If I add ChefDK, the image is 794 MB...
It is possible to install Berkshelf only using Ruby gems [9] but it's
not the recommended way.

Any thought?

[1] http://berkshelf.com/
[2]
http://murano-specs.readthedocs.org/en/latest/specs/mitaka/support-chef-berkshelf.html
[3] https://review.openstack.org/#/c/240808/
[4] https://review.openstack.org/#/c/248027/
[5]
https://github.com/openstack/murano-agent/blob/master/contrib/elements/murano-agent/install.d/74-murano-agent#L5
[6]
https://github.com/openstack/murano-apps/tree/master/Chef/GitChef/elements
[7] https://review.openstack.org/#/c/230381/16
[8] https://downloads.chef.io/chef-dk/
[9] https://rubygems.org/gems/berkshelf

-- 
Olivier Lemasle
Software Engineer
*Apalia*™
Mobile: +33-611-69-12-11

*http://www.apalia.net 
olivier.lema...@apalia.net
*
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev