Add initial meta-stx to support StarlingX build
[pti/rtp.git] / meta-stx / recipes-support / puppet / files / puppet-openstacklib / 0001-Roll-up-TIS-patches.patch
1 From be4aad7589bc63f90b98b7d5692701a8368f8b04 Mon Sep 17 00:00:00 2001
2 From: Al Bailey <Al.Bailey@windriver.com>
3 Date: Mon, 11 Mar 2019 07:55:54 -0500
4 Subject: [PATCH 1/3] Roll up TIS patches
5
6 ---
7  lib/puppet/provider/openstack.rb             |  1 +
8  lib/puppet/provider/openstack/auth.rb        | 16 ++++++++++++++--
9  lib/puppet/provider/openstack/credentials.rb |  2 --
10  3 files changed, 15 insertions(+), 4 deletions(-)
11
12 diff --git a/lib/puppet/provider/openstack.rb b/lib/puppet/provider/openstack.rb
13 index 0240ce4..8b8e564 100644
14 --- a/lib/puppet/provider/openstack.rb
15 +++ b/lib/puppet/provider/openstack.rb
16 @@ -45,6 +45,7 @@ class Puppet::Provider::Openstack < Puppet::Provider
17      begin
18        action = args[1]
19        Timeout.timeout(command_timeout(action)) do
20 +        args.unshift('--os-interface', 'internal')
21          openstack_command *args
22        end
23      rescue Timeout::Error
24 diff --git a/lib/puppet/provider/openstack/auth.rb b/lib/puppet/provider/openstack/auth.rb
25 index 743071d..4026aec 100644
26 --- a/lib/puppet/provider/openstack/auth.rb
27 +++ b/lib/puppet/provider/openstack/auth.rb
28 @@ -1,9 +1,19 @@
29  #require 'puppet/provider/openstack/credentials'
30  require File.join(File.dirname(__FILE__), '..','..','..', 'puppet/provider/openstack/credentials')
31 +require 'hiera_puppet'
32  
33  module Puppet::Provider::Openstack::Auth
34  
35 -  RCFILENAME = "#{ENV['HOME']}/openrc"
36 +  RCFILENAME = "/etc/platform/openrc"
37 +
38 +  def lookup_hiera(key)
39 +    HieraPuppet.lookup(key, :undef, self, nil, :priority)
40 +  end
41 +
42 +  def get_admin_password
43 +   value=lookup_hiera('keystone::admin_password')
44 +   return value
45 +  end
46  
47    def get_os_vars_from_env
48      env = {}
49 @@ -17,7 +27,7 @@ module Puppet::Provider::Openstack::Auth
50      unless rcfile.nil?
51        File.open(rcfile).readlines.delete_if{|l| l=~ /^#|^$/ }.each do |line|
52          # we only care about the OS_ vars from the file LP#1699950
53 -        if line =~ /OS_/
54 +        if line =~ /OS_/ and line.include?('=')
55            key, value = line.split('=')
56            key = key.split(' ').last
57            value = value.chomp.gsub(/'/, '')
58 @@ -38,6 +48,8 @@ module Puppet::Provider::Openstack::Auth
59      unless @credentials.set?
60        @credentials.unset
61        set_credentials(@credentials, get_os_vars_from_rcfile(rc_filename))
62 +      # retrieves the password from hiera data since keyring is not yet available
63 +      @credentials.password = get_admin_password
64      end
65      unless @credentials.set?
66        raise(Puppet::Error::OpenstackAuthInputError, 'Insufficient credentials to authenticate')
67 diff --git a/lib/puppet/provider/openstack/credentials.rb b/lib/puppet/provider/openstack/credentials.rb
68 index 2765b2b..9c831e3 100644
69 --- a/lib/puppet/provider/openstack/credentials.rb
70 +++ b/lib/puppet/provider/openstack/credentials.rb
71 @@ -70,11 +70,9 @@ class Puppet::Provider::Openstack::CredentialsV3 < Puppet::Provider::Openstack::
72      :domain_id,
73      :domain_name,
74      :key,
75 -    :project_domain_id,
76      :project_domain_name,
77      :project_id,
78      :trust_id,
79 -    :user_domain_id,
80      :user_domain_name,
81      :user_id
82    ]
83 -- 
84 1.8.3.1
85