staypuft 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b4c1705398e46ec5568abc0ab8335dff279719c9
4
- data.tar.gz: 3f47eaa170912b118662a4408cc64dc8c284812b
3
+ metadata.gz: 45b52d5a9c0aa95ff9d31fbef3c20b491d000a1b
4
+ data.tar.gz: b901b85c5ab666ed79303e20ef127f76cf928607
5
5
  SHA512:
6
- metadata.gz: 0aec5dc5dd3bebcf6b3b71baf37c76698afd99b67b3c3f951532ff98149c54b4858c19a4da61b6de1cf37bc69a004583ba2afba782e78727cd606fdbc24b5253
7
- data.tar.gz: faab17c4c5d7271394c7140f2d92538e4c83c2b073e7cf1827c71072ad92822f0ce81262ee642d14b8ac7ca83ac67359dc74679a8a0a602e53c7cf3d582110ec
6
+ metadata.gz: f63308f66381fc965dfe19a7718925494295d4e7f7a76ee1fbb4123f1cd12d1a993ce4854151cfa9c5004525e9c59ce8aae9eaaa3a4e4bb78680c6eba758f5ee
7
+ data.tar.gz: 6eb41ec18540190e04906eb24c94c684b0273f53174b26244ee9ca40361cb2e36761eee3946a168d2ece55bb69d2eb97dc3023429739bb8944bbe8161e298d2f
@@ -172,8 +172,8 @@ module Staypuft
172
172
  network_num_networks = { :string => '<%= @host.deployment.nova.num_networks %>' }
173
173
  network_fixed_range = { :string => '<%= @host.deployment.nova.private_fixed_range %>' }
174
174
  network_floating_range = { :string => '<%= @host.deployment.nova.public_floating_range %>' }
175
- network_private_iface = { :string => '<%= @host.deployment.nova.compute_tenant_interface %>' }
176
- network_public_iface = { :string => '<%= @host.deployment.nova.external_interface_name %>' }
175
+ network_private_iface = { :string => '<%= @host.deployment.nova.private_iface %>' }
176
+ network_public_iface = { :string => '<%= @host.deployment.nova.public_iface %>' }
177
177
  network_create_networks = true
178
178
 
179
179
  # Neutron
@@ -185,10 +185,10 @@ module Staypuft
185
185
  ml2_tunnel_id_ranges = ['10:1000']
186
186
  ml2_vni_ranges = ['10:1000']
187
187
  ovs_tunnel_types = ['vxlan', 'gre']
188
- ovs_tunnel_iface = { :string => '<%= n = @host.deployment.neutron; n.enable_tunneling? ? n.networker_tenant_interface : "" %>' }
188
+ ovs_tunnel_iface = { :string => '<%= n = @host.deployment.neutron; n.enable_tunneling? ? n.networker_tenant_iface : "" %>' }
189
189
  ovs_bridge_mappings = { :array => '<%= @host.deployment.neutron.networker_ovs_bridge_mappings %>' }
190
190
  ovs_bridge_uplinks = { :array => '<%= @host.deployment.neutron.networker_ovs_bridge_uplinks %>' }
191
- compute_ovs_tunnel_iface = { :string => '<%= n = @host.deployment.neutron; n.enable_tunneling? ? n.compute_tenant_interface : "" %>' }
191
+ compute_ovs_tunnel_iface = { :string => '<%= n = @host.deployment.neutron; n.enable_tunneling? ? n.compute_tenant_iface : "" %>' }
192
192
  compute_ovs_bridge_mappings = { :array => '<%= @host.deployment.neutron.compute_ovs_bridge_mappings %>' }
193
193
  compute_ovs_bridge_uplinks = { :array => '<%= @host.deployment.neutron.compute_ovs_bridge_uplinks %>' }
194
194
  enable_tunneling = { :string => '<%= @host.deployment.neutron.enable_tunneling?.to_s %>' }
@@ -239,6 +239,8 @@ module Staypuft
239
239
  cinder_eqlx_chap_login = ['']
240
240
  cinder_eqlx_chap_password = ['']
241
241
 
242
+ # Keystone
243
+ keystonerc = 'true'
242
244
 
243
245
  # effective_value grabs shared password if deployment is in shared password mode,
244
246
  # otherwise use the service-specific one
@@ -315,6 +317,7 @@ module Staypuft
315
317
  'glance_backend' => backend,
316
318
  'glance_rbd_store_user' => glance_rbd_store_user,
317
319
  'glance_rbd_store_pool' => glance_rbd_store_pool,
320
+ 'keystonerc' => keystonerc,
318
321
  'admin_password' => admin_pw,
319
322
  'ceilometer_user_password' => ceilometer_user_pw,
320
323
  'cinder_db_password' => cinder_db_pw,
@@ -384,6 +387,7 @@ module Staypuft
384
387
  'glance_backend' => backend,
385
388
  'glance_rbd_store_user' => glance_rbd_store_user,
386
389
  'glance_rbd_store_pool' => glance_rbd_store_pool,
390
+ 'keystonerc' => keystonerc,
387
391
  'admin_password' => admin_pw,
388
392
  'ceilometer_user_password' => ceilometer_user_pw,
389
393
  'cinder_db_password' => cinder_db_pw,
@@ -518,6 +522,7 @@ module Staypuft
518
522
  'eqlx_chap_login' => cinder_eqlx_chap_login,
519
523
  'eqlx_chap_password' => cinder_eqlx_chap_password },
520
524
  'quickstack::pacemaker::keystone' => {
525
+ 'keystonerc' => keystonerc,
521
526
  'admin_password' => admin_pw,
522
527
  'admin_token' => keystone_admin_token },
523
528
  'quickstack::pacemaker::horizon' => {
@@ -1,3 +1,5 @@
1
+ require 'resolv'
2
+
1
3
  module Staypuft
2
4
  class Deployment::IPS < Deployment::AbstractParamScope
3
5
 
@@ -10,7 +12,9 @@ module Staypuft
10
12
  end
11
13
 
12
14
  def controller_ips
13
- controllers.map &:ip
15
+ controllers.map do |controller|
16
+ ip_for_controller(controller)
17
+ end
14
18
  end
15
19
 
16
20
  def controller_fqdns
@@ -18,8 +22,15 @@ module Staypuft
18
22
  end
19
23
 
20
24
  def controller_ip
21
- controllers.tap { |v| v.size == 1 or raise }.first.ip
25
+ ip_for_controller(controllers.tap { |v| v.size == 1 or raise }.first)
22
26
  end
23
27
 
28
+ # TODO: a better fix is needed once we have explicit subnet support in staypuft
29
+ # This is needed because host.ip doesn't always return the expected ip address
30
+ # when the host has more than one network interface -- this ensures that the
31
+ # provisioning network interface is the chosen one.
32
+ def ip_for_controller(controller)
33
+ Resolv::DNS.new(:nameserver => 'localhost').getaddress(controller.fqdn).to_s
34
+ end
24
35
  end
25
36
  end
@@ -77,8 +77,8 @@ module Staypuft
77
77
 
78
78
  class Jail < Safemode::Jail
79
79
  allow :networker_vlan_ranges, :compute_vlan_ranges, :network_segmentation, :enable_tunneling?,
80
- :networker_tenant_interface, :networker_ovs_bridge_mappings, :networker_ovs_bridge_uplinks,
81
- :compute_tenant_interface, :compute_ovs_bridge_mappings, :compute_ovs_bridge_uplinks
80
+ :networker_tenant_iface, :networker_ovs_bridge_mappings, :networker_ovs_bridge_uplinks,
81
+ :compute_tenant_iface, :compute_ovs_bridge_mappings, :compute_ovs_bridge_uplinks
82
82
  end
83
83
 
84
84
  def set_defaults
@@ -102,19 +102,19 @@ module Staypuft
102
102
  end
103
103
 
104
104
  def networker_ovs_bridge_mappings
105
- [("physnet-tenants:br-#{self.networker_tenant_interface}" unless self.enable_tunneling?),
105
+ [("physnet-tenants:br-#{self.networker_tenant_iface}" unless self.enable_tunneling?),
106
106
  ('physnet-external:br-ex' if self.use_external_interface?)].compact
107
107
  end
108
108
 
109
109
  def networker_ovs_bridge_uplinks
110
- [("br-#{self.networker_tenant_interface}:#{self.networker_tenant_interface}" unless self.enable_tunneling?),
111
- ("br-ex:#{self.external_interface_name}" if self.use_external_interface?)
110
+ [("br-#{self.networker_tenant_iface}:#{self.networker_tenant_iface}" unless self.enable_tunneling?),
111
+ ("br-ex:#{self.external_interface_name.downcase}" if self.use_external_interface?)
112
112
  ].compact
113
113
  end
114
114
 
115
115
  def compute_ovs_bridge_mappings
116
116
  if !self.enable_tunneling?
117
- ["physnet-tenants:br-#{self.compute_tenant_interface}"]
117
+ ["physnet-tenants:br-#{self.compute_tenant_iface}"]
118
118
  else
119
119
  []
120
120
  end
@@ -122,7 +122,7 @@ module Staypuft
122
122
 
123
123
  def compute_ovs_bridge_uplinks
124
124
  if !self.enable_tunneling?
125
- ["br-#{self.compute_tenant_interface}:#{self.compute_tenant_interface}"]
125
+ ["br-#{self.compute_tenant_iface}:#{self.compute_tenant_iface}"]
126
126
  else
127
127
  []
128
128
  end
@@ -149,6 +149,14 @@ module Staypuft
149
149
  [NetworkSegmentation::VXLAN, NetworkSegmentation::GRE].include?(network_segmentation)
150
150
  end
151
151
 
152
+ def networker_tenant_iface
153
+ networker_tenant_interface.downcase unless networker_tenant_interface.nil?
154
+ end
155
+
156
+ def compute_tenant_iface
157
+ compute_tenant_interface.downcase unless compute_tenant_interface.nil?
158
+ end
159
+
152
160
  def param_hash
153
161
  { 'network_segmentation' => network_segmentation,
154
162
  'tenant_vlan_ranges' => tenant_vlan_ranges,
@@ -87,7 +87,6 @@ module Staypuft
87
87
  end
88
88
 
89
89
  validates :public_floating_range, presence: true
90
- # TODO: interface format validation
91
90
 
92
91
  module ComputeTenantInterface
93
92
  HUMAN = N_('Which interface to use for tenant networks')
@@ -99,12 +98,11 @@ module Staypuft
99
98
  # TODO: interface name format validation
100
99
 
101
100
  module PrivateFixedRange
102
- HUMAN = N_('Private IP range for tenant networks')
101
+ HUMAN = N_('Fixed IP range for tenant networks')
103
102
  HUMAN_AFTER = PublicFloatingRange::HUMAN_AFTER
104
103
  end
105
104
 
106
105
  validates :private_fixed_range, presence: true
107
- # TODO: interface format validation
108
106
 
109
107
  def set_defaults
110
108
  self.network_manager = NetworkManager::FLAT_DHCP
@@ -140,6 +138,14 @@ module Staypuft
140
138
  end
141
139
  end
142
140
 
141
+ def private_iface
142
+ compute_tenant_interface.downcase unless compute_tenant_interface.nil?
143
+ end
144
+
145
+ def public_iface
146
+ external_interface_name.downcase unless external_interface_name.nil?
147
+ end
148
+
143
149
  def param_hash
144
150
  { 'network_manager' => network_manager,
145
151
  'vlan_range' => vlan_range,
@@ -151,7 +157,7 @@ module Staypuft
151
157
 
152
158
  class Jail < Safemode::Jail
153
159
  allow :network_manager, :network_overrides, :private_fixed_range, :public_floating_range,
154
- :compute_tenant_interface, :external_interface_name, :num_networks
160
+ :private_iface, :public_iface, :num_networks
155
161
  end
156
162
 
157
163
  end
@@ -1,3 +1,3 @@
1
1
  module Staypuft
2
- VERSION = '0.2.0'
2
+ VERSION = '0.2.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: staypuft
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Staypuft team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-05 00:00:00.000000000 Z
11
+ date: 2014-08-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: foreman-tasks