soa_suite.pp 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. #
  2. # fmw_rcu::soa_suite
  3. #
  4. # Copyright 2015 Oracle. All Rights Reserved
  5. #
  6. class fmw_rcu::soa_suite(
  7. $version = $fmw_rcu::params::version,
  8. $java_home_dir = undef,
  9. $middleware_home_dir = $fmw_rcu::params::middleware_home_dir,
  10. $oracle_home_dir = undef,
  11. $source_file = undef,
  12. $jdbc_connect_url = undef,
  13. $db_connect_url = undef,
  14. $db_connect_user = $fmw_rcu::params::db_sys_user,
  15. $db_connect_password = undef,
  16. $rcu_prefix = $fmw_rcu::params::rcu_prefix,
  17. $rcu_component_password = undef,
  18. $os_user = $fmw_rcu::params::os_user,
  19. $os_group = $fmw_rcu::params::os_group,
  20. $tmp_dir = $fmw_rcu::params::tmp_dir,
  21. ) inherits fmw_rcu::params {
  22. if $version in ['12.2.1', '12.2.1.1', '12.2.1.2', '12.1.3'] {
  23. if ( $oracle_home_dir == undef or is_string($oracle_home_dir) == false ) {
  24. fail('oracle_home_dir parameter cannot be empty')
  25. }
  26. require fmw_inst::soa_suite
  27. $rcu_oracle_home_dir = $oracle_home_dir
  28. }
  29. if $version in ['12.2.1', '12.2.1.1', '12.2.1.2'] {
  30. $component_array = ['MDS',
  31. 'IAU',
  32. 'IAU_APPEND',
  33. 'IAU_VIEWER',
  34. 'OPSS',
  35. 'WLS',
  36. 'STB',
  37. 'UCSUMS',
  38. 'ESS',
  39. 'SOAINFRA']
  40. } elsif $version == '12.1.3' {
  41. $component_array = ['MDS',
  42. 'IAU',
  43. 'IAU_APPEND',
  44. 'IAU_VIEWER',
  45. 'OPSS',
  46. 'WLS',
  47. 'UCSUMS',
  48. 'ESS',
  49. 'SOAINFRA']
  50. } elsif $version == '10.3.6' {
  51. if ( $source_file == undef or is_string($source_file) == false ) {
  52. fail('source_file parameter cannot be empty')
  53. }
  54. if $::kernel == 'SunOS' {
  55. fail('there is no rcu installer supported for solaris')
  56. }
  57. require fmw_wls::install
  58. $component_array = ['SOAINFRA',
  59. 'ORASDPM',
  60. 'MDS',
  61. 'OPSS',
  62. 'BAM']
  63. if $::kernel == 'windows' {
  64. $rcu_oracle_home_dir = "${tmp_dir}\\rcu\\rcuHome"
  65. fmw_rcu::internal::rcu_extract_windows{'soa_suite':
  66. version => $version,
  67. middleware_home_dir => $middleware_home_dir,
  68. source_file => $source_file,
  69. creates_dir => $rcu_oracle_home_dir,
  70. tmp_dir => $tmp_dir,
  71. before => Fmw_rcu_repository[$rcu_prefix],
  72. }
  73. } else {
  74. $rcu_oracle_home_dir = "${tmp_dir}/rcu/rcuHome"
  75. fmw_rcu::internal::rcu_extract{'soa_suite':
  76. source_file => $source_file,
  77. creates_dir => $rcu_oracle_home_dir,
  78. os_user => $os_user,
  79. os_group => $os_group,
  80. tmp_dir => $tmp_dir,
  81. before => Fmw_rcu_repository[$rcu_prefix],
  82. }
  83. }
  84. }
  85. $password_file = "${tmp_dir}/soa_suite_rcu_password.txt"
  86. if $::kernel == 'windows' {
  87. if !defined(File["${tmp_dir}/checkrcu.py"]) {
  88. file { "${tmp_dir}/checkrcu.py":
  89. ensure => present,
  90. source_permissions => ignore,
  91. source => 'puppet:///modules/fmw_rcu/checkrcu.py',
  92. }
  93. }
  94. fmw_rcu_repository{$rcu_prefix:
  95. ensure => 'present',
  96. oracle_home_dir => $rcu_oracle_home_dir,
  97. middleware_home_dir => $middleware_home_dir,
  98. java_home_dir => $java_home_dir,
  99. tmp_dir => $tmp_dir,
  100. version => $version,
  101. jdbc_connect_url => $jdbc_connect_url,
  102. db_connect_url => $db_connect_url,
  103. db_connect_user => $db_connect_user,
  104. db_connect_password => $db_connect_password,
  105. rcu_components => $component_array,
  106. rcu_component_password => $rcu_component_password,
  107. require => File["${tmp_dir}/checkrcu.py"],
  108. }
  109. } else {
  110. if !defined(File["${tmp_dir}/checkrcu.py"]) {
  111. file { "${tmp_dir}/checkrcu.py":
  112. ensure => present,
  113. source => 'puppet:///modules/fmw_rcu/checkrcu.py',
  114. owner => $os_user,
  115. group => $os_group,
  116. mode => '0775',
  117. }
  118. }
  119. fmw_rcu_repository{$rcu_prefix:
  120. ensure => 'present',
  121. os_user => $os_user,
  122. os_group => $os_group,
  123. oracle_home_dir => $rcu_oracle_home_dir,
  124. middleware_home_dir => $middleware_home_dir,
  125. java_home_dir => $java_home_dir,
  126. tmp_dir => $tmp_dir,
  127. version => $version,
  128. jdbc_connect_url => $jdbc_connect_url,
  129. db_connect_url => $db_connect_url,
  130. db_connect_user => $db_connect_user,
  131. db_connect_password => $db_connect_password,
  132. rcu_components => $component_array,
  133. rcu_component_password => $rcu_component_password,
  134. require => File["${tmp_dir}/checkrcu.py"],
  135. }
  136. }
  137. }