create two manifests for the rubbos_common module 39/11639/1
authorwangyaoguang <sunshine.wang@huawei.com>
Sat, 26 Mar 2016 07:17:05 +0000 (15:17 +0800)
committerwangyaoguang <sunshine.wang@huawei.com>
Sat, 26 Mar 2016 07:33:38 +0000 (15:33 +0800)
Change-Id: I8d8b4085eb3297035bfdf533e5087e037cd4e363
JIRA: BOTTLENECK-50

testsuites/rubbos/puppet_manifests/modules/params/manifests/rubbos_params.pp [new file with mode: 0644]
testsuites/rubbos/puppet_manifests/modules/rubbos_common/manifests/rubbos_common_on.pp [new file with mode: 0644]

diff --git a/testsuites/rubbos/puppet_manifests/modules/params/manifests/rubbos_params.pp b/testsuites/rubbos/puppet_manifests/modules/params/manifests/rubbos_params.pp
new file mode 100644 (file)
index 0000000..db1fa82
--- /dev/null
@@ -0,0 +1,18 @@
+##############################################################################
+# Copyright (c) 2016 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+
+## Variables used in {rubbos} test suite
+class params::rubbos_params {
+
+  $rubbos_app          = "/bottlenecks/rubbos/app"
+  $rubbos_app_tools    = "/bottlenecks/rubbos/app_tools"
+  $rubbos_home         = "/bottlenecks/rubbos/app/RUBBoS"
+
+}
diff --git a/testsuites/rubbos/puppet_manifests/modules/rubbos_common/manifests/rubbos_common_on.pp b/testsuites/rubbos/puppet_manifests/modules/rubbos_common/manifests/rubbos_common_on.pp
new file mode 100644 (file)
index 0000000..8e7539e
--- /dev/null
@@ -0,0 +1,72 @@
+##############################################################################
+# Copyright (c) 2016 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+
+class rubbos_common::rubbos_common_on {
+
+  include params::rubbos_params
+
+  # Declare some variables
+  $rubbos_app          = $params::rubbos_params::rubbos_app
+  $rubbos_app_tool     = $params::rubbos_params::rubbos_app_tool
+  $rubbos_home         = $params::rubbos_params::rubbos_home
+
+  # Prepare RUBBOS_APP folder
+  exec {'mkdir -p ${rubbos_app}':
+        command => "mkdir -p ${rubbos_app}",
+        unless  => "test -d ${rubbos_app}",
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+  }
+
+  # Prepare RUBBOS_APP_TOOLS folder
+  exec {'mkdir -p ${rubbos_app_tool}':
+        command => "mkdir -p ${rubbos_app_tool}",
+        unless  => "test -d ${rubbos_app_tool}",
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+  }
+
+  # Prepare RUBBOS_HOME folder
+  exec {'mkdir -p ${rubbos_home}':
+        command        => "mkdir -p ${rubbos_home}",
+        unless => "test -d ${rubbos_home}",
+        path   => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        require        => Exec['mkdir -p ${rubbos_app}'],
+  }
+
+  # Prepare common packages:
+  package {'make':
+        name    => "make",
+        ensure  => installed,
+  }
+  package {'gcc':
+        name    => "gcc",
+        ensure  => installed,
+  }
+  package {'g++':
+        name    => "g++",
+        ensure  => installed,
+  }
+
+  # Install jdk
+  file {'${rubbos_app_tool}/jdk-6u27-linux-x64.bin':
+        ensure  => file,
+        path    => "${rubbos_app_tool}/jdk-6u27-linux-x64.bin",
+        source  => "puppet:///modules/rubbos_common/jdk-6u27-linux-x64.bin",
+        mode    => 0711,
+        backup  => false,
+       require => Exec['mkdir -p ${rubbos_app_tool}'],
+  }
+  exec {'jdk-6u27-linux-x64.bin':
+        cwd     => "${rubbos_app_tool}",
+        command => "${rubbos_app_tool}/jdk-6u27-linux-x64.bin",
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        require => File['${rubbos_app_tool}/jdk-6u27-linux-x64.bin'],
+  }
+
+}