egon 0.3.6 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MDEyMDliOWIzOTVhZDM3MDdlNzJmZDczNTdjZDhlYWNjNTlmN2EwNQ==
4
+ ODI2YTNiNDM5NGU1NTBlZTc3NGM5M2ViNjI2YWEyNzg4ZDRhZDg2ZA==
5
5
  data.tar.gz: !binary |-
6
- YWUyMmNlNmE0MzEzN2E5MjFhYTg3NDZkNDg1MDI5MDkyNzUzNTg4Zg==
6
+ MTJlMDY5OTA1YTk3MzgwNWJkNTk4ZWMxZmIwMGFjNjJhOTkyYTRjMg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ZWU0NjU5MWQwMTA0NmYyYjZkYmEzMTI2YTllMDg2ZWIxYTA5ZGI3ZGY4NzM4
10
- NTU4MjQ0MWRhODU5NzI4YjQ2YWFlOTI4MzkzZjlmZTgwNjZlYTcxZGZlYjJj
11
- ZTYyMWViMDNmNTUzMDZmZDliNDJmYWUyNzkzMzYzZGY3NDgxOGI=
9
+ MGJlYjMyNzhlYTc2ZWE1Nzc3ZjFhMWZjM2U1YTA3MmMyZmE2NzEzOTA3YTVk
10
+ MzAyMDNkOGM0ZGFiMmU4OWY5ZDg4YjIwYTQzYjM1ZjMyZmIyYjg4NWY0Y2Rh
11
+ Y2RlZjA5MzA5ZmZhZjQ1MGQ4ZjgwNTRlYzc3MmNlYmFlYWM2ODM=
12
12
  data.tar.gz: !binary |-
13
- NTAxY2YyNDg1ZGE5MTJmNmI2NzhlZmI4ZWRhZWI4YzU1MTY1NGMxNjI0NzNl
14
- Mzk2OWIyYzExYzYwNWNlMjI1MzQxMzNlOTQxYzc0YzAyZDJhYTZhZjQzYTg3
15
- NGU3ODM0Mjg4YTA5ZTJhMjA0ZjZjMDRkNzkxMWQwZWRlZmI2NmI=
13
+ MTVkOWFjOWM5MjZiYTJiNDhhMWNkMGFmYzNkMTZlYTk3YWJiNmRmMzQzZGVh
14
+ OTdmZDI0MjU2MWY1MmFkMzk2MzI3Mzg5N2I4OTBjODBkZDVjNDExY2NiMDUx
15
+ YjljNTI0NmYyZjU0MjQ0YTk1YTJjNTE2OTAxMmM2Y2VkYzc4MGI=
@@ -25,7 +25,202 @@ module Egon
25
25
  def self.OSP7_instack_virt
26
26
  return OSP7_COMMON
27
27
  end
28
-
28
+
29
+ POST_INSTALL = "
30
+ source stackrc
31
+ source tripleo-undercloud-passwords
32
+
33
+ tripleo setup-overcloud-passwords -o tripleo-overcloud-passwords
34
+ source tripleo-overcloud-passwords
35
+ NeutronFlatNetworks=${NeutronFlatNetworks:-'datacentre'}
36
+ NeutronPhysicalBridge=${NeutronPhysicalBridge:-'br-ex'}
37
+ NeutronBridgeMappings=${NeutronBridgeMappings:-'datacentre:br-ex'}
38
+ # Define the interface that will be bridged onto the Neutron defined
39
+ # network.
40
+ NeutronPublicInterface=${NeutronPublicInterface:-nic1}
41
+ HypervisorNeutronPublicInterface=${HypervisorNeutronPublicInterface:-$NeutronPublicInterface}
42
+ NEUTRON_NETWORK_TYPE=${NEUTRON_NETWORK_TYPE:-gre}
43
+ NEUTRON_TUNNEL_TYPES=${NEUTRON_TUNNEL_TYPES:-gre}
44
+ # Define the overcloud libvirt type for virtualization. kvm for
45
+ # baremetal, qemu for an overcloud running in vm's.
46
+ OVERCLOUD_LIBVIRT_TYPE=${OVERCLOUD_LIBVIRT_TYPE:-qemu}
47
+ NtpServer=${NtpServer:-""}
48
+ CONTROLSCALE=${CONTROLSCALE:-1}
49
+ COMPUTESCALE=${COMPUTESCALE:-1}
50
+ CEPHSTORAGESCALE=${CEPHSTORAGESCALE:-0}
51
+ BLOCKSTORAGESCALE=${BLOCKSTORAGESCALE:-0}
52
+ SWIFTSTORAGESCALE=${SWIFTSTORAGESCALE:-0}
53
+
54
+ # Default all image parameters to use overcloud-full
55
+ OVERCLOUD_CONTROLLER_IMAGE=${OVERCLOUD_CONTROLLER_IMAGE:-overcloud-full}
56
+ OVERCLOUD_COMPUTE_IMAGE=${OVERCLOUD_COMPUTE_IMAGE:-overcloud-full}
57
+ OVERCLOUD_BLOCKSTORAGE_IMAGE=${OVERCLOUD_BLOCKSTORAGE_IMAGE:-overcloud-full}
58
+ OVERCLOUD_SWIFTSTORAGE_IMAGE=${OVERCLOUD_SWIFTSTORAGE_IMAGE:-overcloud-full}
59
+ OVERCLOUD_CEPHSTORAGE_IMAGE=${OVERCLOUD_CEPHSTORAGE_IMAGE:-overcloud-full}
60
+
61
+ # Default flavor parameters
62
+ export OVERCLOUD_CONTROL_FLAVOR=${OVERCLOUD_CONTROL_FLAVOR:-\"baremetal\"}
63
+ export OVERCLOUD_COMPUTE_FLAVOR=${OVERCLOUD_COMPUTE_FLAVOR:-\"baremetal\"}
64
+ export OVERCLOUD_CEPHSTORAGE_FLAVOR=${OVERCLOUD_CEPHSTORAGE_FLAVOR:-\"baremetal\"}
65
+ # Even though we are not deploying nodes with these roles, the templates will
66
+ # still validate that a flavor exists, so just use the baremetal_compute flavor
67
+ # for now.
68
+ export OVERCLOUD_BLOCKSTORAGE_FLAVOR=${OVERCLOUD_BLOCKSTORAGE_FLAVOR:-\"baremetal\"}
69
+ export OVERCLOUD_SWIFTSTORAGE_FLAVOR=${OVERCLOUD_SWIFTSTORAGE_FLAVOR:-\"baremetal\"}
70
+
71
+ export OVERCLOUD_RESOURCE_REGISTRY=${OVERCLOUD_RESOURCE_REGISTRY:-\"/usr/share/openstack-tripleo-heat-templates/overcloud-resource-registry-puppet.yaml\"}
72
+ NeutronControlPlaneID=$(neutron net-show ctlplane | grep ' id ' | awk '{print $4}')
73
+
74
+ export OVERCLOUD_EXTRA=${OVERCLOUD_EXTRA:-""}
75
+
76
+ PLAN_ID=$(tuskar plan-show overcloud | awk '$2==\"uuid\" {print $4}')
77
+ if [ -n \"$PLAN_ID\" ]; then
78
+ tuskar plan-delete $PLAN_ID
79
+ fi
80
+
81
+ tuskar plan-create overcloud
82
+ PLAN_ID=$(tuskar plan-show overcloud | awk '$2==\"uuid\" {print $4}')
83
+
84
+ CONTROLLER_ID=$(tuskar role-list | awk '$4==\"Controller\" {print $2}')
85
+ COMPUTE_ID=$(tuskar role-list | awk '$4==\"Compute\" {print $2}')
86
+ SWIFT_ID=$(tuskar role-list | awk '$4==\"Swift-Storage\" {print $2}')
87
+ CINDER_ID=$(tuskar role-list | awk '$4==\"Cinder-Storage\" {print $2}')
88
+ CEPH_ID=$(tuskar role-list | awk '$4==\"Ceph-Storage\" {print $2}')
89
+
90
+ tuskar plan-add-role $PLAN_ID -r $CONTROLLER_ID
91
+ tuskar plan-add-role $PLAN_ID -r $COMPUTE_ID
92
+ tuskar plan-add-role $PLAN_ID -r $SWIFT_ID
93
+ tuskar plan-add-role $PLAN_ID -r $CINDER_ID
94
+ tuskar plan-add-role $PLAN_ID -r $CEPH_ID
95
+
96
+ export TUSKAR_PARAMETERS=${TUSKAR_PARAMETERS:-\"
97
+ -A NeutronControlPlaneID=${NeutronControlPlaneID}
98
+ -A Controller-1::AdminPassword=${OVERCLOUD_ADMIN_PASSWORD}
99
+ -A Controller-1::AdminToken=${OVERCLOUD_ADMIN_TOKEN}
100
+ -A Compute-1::AdminPassword=${OVERCLOUD_ADMIN_PASSWORD}
101
+ -A Controller-1::SnmpdReadonlyUserPassword=${UNDERCLOUD_CEILOMETER_SNMPD_PASSWORD}
102
+ -A Cinder-Storage-1::SnmpdReadonlyUserPassword=${UNDERCLOUD_CEILOMETER_SNMPD_PASSWORD}
103
+ -A Swift-Storage-1::SnmpdReadonlyUserPassword=${UNDERCLOUD_CEILOMETER_SNMPD_PASSWORD}
104
+ -A Compute-1::SnmpdReadonlyUserPassword=${UNDERCLOUD_CEILOMETER_SNMPD_PASSWORD}
105
+ -A Controller-1::CeilometerPassword=${OVERCLOUD_CEILOMETER_PASSWORD}
106
+ -A Controller-1::CeilometerMeteringSecret=${OVERCLOUD_CEILOMETER_SECRET}
107
+ -A Compute-1::CeilometerPassword=${OVERCLOUD_CEILOMETER_PASSWORD}
108
+ -A Compute-1::CeilometerMeteringSecret=${OVERCLOUD_CEILOMETER_SECRET}
109
+ -A Controller-1::CinderPassword=${OVERCLOUD_CINDER_PASSWORD}
110
+ -A Controller-1::GlancePassword=${OVERCLOUD_GLANCE_PASSWORD}
111
+ -A Controller-1::HeatPassword=${OVERCLOUD_HEAT_PASSWORD}
112
+ -A Controller-1::NeutronPassword=${OVERCLOUD_NEUTRON_PASSWORD}
113
+ -A Compute-1::NeutronPassword=${OVERCLOUD_NEUTRON_PASSWORD}
114
+ -A Controller-1::NovaPassword=${OVERCLOUD_NOVA_PASSWORD}
115
+ -A Compute-1::NovaPassword=${OVERCLOUD_NOVA_PASSWORD}
116
+ -A Controller-1::SwiftHashSuffix=${OVERCLOUD_SWIFT_HASH}
117
+ -A Controller-1::SwiftPassword=${OVERCLOUD_SWIFT_PASSWORD}
118
+ -A Controller-1::CinderISCSIHelper=lioadm
119
+ -A Cinder-Storage-1::CinderISCSIHelper=lioadm
120
+ -A Controller-1::CloudName=overcloud
121
+ -A Controller-1::NeutronPublicInterface=$NeutronPublicInterface
122
+ -A Controller-1::NeutronBridgeMappings=$NeutronBridgeMappings
123
+ -A Compute-1::NeutronBridgeMappings=$NeutronBridgeMappings
124
+ -A Controller-1::NeutronFlatNetworks=$NeutronFlatNetworks
125
+ -A Compute-1::NeutronFlatNetworks=$NeutronFlatNetworks
126
+ -A Compute-1::NeutronPhysicalBridge=$NeutronPhysicalBridge
127
+ -A Compute-1::NeutronPublicInterface=$NeutronPublicInterface
128
+ -A Compute-1::NovaComputeLibvirtType=$OVERCLOUD_LIBVIRT_TYPE
129
+ -A Controller-1::NtpServer=${NtpServer}
130
+ -A Compute-1::NtpServer=${NtpServer}
131
+ -A Controller-1::NeutronNetworkType=${NEUTRON_NETWORK_TYPE}
132
+ -A Compute-1::NeutronNetworkType=${NEUTRON_NETWORK_TYPE}
133
+ -A Controller-1::NeutronTunnelTypes=${NEUTRON_TUNNEL_TYPES}
134
+ -A Compute-1::NeutronTunnelTypes=${NEUTRON_TUNNEL_TYPES}
135
+ -A Controller-1::count=${CONTROLSCALE}
136
+ -A Compute-1::count=${COMPUTESCALE}
137
+ -A Swift-Storage-1::count=${SWIFTSTORAGESCALE}
138
+ -A Cinder-Storage-1::count=${BLOCKSTORAGESCALE}
139
+ -A Ceph-Storage-1::count=${CEPHSTORAGESCALE}
140
+ -A Cinder-Storage-1::Flavor=${OVERCLOUD_BLOCKSTORAGE_FLAVOR}
141
+ -A Compute-1::Flavor=${OVERCLOUD_COMPUTE_FLAVOR}
142
+ -A Controller-1::Flavor=${OVERCLOUD_CONTROL_FLAVOR}
143
+ -A Swift-Storage-1::Flavor=${OVERCLOUD_SWIFTSTORAGE_FLAVOR}
144
+ -A Ceph-Storage-1::Flavor=${OVERCLOUD_CEPHSTORAGE_FLAVOR}
145
+ -A Swift-Storage-1::Image=${OVERCLOUD_SWIFTSTORAGE_IMAGE}
146
+ -A Cinder-Storage-1::Image=${OVERCLOUD_BLOCKSTORAGE_IMAGE}
147
+ -A Ceph-Storage-1::Image=${OVERCLOUD_BLOCKSTORAGE_IMAGE}
148
+ -A Controller-1::Image=${OVERCLOUD_CONTROLLER_IMAGE}
149
+ -A Compute-1::Image=${OVERCLOUD_COMPUTE_IMAGE}
150
+ \"}
151
+
152
+ if [ $CONTROLSCALE -gt 1 ]; then
153
+ export TUSKAR_PARAMETERS=\"$TUSKAR_PARAMETERS
154
+ -A Controller-1::NeutronL3HA=True
155
+ -A Controller-1::NeutronAllowL3AgentFailover=False
156
+ -A Compute-1::NeutronL3HA=True
157
+ -A Compute-1::NeutronAllowL3AgentFailover=False
158
+ \"
159
+ fi
160
+
161
+ if [ $CEPHSTORAGESCALE -gt 0 ]; then
162
+ FSID=$(uuidgen)
163
+ MON_KEY=$(create_cephx_key)
164
+ ADMIN_KEY=$(create_cephx_key)
165
+ CINDER_ISCSI=${CINDER_ISCSI:-0}
166
+ export TUSKAR_PARAMETERS=\"$TUSKAR_PARAMETERS
167
+ -A Controller-1::CinderEnableRbdBackend=True
168
+ -A Controller-1::GlanceBackend=rbd
169
+ -A CephClusterFSID=$FSID
170
+ -A CephMonKey=$MON_KEY
171
+ -A CephAdminKey=$ADMIN_KEY
172
+ -A Compute-1::NovaEnableRbdBackend=True
173
+ \"
174
+
175
+ if [ $CINDER_ISCSI -eq 0 ]; then
176
+ export TUSKAR_PARAMETERS=\"$TUSKAR_PARAMETERS
177
+ -A Controller-1::CinderEnableIscsiBackend=false
178
+ \"
179
+ else
180
+ # (this is the default parameter value)
181
+ export TUSKAR_PARAMETERS=\"$TUSKAR_PARAMETERS
182
+ -A Controller-1::CinderEnableIscsiBackend=true
183
+ \"
184
+ fi
185
+ fi
186
+
187
+ tuskar plan-update $TUSKAR_PARAMETERS $PLAN_ID
188
+
189
+ # Added next to parameters as they are required
190
+ TIMEOUT=5
191
+ HEAT_OP=\"stack-create\"
192
+
193
+ HEAT_ENV=${HEAT_ENV:-\"overcloud-env.json\"}
194
+
195
+ if [ -f $HEAT_ENV -a \"$HEAT_OP\" = \"stack-update\" ]; then
196
+ ENV_JSON=$(cat $HEAT_ENV)
197
+ else
198
+ ENV_JSON='{\"parameters\":{}}'
199
+ fi
200
+
201
+ jq . > \"${HEAT_ENV}\" <<< $ENV_JSON
202
+ chmod 0600 \"${HEAT_ENV}\"
203
+
204
+ if [ \"$HEAT_OP\" = \"stack-create\" ]; then
205
+ generate-keystone-pki --heatenv $HEAT_ENV
206
+ fi
207
+
208
+ KeystoneCACertificate=$(os-apply-config -m $HEAT_ENV --key parameters.KeystoneCACertificate --type raw)
209
+ KeystoneSigningCertificate=$(os-apply-config -m $HEAT_ENV --key parameters.KeystoneSigningCertificate --type raw)
210
+ KeystoneSigningKey=$(os-apply-config -m $HEAT_ENV --key parameters.KeystoneSigningKey --type raw)
211
+
212
+ # Sending the Certificates one by one, otherwise there are problems with escaping
213
+ tuskar plan-update -A Controller-1::KeystoneCACertificate=\"${KeystoneCACertificate}\" $PLAN_ID
214
+ tuskar plan-update -A Controller-1::KeystoneSigningCertificate=\"${KeystoneSigningCertificate}\" $PLAN_ID
215
+ tuskar plan-update -A Controller-1::KeystoneSigningKey=\"${KeystoneSigningKey}\" $PLAN_ID
216
+
217
+ # Get templates from tuskar
218
+ tuskar plan-templates -O tuskar_templates $PLAN_ID
219
+
220
+ OVERCLOUD_YAML_PATH=\"tuskar_templates/plan.yaml\"
221
+ ENVIRONMENT_YAML_PATH=\"tuskar_templates/environment.yaml\"
222
+ "
223
+
29
224
  OSP7_COMMON = "
30
225
  sudo yum install -y http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
31
226
  sudo yum install -y https://rdoproject.org/repos/openstack-kilo/rdo-release-kilo.rpm
@@ -38,7 +233,8 @@ module Egon
38
233
  sudo cp /root/tripleo-undercloud-passwords .
39
234
  sudo chown $USER: tripleo-undercloud-passwords
40
235
  sudo cp /root/stackrc .
41
- sudo chown $USER: stackrc"
236
+ sudo chown $USER: stackrc
237
+ #{POST_INSTALL}"
42
238
  end
43
239
  end
44
240
  end
data/lib/egon/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Egon
2
- VERSION = "0.3.6"
2
+ VERSION = "0.4.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: egon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Egon and Fusor team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-30 00:00:00.000000000 Z
11
+ date: 2015-08-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler