DOCKER_IMAGE_UBUNTU = 'omnibus-ridgepole-ubuntu'
DOCKER_IMAGE_CENTOS = 'omnibus-ridgepole-chentos'

namespace :docker do
  namespace :image do
    task build: ['build:ubuntu', 'build:centos']

    namespace :build do
      task :ubuntu do
        sh 'docker', 'build', '-t', DOCKER_IMAGE_UBUNTU, '-f', 'Dockerfile.ubuntu', '.'
      end

      task :centos do
        sh 'docker', 'build', '-t', DOCKER_IMAGE_CENTOS, '-f', 'Dockerfile.centos', '.'
      end
    end
  end

  namespace :omnibus do
    task :build do
      sh 'omnibus', 'build', 'ridgepole'
    end
  end
end

namespace :omnibus do
  task build: ['docker:image:build', 'build:ubuntu', 'build:centos']

  namespace :build do
    task :ubuntu do
      sh 'docker', 'run', '-v', "#{pwd}:/omnibus-ridgepole", DOCKER_IMAGE_UBUNTU, 'bundle', 'exec', 'rake docker:omnibus:build'
    end

    task :centos do
      sh 'docker', 'run', '-v', "#{pwd}:/omnibus-ridgepole", DOCKER_IMAGE_CENTOS, 'bundle', 'exec', 'rake docker:omnibus:build'
    end
  end
end
