System configuration for OpenStack Infrastructure
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

jenkins_params.pp 6.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. # Class: openstack_project::jenkins_params
  2. #
  3. # This class holds parameters that need to be
  4. # accessed by other classes.
  5. class openstack_project::jenkins_params {
  6. case $::osfamily {
  7. 'RedHat': {
  8. #yum groupinstall "Development Tools"
  9. # packages needed by slaves
  10. $ant_package = 'ant'
  11. $awk_package = 'gawk'
  12. $asciidoc_package = 'asciidoc'
  13. $curl_package = 'curl'
  14. $docbook_xml_package = 'docbook-style-xsl'
  15. $docbook5_xml_package = 'docbook5-schemas'
  16. $docbook5_xsl_package = 'docbook5-style-xsl'
  17. $firefox_package = 'firefox'
  18. $graphviz_package = 'graphviz'
  19. $libcurl_dev_package = 'libcurl-devel'
  20. $ldap_dev_package = 'openldap-devel'
  21. $librrd_dev_package = 'rrdtool-devel'
  22. # packages needed by document translation
  23. $gnome_doc_package = 'gnome-doc-utils'
  24. $libtidy_package = 'libtidy'
  25. $gettext_package = 'gettext'
  26. $language_fonts_packages = []
  27. # for keystone ldap auth integration
  28. $libsasl_dev = 'cyrus-sasl-devel'
  29. $nspr_dev_package = 'nspr-devel'
  30. $sqlite_dev_package = 'sqlite-devel'
  31. $libvirt_dev_package = 'libvirt-devel'
  32. $libxml2_package = 'libxml2'
  33. $libxml2_dev_package = 'libxml2-devel'
  34. $libxslt_dev_package = 'libxslt-devel'
  35. $libffi_dev_package = 'libffi-devel'
  36. # FIXME: No Maven packages on RHEL
  37. #$maven_package = 'maven'
  38. # For tooz unit tests
  39. $memcached_package = 'memcached'
  40. # For Ceilometer unit tests
  41. $mongodb_package = 'mongodb-server'
  42. $pandoc_package = 'pandoc'
  43. $pkgconfig_package = 'pkgconfig'
  44. $python_libvirt_package = 'libvirt-python'
  45. $python_lxml_package = 'python-lxml'
  46. $python_magic_package = 'python-magic'
  47. $python_requests_package = 'python-requests'
  48. $python_zmq_package = 'python-zmq'
  49. $rubygems_package = 'rubygems'
  50. # Common Lisp interpreter, used for cl-openstack-client
  51. $sbcl_package = 'sbcl'
  52. $sqlite_package = 'sqlite'
  53. $unzip_package = 'unzip'
  54. $zip_package = 'zip'
  55. $xslt_package = 'libxslt'
  56. $xvfb_package = 'xorg-x11-server-Xvfb'
  57. # PHP package, used for community portal
  58. $php5_cli_package = 'php-cli'
  59. # FIXME: No zookeeper packages on RHEL
  60. #$zookeeper_package = 'zookeeper-server'
  61. $cgroups_package = 'libcgroup'
  62. if ($::operatingsystem == 'Fedora') and ($::operatingsystemrelease >= 19) {
  63. # From Fedora 19 and onwards there's no longer
  64. # support to mysql-devel.
  65. # Only community-mysql-devel. If you try to
  66. # install mysql-devel you get a conflict with
  67. # mariadb packages.
  68. $mysql_dev_package = 'community-mysql-devel'
  69. $mysql_package = 'community-mysql'
  70. $zookeeper_package = 'zookeeper'
  71. $cgroups_tools_package = 'libcgroup-tools'
  72. $cgconfig_require = [
  73. Package['cgroups'],
  74. Package['cgroups-tools'],
  75. ]
  76. $cgred_require = [
  77. Package['cgroups'],
  78. Package['cgroups-tools'],
  79. ]
  80. $dvipng_package = 'texlive-dvipng'
  81. } else {
  82. $mysql_dev_package = 'mysql-devel'
  83. $cgroups_tools_package = ''
  84. $cgconfig_require = Package['cgroups']
  85. $cgred_require = Package['cgroups']
  86. $dvipng_package = 'dvipng'
  87. }
  88. }
  89. 'Debian': {
  90. # packages needed by slaves
  91. $ant_package = 'ant'
  92. $awk_package = 'gawk'
  93. $asciidoc_package = 'asciidoc'
  94. $curl_package = 'curl'
  95. $docbook_xml_package = 'docbook-xml'
  96. $docbook5_xml_package = 'docbook5-xml'
  97. $docbook5_xsl_package = 'docbook-xsl'
  98. $dvipng_package = 'dvipng'
  99. $firefox_package = 'firefox'
  100. $graphviz_package = 'graphviz'
  101. $libcurl_dev_package = 'libcurl4-gnutls-dev'
  102. $ldap_dev_package = 'libldap2-dev'
  103. $librrd_dev_package = 'librrd-dev'
  104. # packages needed by document translation
  105. $gnome_doc_package = 'gnome-doc-utils'
  106. $libtidy_package = 'libtidy-0.99-0'
  107. $gettext_package = 'gettext'
  108. $language_fonts_packages = ['fonts-takao', 'fonts-nanum']
  109. # for keystone ldap auth integration
  110. $libsasl_dev = 'libsasl2-dev'
  111. $mysql_dev_package = 'libmysqlclient-dev'
  112. $nspr_dev_package = 'libnspr4-dev'
  113. $sqlite_dev_package = 'libsqlite3-dev'
  114. $libvirt_dev_package = 'libvirt-dev'
  115. $libxml2_package = 'libxml2-utils'
  116. $libxml2_dev_package = 'libxml2-dev'
  117. $libxslt_dev_package = 'libxslt1-dev'
  118. $libffi_dev_package = 'libffi-dev'
  119. $maven_package = 'maven2'
  120. # For tooz unit tests
  121. $memcached_package = 'memcached'
  122. # For Ceilometer unit tests
  123. $mongodb_package = 'mongodb'
  124. $pandoc_package = 'pandoc'
  125. $pkgconfig_package = 'pkg-config'
  126. $python_libvirt_package = 'python-libvirt'
  127. $python_lxml_package = 'python-lxml'
  128. $python_magic_package = 'python-magic'
  129. $python_requests_package = 'python-requests'
  130. $python_zmq_package = 'python-zmq'
  131. if $::lsbdistcodename == 'precise' {
  132. $rubygems_package = 'rubygems'
  133. } else {
  134. $rubygems_package = 'ruby'
  135. }
  136. $ruby1_9_1_package = 'ruby1.9.1'
  137. $ruby1_9_1_dev_package = 'ruby1.9.1-dev'
  138. # Common Lisp interpreter, used for cl-openstack-client
  139. $sbcl_package = 'sbcl'
  140. $sqlite_package = 'sqlite3'
  141. $unzip_package = 'unzip'
  142. $zip_package = 'zip'
  143. $xslt_package = 'xsltproc'
  144. $xvfb_package = 'xvfb'
  145. # PHP package, used for community portal
  146. $php5_cli_package = 'php5-cli'
  147. $php5_mcrypt_package = 'php5-mcrypt'
  148. # For [tooz, taskflow, nova] using zookeeper in unit tests
  149. $zookeeper_package = 'zookeeperd'
  150. $cgroups_package = 'cgroup-bin'
  151. $cgroups_tools_package = ''
  152. $cgconfig_require = [
  153. Package['cgroups'],
  154. File['/etc/init/cgconfig.conf'],
  155. ]
  156. $cgred_require = [
  157. Package['cgroups'],
  158. File['/etc/init/cgred.conf'],
  159. ]
  160. }
  161. default: {
  162. fail("Unsupported osfamily: ${::osfamily} The 'jenkins' module only supports osfamily Debian or RedHat (slaves only).")
  163. }
  164. }
  165. }