[openstack-dev] [puppet] - No way to pass extra variables from a heat template to a puppet manifest

Roquesalane, Jean-Pierre Jeanpierre.Roquesalane at dell.com
Tue Sep 19 12:32:15 UTC 2017


Dear fellow stackers,

I'm currently trying to run a manifest from within a heat template. This manifest test the hostname and  depending on the value will do different things. I need  to pass some extra variables that are set in an environment  file to the manifest, and It failed so far. I'm driving nuts at this moment and even though all of the things I found on google, there is no way to get it work.
RHOSP 10 is driving my overcloud.

Any help would be much appreciated.

Below are the files I'm using.


*        Heat Template

heat_template_version: 2016-10-14

description: >
  NFV Feature Hugepages configured by Puppet for computeNfv role.

parameters:
  servers:
    type: json
  HugePageSize:
    type: string
  HugePageCount:
    type: string

resources:

  NovaComputeExtraConfig:
    type: OS::Heat::SoftwareConfig
    properties:
      group: puppet
      inputs:
      - name: HugePageSize
      - name: HugePageCount
      config:
        get_file: ../manifests/hugepages.pp
      options:
        enable_hiera: True
        enable_facter: False


  ExtraPuppetDeployment:
    type: OS::Heat::SoftwareDeployments
    properties:
      servers: {get_param: servers}
      config: {get_resource: NovaComputeExtraConfig}
      input_values:
        HugePageSize: {get_param: HugePageSize}
        HugePageCount: {get_param: HugePageCount}
      actions: ['CREATE','UPDATE']


*        Puppet manifest
if $hostname =~ /compute-nfv/ {
  file { '/tmp/test_puppet':
    ensure => 'file',
    content  => "This is an NFV node!!! Setting ${HugePageCount} pages of ${HugePageSize} each",
    owner => 'root',
    group => 'root',
    mode => 0777,
  }
} else {
  file { '/tmp/test_puppet':
    ensure => 'file',
    content  => 'This is not an NFV node... Nothing to set',
    owner => 'root',
    group => 'root',
    mode => 0777,
  }
}


*        Environment  file
resource_registry:
  OS::TripleO::NodeExtraConfigPost: puppet/services/hugepages.yaml
parameter_defaults:
  OvercloudComputeNfvFlavor: baremetal
  ComputeNfvCount: 3
  HugePageSize: 2048
  HugePageCount: 4

Thanks.
JP

Jean-Pierre Roquesalane
SW System Sr Principal Engineer
Dell | Service Provider Solutions
mobile +33 6 21 86 79 04<tel:1-613-314-8106>
jeanpierre.roquesalane at dell.com<mailto:jeanpierre.roquesalane at dell.com>
[cid:image002.jpg at 01D33153.A5CB7F60]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20170919/0fe1d72e/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 3940 bytes
Desc: image001.jpg
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20170919/0fe1d72e/attachment.jpg>


More information about the OpenStack-dev mailing list