Sha256: 84e238d89eb0de4064d89e14695bafacf3bfbe72505889a7e979a08fb6ba8fd2
Contents?: true
Size: 1.63 KB
Versions: 9
Compression:
Stored size: 1.63 KB
Contents
#!/bin/bash -e # TODO just a POC, make a real implementation function usage() { cat - <<EOF Usage: module [OPTIONS] command Puppet module manager. GENERAL OPTIONS -h, --help Show this help message. COMMANDS install Install module from an URL. EXAMPLES Install a module from a git URL: module install git://github.com/lak/puppet-puppet.git Install a module from a git URL and a specified name: module install git://github.com/lak/puppet-puppet.git lak-puppet EOF exit 0 } command=$1 [ -z "$command" ] && usage shift modules_dir=modules [ -d $modules_dir ] || mkdir $modules_dir cd $modules_dir case $command in install) if [ ! -x "/usr/bin/git" ]; then echo "You must install git to retrieve modules managed with it (apt-get install git-core)" exit 1 fi module_url=$1 [ -z "$module_url" ] && usage shift if [ $# -gt 0 ]; then module_name=$1 shift else module_name=`echo $module_url | sed 's@.*/\(.*\)$@\1@'` # remove .git suffix module_name=`echo $module_name | sed 's/\.git$//'` # remove puppet- or module- prefix module_name=`echo $module_name | sed -e 's/^puppet-//' -e 's/^module-//'` fi if [ -d $module_name ]; then echo "module $module_name already installed" exit 1 fi echo "install module $module_name in $modules_dir/$module_name" git clone $module_url $module_name rm -rf $module_name/.git ;; *) usage ;; esac
Version data entries
9 entries across 9 versions & 2 rubygems