lib/chef/knife/bootstrap/_omnibus.sh in knife-server-1.0.0 vs lib/chef/knife/bootstrap/_omnibus.sh in knife-server-1.0.1

- old
+ new

@@ -28,28 +28,47 @@ rpm_filename() { filetype="rpm" filename="chef-${version}.${machine}.rpm" } +failed_download() { + warn "We encountered an error downloading the package." + echo + exit 5 +} + +perform_download() { + case "$1" in + wget) + wget -O "$2" "$3" 2>/tmp/stderr || failed_download + ;; + curl) + curl -L "$3" > "$2" || failed_download + ;; + esac +} + download_package() { if [ -f "/opt/chef-server/bin/chef-server-ctl" ] ; then info "Chef Server detected in /opt/chef-server, skipping download" return 0 fi local url="$(package_url)" banner "Downloading Chef Server package from $url to $tmp_dir/$filename" + if exists wget; then - wget -O "$tmp_dir/$filename" $url 2>/tmp/stderr + perform_download wget "$tmp_dir/$filename" $url elif exists curl; then - curl -L $url > "$tmp_dir/$filename" + perform_download curl "$tmp_dir/$filename" $url else warn "Cannot find wget or curl - cannot install Chef Server!" exit 5 fi + info "Download complete" } install_package() { if [ -f "/opt/chef-server/bin/chef-server-ctl" ] ; then