Skip to content
Extraits de code Groupes Projets
daemontools.rb 2,94 ko
Newer Older
  • Learn to ignore specific revisions
  • execute "get the daemontools repo" do
      command "mkdir -p /package/admin && cd /package/admin && git clone git://github.com/MikeSofaer/daemontools.git daemontools-0.76 || true"
    end
    
    execute "compile daemontools" do
      command "cd /package/admin/daemontools-0.76 && ./package/install"
    end
    
    execute "mongo run" do
      command "mkdir -p /service/mongo && echo '#!/bin/sh' > /service/mongo/run && echo 'exec /usr/bin/mongod' >> /service/mongo/run"
    end
    execute "executable" do
      command "chmod -R 755 /service/mongo"
    end
    
    config = YAML.load_file("/usr/local/app/diaspora/chef/cookbooks/common/files/default/thins.yml")
    
    
    config['thins'].each do |thin|
    
    zhitomirskiyi's avatar
    zhitomirskiyi a validé
      port = thin["port"]
      dir = "/service/thin_#{port}"
    
      flags = []
      flags << "-c /usr/local/app/diaspora" #directory to run from
    
      flags << "-e production"              #run in production mode
      flags << "-p #{port}"                 #use a socket
    
      execute "thin run" do
        command "mkdir -p #{dir} && echo '#!/bin/sh' > #{dir}/run && echo 'exec /usr/local/bin/ruby /usr/local/bin/thin start #{flags.join(" ")}' >> #{dir}/run"
      end
      execute "executable" do
        command "chmod -R 755 " + dir
      end
    
    #service for mongo tunnel
    #execute "mongo ssh tunnel" do
      #command "mkdir -p /service/mongo_ssh_tunnel && echo '#!/bin/sh' > /service/mongo_ssh_tunnel/run && echo 'exec ssh -N -f -L 27017:localhost:27017 caesar@184.106.233.43' >> /service/websocket/run"
    #end
    
    
    execute "websocket run" do
    
      command "mkdir -p /service/websocket && echo '#!/bin/sh' > /service/websocket/run && echo 'cd /usr/local/app/diaspora && RAILS_ENV=production exec /usr/local/bin/ruby /usr/local/app/diaspora/script/websocket_server.rb' >> /service/websocket/run"
    
    end
    execute "executable" do
      command "chmod -R 755 /service/websocket"
    
    execute "magent run" do
    
    Raphael's avatar
    Raphael a validé
      command "mkdir -p /service/magent && echo '#!/bin/sh' > /service/magent/run && echo 'cd /usr/local/app/diaspora && RAILS_ENV=production exec /usr/local/bin/bundle exec /usr/local/bin/magent start --log-path=/usr/local/app/diaspora/log/' >> /service/magent/run"
    
    end
    execute "executable" do
      command "chmod -R 755 /service/magent"
    end
    
    
    execute "redis run" do
      command "mkdir -p /service/redis && echo '#!/bin/sh' > /service/redis/run && echo 'cd /usr/sbin/ && exec /usr/sbin/redis-server /usr/local/etc/redis.conf'  >> /service/redis/run"
    end
    execute "executable" do
      command "chmod -R 755 /service/redis"
    end
    
    
    execute "nginx run" do
      command "mkdir -p /service/nginx && echo '#!/bin/sh' > /service/nginx/run && echo 'exec /usr/local/nginx/sbin/nginx' >> /service/nginx/run"
    end
    
    execute "executable" do
      command "chmod -R 755 /service/nginx"
    end
    
    
    execute "resque worker run" do
      command "mkdir -p /service/resque_worker && echo '#!/bin/sh' > /service/resque_worker/run && echo 'cd /usr/local/app/diaspora && RAILS_ENV=production QUEUE=* exec /usr/local/bin/bundle exec /usr/local/bin/rake resque:work' >> /service/resque_worker/run"
    end
    execute "executable" do
      command "chmod -R 755 /service/resque_worker"
    end