Andrew Bogott has submitted this change and it was merged.
Change subject: Add wmflabsorg-domainadminenv.sh script and refactor novaenv.sh
classes
......................................................................
Add wmflabsorg-domainadminenv.sh script and refactor novaenv.sh classes
We're going to need special credentials for designate's handling
of the wmflabs.org domain; this patch sets up credentials for
that and adds a new script, 'designateenv.sh' to use with
commandline tools.
This patch also creates a new class to create both novaenv.sh
and designateenv.sh, and adds those files to the horizon host.
Change-Id: Iba8f6ad97807fafc36b4995750a208801b4019d9
---
M hieradata/eqiad.yaml
M manifests/role/horizon.pp
M modules/openstack/manifests/adminscripts.pp
A modules/openstack/manifests/envscripts.pp
A modules/openstack/templates/wmflabsorg-domainadminenv.sh.erb
M modules/role/manifests/labs/openstack/nova.pp
6 files changed, 46 insertions(+), 8 deletions(-)
Approvals:
Andrew Bogott: Looks good to me, approved
jenkins-bot: Verified
diff --git a/hieradata/eqiad.yaml b/hieradata/eqiad.yaml
index 125b16e..500df62 100644
--- a/hieradata/eqiad.yaml
+++ b/hieradata/eqiad.yaml
@@ -144,6 +144,7 @@
controller_hostname: *labsnovacontroller
domain_id_internal_forward: '114f1333-c2c1-44d3-beb4-ebed1a91742b'
domain_id_internal_reverse: '8d114f3c-815b-466c-bdd4-9b91f704ea60'
+ wmflabsdotorg_project: 'wmflabsdotorg'
labs_baremetal_servers:
- '10.64.20.12'
diff --git a/manifests/role/horizon.pp b/manifests/role/horizon.pp
index 287ce4e..e07fe6e 100644
--- a/manifests/role/horizon.pp
+++ b/manifests/role/horizon.pp
@@ -1,6 +1,7 @@
class role::horizon {
include role::labs::openstack::nova::common
$novaconfig = $role::labs::openstack::nova::common::novaconfig
+ $designateconfig = hiera_hash('designateconfig', {})
class { 'openstack::horizon::service':
openstack_version => $::openstack_version,
@@ -11,4 +12,9 @@
proto => 'tcp',
port => '80',
}
+
+ class { '::openstack::envscripts':
+ novaconfig => $novaconfig,
+ designateconfig => $designateconfig
+ }
}
diff --git a/modules/openstack/manifests/adminscripts.pp
b/modules/openstack/manifests/adminscripts.pp
index 964efbb..529ed74 100644
--- a/modules/openstack/manifests/adminscripts.pp
+++ b/modules/openstack/manifests/adminscripts.pp
@@ -15,14 +15,6 @@
ensure => present,
}
- # Handy script to set up environment for commandline nova magic
- file { '/root/novaenv.sh':
- content => template('openstack/novaenv.sh.erb'),
- mode => '0755',
- owner => 'root',
- group => 'root',
- }
-
# Script to cold-migrate instances between compute nodes
file { '/root/cold-nova-migrate':
ensure => present,
diff --git a/modules/openstack/manifests/envscripts.pp
b/modules/openstack/manifests/envscripts.pp
new file mode 100644
index 0000000..6d968a6
--- /dev/null
+++ b/modules/openstack/manifests/envscripts.pp
@@ -0,0 +1,22 @@
+# Scripts to set up shell environment for openstack commandline
+class openstack::envscripts(
+ $novaconfig,
+ $designateconfig
+ ) {
+
+ # Handy script to set up environment for commandline nova magic
+ file { '/root/novaenv.sh':
+ content => template('openstack/novaenv.sh.erb'),
+ mode => '0755',
+ owner => 'root',
+ group => 'root',
+ }
+
+ # Handy script to set up environment for commandline nova magic
+ file { '/root/wmflabsorg-domainadminenv.sh':
+ content => template('openstack/wmflabsorg-domainadminenv.sh.erb'),
+ mode => '0755',
+ owner => 'root',
+ group => 'root',
+ }
+}
diff --git a/modules/openstack/templates/wmflabsorg-domainadminenv.sh.erb
b/modules/openstack/templates/wmflabsorg-domainadminenv.sh.erb
new file mode 100644
index 0000000..49ea7e6
--- /dev/null
+++ b/modules/openstack/templates/wmflabsorg-domainadminenv.sh.erb
@@ -0,0 +1,11 @@
+# The wmflabs.org domain is stored in a special project called 'wmflabsorg'.
+# This script sets up credentials for access within that project.
+export OS_USERNAME="<%= @designateconfig['wmflabsdotorg_admin'] %>"
+export OS_PROJECT_DOMAIN_ID="default"
+export OS_USER_DOMAIN_ID="default"
+export OS_PASSWORD="<%= @designateconfig['wmflabsdotorg_pass'] %>"
+export OS_AUTH_URL="http://<%= @nova_controller_hostname %>:35357/v3"
+export OS_REGION_NAME="<%= @nova_region %>"
+export OS_TENANT_NAME="<%= @designateconfig['wmflabsdotorg_project'] %>"
+export OS_NO_CACHE=1
+export OS_IDENTITY_API_VERSION=3
diff --git a/modules/role/manifests/labs/openstack/nova.pp
b/modules/role/manifests/labs/openstack/nova.pp
index edf5018..c57d2ec 100644
--- a/modules/role/manifests/labs/openstack/nova.pp
+++ b/modules/role/manifests/labs/openstack/nova.pp
@@ -135,11 +135,17 @@
include role::labs::openstack::nova::common
$novaconfig = $role::labs::openstack::nova::common::novaconfig
+ $designateconfig = hiera_hash('designateconfig', {})
class { '::openstack::adminscripts':
novaconfig => $novaconfig
}
+ class { '::openstack::envscripts':
+ novaconfig => $novaconfig,
+ designateconfig => $designateconfig
+ }
+
class { '::openstack::spreadcheck':
novaconfig => $novaconfig
}
--
To view, visit https://gerrit.wikimedia.org/r/277255
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Iba8f6ad97807fafc36b4995750a208801b4019d9
Gerrit-PatchSet: 4
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Andrew Bogott <[email protected]>
Gerrit-Reviewer: Alex Monk <[email protected]>
Gerrit-Reviewer: Andrew Bogott <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits