jdk_solaris.pp 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #
  2. # fmw_jdk::internal::jdk_solaris
  3. #
  4. # Copyright 2015 Oracle. All Rights Reserved
  5. #
  6. class fmw_jdk::internal::jdk_solaris(
  7. $java_home_dir = undef,
  8. $source_file = undef,
  9. $source_x64_file = undef,
  10. )
  11. {
  12. $path = '/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin'
  13. $java_home_parent_dir = fmw_parent_folder($java_home_dir)
  14. file { $java_home_parent_dir:
  15. ensure => directory,
  16. owner => 'root',
  17. group => 'bin',
  18. mode => '0775',
  19. }
  20. exec { 'uncompress JDK':
  21. command => "gzip -dc ${source_file} | tar xf -",
  22. path => $path,
  23. user => 'root',
  24. creates => $java_home_dir,
  25. cwd => $java_home_parent_dir,
  26. require => File[$java_home_parent_dir],
  27. }
  28. if ( $::architecture == 'i86pc' ) {
  29. $ext = 'amd64'
  30. } else {
  31. $ext = 'sparcv9'
  32. }
  33. if ( $source_x64_file != undef ) {
  34. exec { 'uncompress JDK x64 extensions':
  35. command => "gzip -dc ${source_x64_file} | tar xf -",
  36. path => $path,
  37. user => 'root',
  38. creates => "${java_home_dir}/bin/${ext}",
  39. cwd => $java_home_parent_dir,
  40. require => Exec['uncompress JDK'],
  41. before => Exec["chown -R root:bin ${java_home_dir}"],
  42. }
  43. }
  44. exec { "chown -R root:bin ${java_home_dir}":
  45. unless => "ls -al ${java_home_dir}/bin/java | awk ' { print \$3 }' | grep root",
  46. path => $path,
  47. user => 'root',
  48. group => 'bin',
  49. require => Exec['uncompress JDK'],
  50. }
  51. fmw_jdk::utils::links{ [ 'java', 'javac', 'javaws', 'keytool']:
  52. java_home_dir => $java_home_dir,
  53. require => Exec["chown -R root:bin ${java_home_dir}"],
  54. }
  55. }