phpservermon/puphpet/puppet/modules/staging/manifests/deploy.pp

43 lines
1.7 KiB
Puppet

# The define resource extracts compressed file to a staging location.
define staging::deploy (
$source, #: the source file location, supports local files, puppet://, http://, https://, ftp://
$target, #: the target extraction directory
$staging_path = undef, #: the staging location for compressed file. defaults to ${staging::path}/${caller_module_name}
$username = undef, #: https or ftp username
$certificate = undef, #: https certifcate file
$password = undef, #: https or ftp user password or https certificate password
$environment = undef, #: environment variable for settings such as http_proxy
$timeout = undef, #: the time to wait for the file transfer to complete
$user = undef, #: extract file as this user
$group = undef, #: extract group as this group
$creates = undef, #: the file/folder created after extraction. if unspecified defaults to ${target}/${name}
$unless = undef, #: alternative way to conditionally extract file
$onlyif = undef #: alternative way to conditionally extract file
) {
staging::file { $name:
source => $source,
target => $staging_path,
username => $username,
certificate => $certificate,
password => $password,
environment => $environment,
subdir => $caller_module_name,
timeout => $timeout,
}
staging::extract { $name:
target => $target,
source => $staging_path,
user => $user,
group => $group,
environment => $environment,
subdir => $caller_module_name,
creates => $creates,
unless => $unless,
onlyif => $onlyif,
require => Staging::File[$name],
}
}