Sha256: 3308905990956cf8188227039344bf89a96a37c247a370f8054467bf6337c59c

Contents?: true

Size: 1.38 KB

Versions: 110

Compression:

Stored size: 1.38 KB

Contents

require_relative 'task_helper'

namespace :dad do
  namespace :fluentd do

    desc "Fluentdをインストールします。"
    task :install do
      if Daddy.config.fluentd.nginx?
        nginx = File.join(Rails.root, 'tmp', 'fluentd', "#{app_name}_nginx.conf")
        FileUtils.mkdir_p(File.dirname(nginx))
        File.write(nginx, ERB.new(File.read(File.join(File.dirname(__FILE__), 'fluentd_nginx.conf.erb'))).result)
      else
        FileUtils.rm_f(nginx)
      end

      script = <<-EOF
#!/bin/bash

sudo rpm --import http://packages.treasure-data.com/redhat/RPM-GPG-KEY-td-agent
sudo cp -f #{File.join(File.dirname(__FILE__), 'fluentd.repo')} /etc/yum.repos.d/
sudo yum install td-agent
sudo gem install fluent-plugin-mongo

sudo cp -f #{File.join(File.dirname(__FILE__), 'fluentd.conf')} /etc/td-agent/td-agent.conf
sudo mkdir -p /etc/td-agent/conf.d

if [ -e #{nginx} ]; then
  sudo cp -f #{nginx} /etc/td-agent/conf.d
  sudo usermod -aG adm td-agent
fi

sudo /sbin/chkconfig td-agent on
if [ -e /var/run/td-agent/td-agent.pid ]; then
  sudo /etc/init.d/td-agent restart
else
  sudo /etc/init.d/td-agent start
fi
EOF
      tmpfile = File.join(Rails.root, 'tmp', 'dad-fluentd-install-' + Daddy::Utils::StringUtils.current_time + '.sh')
      File.write(tmpfile, ERB.new(script).result)
      
      unless ENV['DRY_RUN']
        fail unless system("bash #{tmpfile}")
      end
    end
  end
end

Version data entries

110 entries across 110 versions & 1 rubygems

Version Path
daddy-0.9.19 lib/tasks/fluentd.rake
daddy-0.9.18 lib/tasks/fluentd.rake
daddy-0.9.17 lib/tasks/fluentd.rake
daddy-0.9.16 lib/tasks/fluentd.rake
daddy-0.9.15 lib/tasks/fluentd.rake
daddy-0.9.14 lib/tasks/fluentd.rake
daddy-0.9.13 lib/tasks/fluentd.rake
daddy-0.9.12 lib/tasks/fluentd.rake
daddy-0.9.11 lib/tasks/fluentd.rake
daddy-0.9.10 lib/tasks/fluentd.rake
daddy-0.9.9 lib/tasks/fluentd.rake
daddy-0.9.8 lib/tasks/fluentd.rake
daddy-0.9.7 lib/tasks/fluentd.rake
daddy-0.9.6 lib/tasks/fluentd.rake
daddy-0.9.5 lib/tasks/fluentd.rake
daddy-0.9.4 lib/tasks/fluentd.rake
daddy-0.9.3 lib/tasks/fluentd.rake
daddy-0.9.2 lib/tasks/fluentd.rake
daddy-0.9.1 lib/tasks/fluentd.rake
daddy-0.9.0 lib/tasks/fluentd.rake