|
1 # == Definition: archive |
|
2 # |
|
3 # Download and extract an archive. |
|
4 # |
|
5 # Parameters: |
|
6 # |
|
7 # - *$url: |
|
8 # - *$target: Destination directory |
|
9 # - *$purge_target: Purge Destination prior to extraction. Default false |
|
10 # - *$checksum: Default value "true" |
|
11 # - *$digest_url: Default value undef |
|
12 # - *$digest_string: Default value undef |
|
13 # - *$digest_type: Default value "md5" |
|
14 # - *$src_target: Default value "/usr/src" |
|
15 # - *$root_dir: Default value undef |
|
16 # - *$extension: Default value ".tar.gz" |
|
17 # - *$timeout: Default value 120 |
|
18 # - *$allow_insecure: Default value false |
|
19 # - *$follow_redirects: Default value false |
|
20 # - *$verbose: Default value true |
|
21 # - *$strip_components: Default value 0 |
|
22 # - *$proxy_server: Default value undef |
|
23 # - *$user: User used to do the download and the extraction. The final directory will be used by him/her. |
|
24 # |
|
25 # Example usage: |
|
26 # |
|
27 # archive {"apache-tomcat-6.0.26": |
|
28 # ensure => present, |
|
29 # url => "http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.26/bin/apache-tomcat-6.0.26.tar.gz", |
|
30 # target => "/opt", |
|
31 # } |
|
32 # |
|
33 define archive ( |
|
34 $url, |
|
35 $target, |
|
36 $ensure=present, |
|
37 $checksum=true, |
|
38 $digest_url=undef, |
|
39 $digest_string=undef, |
|
40 $digest_type='md5', |
|
41 $timeout=120, |
|
42 $root_dir=undef, |
|
43 $extension='tar.gz', |
|
44 $src_target='/usr/src', |
|
45 $allow_insecure=false, |
|
46 $follow_redirects=false, |
|
47 $verbose=true, |
|
48 $strip_components=0, |
|
49 $proxy_server=undef, |
|
50 $purge_target=false, |
|
51 $user=undef, |
|
52 ) { |
|
53 |
|
54 archive::download {"${name}.${extension}": |
|
55 ensure => $ensure, |
|
56 url => $url, |
|
57 checksum => $checksum, |
|
58 digest_url => $digest_url, |
|
59 digest_string => $digest_string, |
|
60 digest_type => $digest_type, |
|
61 timeout => $timeout, |
|
62 src_target => $src_target, |
|
63 allow_insecure => $allow_insecure, |
|
64 follow_redirects => $follow_redirects, |
|
65 verbose => $verbose, |
|
66 proxy_server => $proxy_server, |
|
67 user => $user, |
|
68 } |
|
69 |
|
70 archive::extract {$name: |
|
71 ensure => $ensure, |
|
72 target => $target, |
|
73 purge => $purge_target, |
|
74 src_target => $src_target, |
|
75 root_dir => $root_dir, |
|
76 extension => $extension, |
|
77 timeout => $timeout, |
|
78 strip_components => $strip_components, |
|
79 require => Archive::Download["${name}.${extension}"], |
|
80 user => $user, |
|
81 } |
|
82 } |