Sha256: d0a87f99277b891af14a34ffc15bc9459a2527db1ea6b84c1dc4fc28cdeaa2ee
Contents?: true
Size: 1.36 KB
Versions: 2
Compression:
Stored size: 1.36 KB
Contents
require 'r10k/cli/module' require 'r10k/deployment' require 'cri' require 'fileutils' module R10K::CLI::Module module Deploy def self.command @cmd ||= Cri::Command.define do name 'deploy' usage 'deploy [module name] <module name> ...' summary 'Deploy a module' flag :u, :update, "Update module cache" run do |opts, args, cmd| unless (module_name = args[0]) puts cmd.help exit 1 end env_list = R10K::Deployment.instance.environments if opts[:environment] environments = env_list.select {|env| env.name == opts[:environment]} else environments = env_list end environments.each do |env| mods = env.modules.select { |mod| mod.name == module_name } if mods.empty? puts "No modules with name #{module_name} matched in environments #{env.map(&:name).inspect}".red exit 1 end stack = Middleware::Builder.new mods.each { |mod| stack.use R10K::Action::Module::Deploy, mod } stack_env = { :update_cache => opts[:update], :trace => opts[:trace], } stack.call(stack_env) end end end end end self.command.add_command(Deploy.command) end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
r10k-0.0.2 | lib/r10k/cli/module/deploy.rb |
r10k-0.0.1 | lib/r10k/cli/module/deploy.rb |