staypuft 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
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