[PATCH configure 2/2] BZ 731863 - option to disable select components

Richard Su rwsu at redhat.com
Fri Dec 16 02:10:09 UTC 2011


https://bugzilla.redhat.com/show_bug.cgi?id=731863

Added profiles (-p option) support to aeolus-cleanup.
Valid profiles are iwhd, imagefactory, conductor, and rhevm.

Refactored files under conf/. Each profile has a _configure
and a _cleanup version.
---
 bin/aeolus-cleanup          |   23 ++++++++++++++---------
 bin/aeolus-configure        |    4 ++--
 conf/cleanup                |   22 ----------------------
 conf/conductor_cleanup      |   12 ++++++++++++
 conf/configure              |   27 ---------------------------
 conf/custom                 |    7 -------
 conf/custom_configure       |    7 +++++++
 conf/default_cleanup        |   22 ++++++++++++++++++++++
 conf/default_configure      |   27 +++++++++++++++++++++++++++
 conf/deltacloud             |    4 ----
 conf/deltacloud_cleanup     |   12 ++++++++++++
 conf/deltacloud_configure   |    4 ++++
 conf/ec2                    |   13 -------------
 conf/ec2_configure          |   13 +++++++++++++
 conf/imagebuilder           |    6 ------
 conf/imagebuilder_configure |    6 ++++++
 conf/imagefactory_cleanup   |   12 ++++++++++++
 conf/imagefactory_configure |    4 ++++
 conf/mock                   |   12 ------------
 conf/mock_configure         |   12 ++++++++++++
 conf/rhevm                  |   20 --------------------
 conf/rhevm_cleanup          |   17 +++++++++++++++++
 conf/rhevm_configure        |   20 ++++++++++++++++++++
 conf/vsphere                |   18 ------------------
 conf/vsphere_configure      |   18 ++++++++++++++++++
 conf/wui_configure          |    5 +++++
 26 files changed, 207 insertions(+), 140 deletions(-)
 delete mode 100644 conf/cleanup
 create mode 100644 conf/conductor_cleanup
 delete mode 100644 conf/configure
 delete mode 100644 conf/custom
 create mode 100644 conf/custom_configure
 create mode 100644 conf/default_cleanup
 create mode 100644 conf/default_configure
 delete mode 100644 conf/deltacloud
 create mode 100644 conf/deltacloud_cleanup
 create mode 100644 conf/deltacloud_configure
 delete mode 100644 conf/ec2
 create mode 100644 conf/ec2_configure
 delete mode 100644 conf/imagebuilder
 create mode 100644 conf/imagebuilder_configure
 create mode 100644 conf/imagefactory_cleanup
 create mode 100644 conf/imagefactory_configure
 delete mode 100644 conf/mock
 create mode 100644 conf/mock_configure
 delete mode 100644 conf/rhevm
 create mode 100644 conf/rhevm_cleanup
 create mode 100644 conf/rhevm_configure
 delete mode 100644 conf/vsphere
 create mode 100644 conf/vsphere_configure
 create mode 100644 conf/wui_configure

diff --git a/bin/aeolus-cleanup b/bin/aeolus-cleanup
index ef7427c..7d15559 100644
--- a/bin/aeolus-cleanup
+++ b/bin/aeolus-cleanup
@@ -19,17 +19,18 @@ usage()
 cat << EOF
 
 USAGE:
-aeolus-cleanup [-d|--debug] [-h|--help] [-v|--verbose] [-s|--savedata]
+aeolus-cleanup [-d|--debug] [-h|--help] [-v|--verbose] [-s|--savedata] [-p|--profile]
 
 OPTIONS:
    -h | --help       Show this message.
    -d | --debug      Debug logging mode.
    -v | --verbose    Verbose logging mode.
    -s | --savedata   Do not delete existing data.
+   -p | --profile    Name of profile to use. A comma separated list can be used to specify multiple profiles.
 EOF
 }
 
-args=`getopt -o :hdvs --long help,debug,verbose,savedata -- "$@"`
+args=`getopt -o :hdvsp: --long help,debug,verbose,savedata,profile -- "$@"`
 if test $? != 0
      then
          usage
@@ -37,6 +38,7 @@ if test $? != 0
 fi
 
 SAVE_DATA=false
+PUPPET_NODE='default'
 
 eval set -- $args
 while true ; do
@@ -45,24 +47,27 @@ while true ; do
                 -d|--debug) LOGLEVEL="--debug" ; shift ;;
                 -v|--verbose) LOGLEVEL="--verbose" ; shift  ;;
 	        -s|--savedata) SAVE_DATA=true ; shift ;;
+                -p|--profile) PUPPET_NODE=$2 ; shift ; shift ;;
                 --) shift ; break ;;
                 *)  usage ; exit 1 ;;
         esac
 done
 
-PUPPET_NODE='cleanup'
-
 export FACTER_AEOLUS_ENABLE_HTTPS=true
 export FACTER_AEOLUS_ENABLE_SECURITY=false
 export FACTER_AEOLUS_SAVE_DATA=$SAVE_DATA
 
-puppet /usr/share/aeolus-configure/modules/aeolus/aeolus.pp \
+NODE_ARRAY=(`echo $PUPPET_NODE | tr "," "\n"`)
+for x in "${NODE_ARRAY[@]}"
+do
+    puppet /usr/share/aeolus-configure/modules/aeolus/aeolus.pp \
        --modulepath=/usr/share/aeolus-configure/modules/ \
-       --external_nodes "/bin/sh /usr/share/aeolus-configure/modules/aeolus/aeolus-node $PUPPET_NODE" --node_terminus exec \
+       --external_nodes "/bin/sh /usr/share/aeolus-configure/modules/aeolus/aeolus-node ${x}_cleanup" --node_terminus exec \
        --logdest=/var/log/aeolus-configure/aeolus-cleanup.log \
        --logdest=console \
        $LOGLEVEL \
        --detailed-exitcodes
-if [ $? != 0 -a $? != 2 ] ; then
-    exit 1
-fi
+    if [ $? != 0 -a $? != 2 ] ; then
+	exit 1
+    fi
+done
\ No newline at end of file
diff --git a/bin/aeolus-configure b/bin/aeolus-configure
index 9b57b99..503851d 100755
--- a/bin/aeolus-configure
+++ b/bin/aeolus-configure
@@ -39,7 +39,7 @@ fi
 
 INTERACTIVE=1
 
-PUPPET_NODE='configure'
+PUPPET_NODE='default'
 
 eval set -- $args
 while true ; do
@@ -74,7 +74,7 @@ for x in "${NODE_ARRAY[@]}"
 do
     puppet /usr/share/aeolus-configure/modules/aeolus/aeolus.pp \
        --modulepath=/usr/share/aeolus-configure/modules/ \
-       --external_nodes "/bin/sh /usr/share/aeolus-configure/modules/aeolus/aeolus-node $x" --node_terminus exec \
+       --external_nodes "/bin/sh /usr/share/aeolus-configure/modules/aeolus/aeolus-node ${x}_configure" --node_terminus exec \
        --logdest=/var/log/aeolus-configure/aeolus-configure.log \
        --logdest=console \
        $LOGLEVEL \
diff --git a/conf/cleanup b/conf/cleanup
deleted file mode 100644
index 5e2fcd7..0000000
--- a/conf/cleanup
+++ /dev/null
@@ -1,22 +0,0 @@
-#Default cleanup specification
-
-#Set everything up on this box.
-#You can override the default behavior
-#by creating <fqdn>_cleanup with the
-#class membership and parameters as
-#desire and it will take precedence over this.
----
-parameters:
-  enable_https: true
-  enable_security: false
-# Uncomment these to clean up RHEV
-#  rhevm_nfs_server: nfs.server.com
-#  rhevm_nfs_export: /export/export_domain
-#  rhevm_nfs_mount_point: /mnt/rhevm-nfs
-classes:
-- aeolus::conductor::disabled
-- aeolus::iwhd::disabled
-- aeolus::image-factory::disabled
-- aeolus::deltacloud::disabled
-# Uncomment this to clean up RHEV details
-#- aeolus::profiles::rhevm::disabled
diff --git a/conf/conductor_cleanup b/conf/conductor_cleanup
new file mode 100644
index 0000000..708be5e
--- /dev/null
+++ b/conf/conductor_cleanup
@@ -0,0 +1,12 @@
+#conductor-only cleanup specification
+
+#You can override the default behavior
+#by renaming this to  <fqdn>_cleanup.
+#This will result in only conductor being
+#disabled
+---
+parameters:
+  enable_https: true
+  enable_security: false
+classes:
+- aeolus::conductor::disabled
diff --git a/conf/configure b/conf/configure
deleted file mode 100644
index db33897..0000000
--- a/conf/configure
+++ /dev/null
@@ -1,27 +0,0 @@
-#Default setup configuration.
-
-#Set everything up on this box.
-#You can override the default behavior
-#by creating <fqdn>_configure with the
-#class membership and parameters as
-#desire and it will take precedence over this.
-
-#NOTE:  Although this suggests the components
-#can be deployed on individual boxes.  This will likely
-#become a common practice, but be advised that currently
-#apart from https on the web server for conductor, you should
-#consider intermachine communications insecure.  Securing
-#intermachine service calls is on the roadmap.
-#
----
-parameters:
-  enable_https: true
-  enable_security: false
-  package_provider: rpm
-classes:
-- aeolus::conductor
-- aeolus::image-factory
-- aeolus::iwhd
-- aeolus::deltacloud::core
-- aeolus::deltacloud::ec2
-- aeolus::profiles::default
diff --git a/conf/custom b/conf/custom
deleted file mode 100644
index 1e7f7aa..0000000
--- a/conf/custom
+++ /dev/null
@@ -1,7 +0,0 @@
----
-parameters:
-  enable_https: true
-  enable_security: false
-classes:
-CUSTOM_CLASSES
-- aeolus::profiles::custom
diff --git a/conf/custom_configure b/conf/custom_configure
new file mode 100644
index 0000000..1e7f7aa
--- /dev/null
+++ b/conf/custom_configure
@@ -0,0 +1,7 @@
+---
+parameters:
+  enable_https: true
+  enable_security: false
+classes:
+CUSTOM_CLASSES
+- aeolus::profiles::custom
diff --git a/conf/default_cleanup b/conf/default_cleanup
new file mode 100644
index 0000000..5e2fcd7
--- /dev/null
+++ b/conf/default_cleanup
@@ -0,0 +1,22 @@
+#Default cleanup specification
+
+#Set everything up on this box.
+#You can override the default behavior
+#by creating <fqdn>_cleanup with the
+#class membership and parameters as
+#desire and it will take precedence over this.
+---
+parameters:
+  enable_https: true
+  enable_security: false
+# Uncomment these to clean up RHEV
+#  rhevm_nfs_server: nfs.server.com
+#  rhevm_nfs_export: /export/export_domain
+#  rhevm_nfs_mount_point: /mnt/rhevm-nfs
+classes:
+- aeolus::conductor::disabled
+- aeolus::iwhd::disabled
+- aeolus::image-factory::disabled
+- aeolus::deltacloud::disabled
+# Uncomment this to clean up RHEV details
+#- aeolus::profiles::rhevm::disabled
diff --git a/conf/default_configure b/conf/default_configure
new file mode 100644
index 0000000..db33897
--- /dev/null
+++ b/conf/default_configure
@@ -0,0 +1,27 @@
+#Default setup configuration.
+
+#Set everything up on this box.
+#You can override the default behavior
+#by creating <fqdn>_configure with the
+#class membership and parameters as
+#desire and it will take precedence over this.
+
+#NOTE:  Although this suggests the components
+#can be deployed on individual boxes.  This will likely
+#become a common practice, but be advised that currently
+#apart from https on the web server for conductor, you should
+#consider intermachine communications insecure.  Securing
+#intermachine service calls is on the roadmap.
+#
+---
+parameters:
+  enable_https: true
+  enable_security: false
+  package_provider: rpm
+classes:
+- aeolus::conductor
+- aeolus::image-factory
+- aeolus::iwhd
+- aeolus::deltacloud::core
+- aeolus::deltacloud::ec2
+- aeolus::profiles::default
diff --git a/conf/deltacloud b/conf/deltacloud
deleted file mode 100644
index 329b235..0000000
--- a/conf/deltacloud
+++ /dev/null
@@ -1,4 +0,0 @@
-parameters:
-  package_provider: rpm
-classes:
-- aeolus::profiles::deltacloud
diff --git a/conf/deltacloud_cleanup b/conf/deltacloud_cleanup
new file mode 100644
index 0000000..42dd2bc
--- /dev/null
+++ b/conf/deltacloud_cleanup
@@ -0,0 +1,12 @@
+#deltacloud-only cleanup specification
+
+#You can override the default behavior
+#by renaming this to  <fqdn>_cleanup.
+#This will result in only deltacloud being
+#disabled
+---
+parameters:
+  enable_https: true
+  enable_security: false
+classes:
+- aeolus::deltacloud::disabled
diff --git a/conf/deltacloud_configure b/conf/deltacloud_configure
new file mode 100644
index 0000000..329b235
--- /dev/null
+++ b/conf/deltacloud_configure
@@ -0,0 +1,4 @@
+parameters:
+  package_provider: rpm
+classes:
+- aeolus::profiles::deltacloud
diff --git a/conf/ec2 b/conf/ec2
deleted file mode 100644
index 142887f..0000000
--- a/conf/ec2
+++ /dev/null
@@ -1,13 +0,0 @@
-# ec2 setup configuration.
----
-parameters:
-  enable_https: true
-  enable_security: false
-  package_provider: rpm
-classes:
-- aeolus::conductor
-- aeolus::image-factory
-- aeolus::iwhd
-- aeolus::deltacloud::core
-- aeolus::deltacloud::ec2
-- aeolus::profiles::ec2
diff --git a/conf/ec2_configure b/conf/ec2_configure
new file mode 100644
index 0000000..142887f
--- /dev/null
+++ b/conf/ec2_configure
@@ -0,0 +1,13 @@
+# ec2 setup configuration.
+---
+parameters:
+  enable_https: true
+  enable_security: false
+  package_provider: rpm
+classes:
+- aeolus::conductor
+- aeolus::image-factory
+- aeolus::iwhd
+- aeolus::deltacloud::core
+- aeolus::deltacloud::ec2
+- aeolus::profiles::ec2
diff --git a/conf/imagebuilder b/conf/imagebuilder
deleted file mode 100644
index 7fb49e9..0000000
--- a/conf/imagebuilder
+++ /dev/null
@@ -1,6 +0,0 @@
-parameters:
-  package_provider: rpm
-classes:
-- aeolus::image-factory
-- aeolus::iwhd
-- aeolus::profiles::imagebuilder
diff --git a/conf/imagebuilder_configure b/conf/imagebuilder_configure
new file mode 100644
index 0000000..7fb49e9
--- /dev/null
+++ b/conf/imagebuilder_configure
@@ -0,0 +1,6 @@
+parameters:
+  package_provider: rpm
+classes:
+- aeolus::image-factory
+- aeolus::iwhd
+- aeolus::profiles::imagebuilder
diff --git a/conf/imagefactory_cleanup b/conf/imagefactory_cleanup
new file mode 100644
index 0000000..1d30d0a
--- /dev/null
+++ b/conf/imagefactory_cleanup
@@ -0,0 +1,12 @@
+#imagefactory-only cleanup specification
+
+#You can override the default behavior
+#by renaming this to  <fqdn>_cleanup.
+#This will result in only imagefactory being
+#disabled
+---
+parameters:
+  enable_https: true
+  enable_security: false
+classes:
+- aeolus::image-factory::disabled
diff --git a/conf/imagefactory_configure b/conf/imagefactory_configure
new file mode 100644
index 0000000..ed15806
--- /dev/null
+++ b/conf/imagefactory_configure
@@ -0,0 +1,4 @@
+parameters:
+  package_provider: rpm
+classes:
+- aeolus::image-factory
diff --git a/conf/mock b/conf/mock
deleted file mode 100644
index 087c329..0000000
--- a/conf/mock
+++ /dev/null
@@ -1,12 +0,0 @@
-# mock setup configuration.
----
-parameters:
-  enable_https: true
-  enable_security: false
-  package_provider: rpm
-classes:
-- aeolus::conductor
-- aeolus::image-factory
-- aeolus::iwhd
-- aeolus::deltacloud::core
-- aeolus::profiles::mock
diff --git a/conf/mock_configure b/conf/mock_configure
new file mode 100644
index 0000000..087c329
--- /dev/null
+++ b/conf/mock_configure
@@ -0,0 +1,12 @@
+# mock setup configuration.
+---
+parameters:
+  enable_https: true
+  enable_security: false
+  package_provider: rpm
+classes:
+- aeolus::conductor
+- aeolus::image-factory
+- aeolus::iwhd
+- aeolus::deltacloud::core
+- aeolus::profiles::mock
diff --git a/conf/rhevm b/conf/rhevm
deleted file mode 100644
index 860c079..0000000
--- a/conf/rhevm
+++ /dev/null
@@ -1,20 +0,0 @@
----
-parameters:
-  enable_https: true
-  enable_security: false
-  package_provider: rpm
-# Uncomment and provide values to match your RHEV environment.
-# Values below are examples.
-#  rhevm_nfs_server: nfs.server.com
-#  rhevm_nfs_export: /export/export_domain
-#  rhevm_nfs_mount_point: /mnt/rhevm-nfs
-#  rhevm_deltacloud_username: username at fqdn
-#  rhevm_deltacloud_password: password
-#  rhevm_deltacloud_provider: https://rhevm.server.com:8443/api
-#  rhevm_push_timeout: 1800
-classes:
-- aeolus::conductor
-- aeolus::image-factory
-- aeolus::iwhd
-- aeolus::deltacloud::core
-- aeolus::profiles::rhevm
diff --git a/conf/rhevm_cleanup b/conf/rhevm_cleanup
new file mode 100644
index 0000000..55c1b46
--- /dev/null
+++ b/conf/rhevm_cleanup
@@ -0,0 +1,17 @@
+#rhevm-only cleanup specification
+
+#You can override the default behavior
+#by renaming this to  <fqdn>_cleanup.
+#This will result in only rhevm being
+#disabled
+---
+parameters:
+  enable_https: true
+  enable_security: false
+# Uncomment and provide values to match your RHEV environment.
+# Values below are examples.
+#  rhevm_nfs_server: nfs.server.com
+#  rhevm_nfs_export: /export/export_domain
+#  rhevm_nfs_mount_point: /mnt/rhevm-nfs
+classes:
+- aeolus::profiles::rhevm::disabled
diff --git a/conf/rhevm_configure b/conf/rhevm_configure
new file mode 100644
index 0000000..860c079
--- /dev/null
+++ b/conf/rhevm_configure
@@ -0,0 +1,20 @@
+---
+parameters:
+  enable_https: true
+  enable_security: false
+  package_provider: rpm
+# Uncomment and provide values to match your RHEV environment.
+# Values below are examples.
+#  rhevm_nfs_server: nfs.server.com
+#  rhevm_nfs_export: /export/export_domain
+#  rhevm_nfs_mount_point: /mnt/rhevm-nfs
+#  rhevm_deltacloud_username: username at fqdn
+#  rhevm_deltacloud_password: password
+#  rhevm_deltacloud_provider: https://rhevm.server.com:8443/api
+#  rhevm_push_timeout: 1800
+classes:
+- aeolus::conductor
+- aeolus::image-factory
+- aeolus::iwhd
+- aeolus::deltacloud::core
+- aeolus::profiles::rhevm
diff --git a/conf/vsphere b/conf/vsphere
deleted file mode 100644
index b000bc4..0000000
--- a/conf/vsphere
+++ /dev/null
@@ -1,18 +0,0 @@
----
-parameters:
-  enable_https: true
-  enable_security: false
-  package_provider: rpm
-# Uncomment and provide values to match your vSphere environment.
-# Values below are examples.
-#  vsphere_deltacloud_provider: vsphere.server.com
-#  vsphere_username: username
-#  vsphere_password: password
-#  vsphere_datastore: datastore
-#  vsphere_network_name: network_name
-classes:
-- aeolus::conductor
-- aeolus::image-factory
-- aeolus::iwhd
-- aeolus::deltacloud::core
-- aeolus::profiles::vsphere
diff --git a/conf/vsphere_configure b/conf/vsphere_configure
new file mode 100644
index 0000000..b000bc4
--- /dev/null
+++ b/conf/vsphere_configure
@@ -0,0 +1,18 @@
+---
+parameters:
+  enable_https: true
+  enable_security: false
+  package_provider: rpm
+# Uncomment and provide values to match your vSphere environment.
+# Values below are examples.
+#  vsphere_deltacloud_provider: vsphere.server.com
+#  vsphere_username: username
+#  vsphere_password: password
+#  vsphere_datastore: datastore
+#  vsphere_network_name: network_name
+classes:
+- aeolus::conductor
+- aeolus::image-factory
+- aeolus::iwhd
+- aeolus::deltacloud::core
+- aeolus::profiles::vsphere
diff --git a/conf/wui_configure b/conf/wui_configure
new file mode 100644
index 0000000..b2f20c5
--- /dev/null
+++ b/conf/wui_configure
@@ -0,0 +1,5 @@
+parameters:
+  package_provider: rpm
+classes:
+- aeolus::conductor
+- aeolus::profiles::conductor
-- 
1.7.6.4




More information about the aeolus-devel mailing list