Sha256: 8b14c941f1c626c166a79a1ba816f98a8b0b5d0944fcbecc77696702dde536b8

Contents?: true

Size: 1.34 KB

Versions: 4

Compression:

Stored size: 1.34 KB

Contents

require 'daddy/itamae'
require_relative 'task_helper'

task :dad do
  `rake -aT`.split("\n").each do |line|
    if /rake dad(:.*)?/ =~ line
      puts line
    end
  end
end

rails_dependencies = %w[ environment ]
unless defined?(Rails)
  rails_dependencies.each do |t|
    task t.to_sym do; end
  end
end

namespace :dad do
  namespace :setup do

    Dir.glob('config/itamae/roles/*.rb').map{|path| File.basename(path, '.rb') }.each do |role|
      desc "ロール #{role} のセットアップを行います。"
      task role => :environment do
        role_file = "config/itamae/roles/#{role}.rb"
        log_level = ENV['DEBUG'] ? 'debug' : 'info'
        env = "ROLE=#{role}"

         if ENV['DOCKER']
          tag = "#{Daddy.config.application}-#{role}"
          if system("docker images | grep #{tag}")
            fail unless system("#{env} bundle exec itamae docker --ohai --image #{tag} --tag #{tag} --log-level=#{log_level} #{role_file}")
          else
            fail unless system("#{env} bundle exec itamae docker --ohai --image daddy-base --tag #{tag} --log-level=#{log_level} #{role_file}")
          end
        else
          fail unless system("#{env} bundle exec itamae local --ohai --log-level=#{log_level} #{role_file}")
        end
      end
    end

  end

  task setup: :environment do
     Rake::Task['dad:setup:default'].invoke
  end
  
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
daddy-0.9.1 lib/tasks/dad.rake
daddy-0.9.0 lib/tasks/dad.rake
daddy-0.8.1 lib/tasks/dad.rake
daddy-0.8.0 lib/tasks/dad.rake