Advertisement
Guest User

install

a guest
Mar 21st, 2014
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.30 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. set -eu # -x for verbose logging to juju debug-log
  4.  
  5. umask 002
  6.  
  7. install_root=`config-get install_root`
  8. app_name=`config-get app_name`
  9. app_dir="$install_root/$app_name"
  10. app_user=`config-get app_user`
  11. app_url=`config-get app_url`
  12. app_branch=`config-get app_branch`
  13.  
  14. apt-get update
  15.  
  16. # synchronize server clock with a time server
  17. apt-get -y install ntp
  18.  
  19. apt-get -y install git-core curl build-essential coreutils git python git-core make python-pygments
  20.  
  21. install_nginx() {
  22.   juju-log "Installing nginx..."
  23.   apt-get install -y python-software-properties
  24.   add-apt-repository -y ppa:nginx/stable
  25.   apt-get install -y nginx
  26. }
  27. [[ -x /usr/sbin/nginx ]] || install_nginx
  28.  
  29. install_jekyll() {
  30.   juju-log "Installing jekyll..."
  31.   apt-get -y install ruby ruby-dev
  32.   gem update --system
  33.   gem install --no-ri --no-rdoc rake
  34.   gem install --no-ri --no-rdoc bundler
  35.   gem install --no-ri --no-rdoc jekyll
  36. }
  37. [[ -x /usr/local/bin/jekyll ]] || install_jekyll
  38.  
  39. install_app() {
  40.   juju-log "Installing ${app_name}..."
  41.   mkdir -p ${app_dir}
  42.   git clone ${app_url} ${app_dir} -b ${app_branch}
  43.   cd ${app_dir} && make
  44.   chown -Rf ${app_user}.${app_user} ${app_dir}
  45.   cp $CHARM_DIR/conf/nginx/${app_name} /etc/nginx/${app_name}
  46.   service nginx restart
  47. }
  48. [[ -d ${app_dir} ]] || install_app
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement