[meta-virtualization] [PATCH] Added Yocto recipe for Puppet 4.10.9

Pablo Saavedra psaavedra at igalia.com
Tue Feb 6 01:31:33 PST 2018


The current version of the puppet recipe in meta-cloud-services points
to puppet 3.7.3. This one recipe assumes Ruby ​​2.2. Since Pyro, Ruby
​​2.4 is being used because Poky includes recipe a 2.4.2 Ruby version in
its Pyro branch: poky/meta/recipes-devtools/ruby​​/ruby_2.4.2.bb

The recipe for Puppet 3.7.3 in meta-cloud-services doesn't generate a
functional agent with Ruby 2.4 and Pyro. In addition, Ruby 2.0 was EOL'd
February 24th 2016 which means security patch support will end ~Feb 2017.


This recipe is based in the puppet_3.7.3.bb recipe of
meta-cloud-services. It is basically a upstream upgrade of the recipe.
During this I also made the cleanup of the already upstreamed patches.
Only remaining this one:

commit d8d0967a98b256f72e0cc2449d68b4afe23583b2
Author: YangHaibo <b40869 at freescale.com>
Date:   Wed Dec 3 17:07:56 2014 +0800

    puppet: add recipe for puppet 3.7.3
   
    A simple demo is added
   
    Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>


The differences and changes respect Puppet 3 and Puppet 4 are highly
documented in the version 4 release notes [1]. By the way, this patch
submission was delayed due to unforeseen reasons. Re-thinking about
this, probably could be a better approaching prepare a recipe for
4.10.10 which also includes some additional fixes [2] for a Ruby 2.4
environment. In other hand, a more formal approaching maybe could be to
include a Puppet 5 recipe since it is the official Puppet agent version
with support for Ruby 2.4 [3]. Are you more suitable with this maybe?


**Know issues of this patch**:

As I said previously, there is a ambiguous thing using Ruby 2.4 and
Puppet 4.
The release notes for Puppet 4 clearly says:

    Ruby: We currently only test and package with 2.1.x
    versions of Ruby, therefore you should only use this
    version. Other interpreters and versions of Ruby are
    not covered by our tests.

; even when the latest bug-fixes are also fixing errors for Ruby 2.4
environments.


Regards.

[1]: https://docs.puppet.com/puppet/4.0/release_notes.html
[2]: https://puppet.com/docs/puppet/4.10/release_notes.html#puppet-4
[3]: https://tickets.puppetlabs.com/browse/PA-1107

On 06/02/18 02:34, Bruce Ashfield wrote:
> Hi Pablo,
>
> Thanks for the submission .. but I do have a few questions.
>
> How does this compare to the other recipes for puppet ? In particular
> the one in meta-cloud-services, since I'm familiar with it.
>
> How has this been tested ? We used to use puppet and chef in
> meta-cloud-services, so I'd like to log how this has been used as part
> of the commit.
>
> Summary: I'm happy to merge this, I just want to document how it
> should be used (so I can know if it breaks) and make sure that it is
> in the right place (so I can delete any other recipes).
>
> Cheers,
>
> Bruce
>
> On Mon, Feb 5, 2018 at 12:13 PM, Pablo Saavedra <psaavedra at igalia.com> wrote:
>> Signed-off-by: Pablo Saavedra <psaavedra at igalia.com>
>> ---
>>  recipes-support/puppet/puppet_4.10.9.bb | 41 +++++++++++++++++++++++++++++++++
>>  1 file changed, 41 insertions(+)
>>  create mode 100644 recipes-support/puppet/puppet_4.10.9.bb
>>
>> diff --git a/recipes-support/puppet/puppet_4.10.9.bb b/recipes-support/puppet/puppet_4.10.9.bb
>> new file mode 100644
>> index 0000000..a335546
>> --- /dev/null
>> +++ b/recipes-support/puppet/puppet_4.10.9.bb
>> @@ -0,0 +1,41 @@
>> +SUMMARY = "Open source Puppet is a configuration management system"
>> +HOMEPAGE = "https://puppetlabs.com/puppet/puppet-open-source"
>> +LICENSE = "Apache-2.0"
>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=7c9045ec00cc0d6b6e0e09ee811da4a0"
>> +
>> +SRC_URI = " \
>> +    https://downloads.puppetlabs.com/puppet/puppet-${PV}.tar.gz \
>> +    file://add_puppet_gemspec.patch \
>> +    file://puppet.conf \
>> +"
>> +SRC_URI[md5sum] = "8af3c2fec5dc4683d80aab4efc1614c6"
>> +SRC_URI[sha256sum] = "e667bd825e54bbc38c30534c25adc441ed638fc484fe0abe278f0335770cd161"
>> +
>> +inherit ruby
>> +
>> +DEPENDS += " \
>> +        ruby \
>> +        facter \
>> +        hiera \
>> +"
>> +
>> +RDEPENDS_${PN} += " \
>> +        ruby \
>> +        facter \
>> +        hiera \
>> +        ruby-shadow \
>> +        bash \
>> +"
>> +
>> +RUBY_INSTALL_GEMS = "puppet-${PV}.gem"
>> +
>> +do_install_append() {
>> +    install -d ${D}${sysconfdir}/puppet
>> +    install -d ${D}${sysconfdir}/puppet/manifests
>> +    install -d ${D}${sysconfdir}/puppet/modules
>> +
>> +    install -m 655 ${S}/conf/auth.conf ${D}${sysconfdir}/puppet/
>> +    install -m 655 ${S}/conf/fileserver.conf ${D}${sysconfdir}/puppet/
>> +    install -m 655 ${S}/conf/environment.conf ${D}${sysconfdir}/puppet/
>> +    install -m 655 ${WORKDIR}/puppet.conf ${D}${sysconfdir}/puppet/
>> +}
>> --
>> 2.11.0
>>
>> --
>> _______________________________________________
>> meta-virtualization mailing list
>> meta-virtualization at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/meta-virtualization
>
>

-- 
Pablo Saavedra Rodiño
psaavedra at igalia.com | Mail
www.igalia.com       | Web



More information about the meta-virtualization mailing list