inprovise 0.2.22 → 0.2.23

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MDVhYzQ0OWYwZWZlNTIwYzlmYzc5NGNiZTAwZjA1Zjk5MmM0Njg5ZA==
4
+ ZDkwZjJmNjc5NzlhYjRiOTg1ODhhODI3YzI1YWNmZDViY2MxY2ExNA==
5
5
  data.tar.gz: !binary |-
6
- NTdiYWIxODU0YjE0MTViYjY5MGI0MjZkNmIxZjFiNmYwODJjOWZiOA==
6
+ M2Q4ZGI3OWJiMjU4ZmUyYzU2MTNhYzhkMGVlZTdjZmNlYjU0ODVhMw==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MDMzMzYxZTU4ZjhkOWI4YzFhYmQzMzNmY2ExMDBlMjY1ZTYwMjQ4NDY3Mjcw
10
- MjdmYWM2MzYxYjk4ZGU4ZGE3YjI0ZmZjNzllNDNiMWQwZTQ3NGExYjRmNGU3
11
- ZWNhZmZmNzdhNzc4Njc2NDE5MmVjNGQxZDM5NDg4NDIyYzkzYTg=
9
+ MTQ4NzQ5MDhmYzU2MThlODMxZmE1MDQ3YjZjMjgwZDcxYjI4MzM2N2U2YWU3
10
+ MTJhMTkxNTNhZmNlNzYwODUyNmVkOTk0M2JiZWE3ZmE1MDY2Y2M1NzhiMmFi
11
+ NWIxOWI3OWEwNGUzZGI0MmY5NDQ3NGVhZTBkZjQxMWRjYWVkZjU=
12
12
  data.tar.gz: !binary |-
13
- MTAxYWU0YmEwZGFiYWNjNTMzZTlmZDQyZjM2OGI1M2EwMDA0Mjg4MjAyMzBk
14
- NzMxYTgxZGUwNDE0NjQ4Y2ExYzgxY2FlZTI3MzExMTViNjk4NjFiMGE0ZGY5
15
- MTQyODVhMjk3ZGY1YmY5OGU2MGNiZjMyZTdiNjdjYTRmNDI0ZjY=
13
+ NGQzMTczYjdmMDUxYjE2MDEyNThiYzcwOWY2NDMxOWE1Nzc2YjRiMzlmYjFl
14
+ MGRjNDhmOTU1NTNhYWFlY2YxY2FjNTQzMDU3NzkzYzdmYjM1YTM5MTM5MDJi
15
+ NjZlMjFkYTAxYWM3ZWUxMzJiYTJlYzhiMWE0ZTEyNzEwYTU5ZjM=
@@ -5,10 +5,11 @@
5
5
 
6
6
  class Inprovise::Cli
7
7
 
8
- def self.setup_provisioning_cmd(cmd, &block)
8
+ def self.setup_provisioning_cmd(cmd, with_force=true, &block)
9
9
  cmd.desc 'Path to a provisioning scheme to load'
10
10
  cmd.flag [:s,:scheme], :arg_name => 'FILE', :multiple => true, :default_value => Inprovise.default_scheme
11
11
  cmd.flag [:c, :config], :arg_name => 'CFGKEY=CFGVAL', :multiple => true, :desc => 'Specify a configuration setting for the script execution'
12
+ cmd.switch [:f, :force], negatable: false, :desc => 'Force command to run without verifying validity.' if with_force
12
13
  cmd.action(&block)
13
14
  end
14
15
 
@@ -40,7 +41,7 @@ class Inprovise::Cli
40
41
  arg_name 'SCRIPT NAME[ NAME[...]]'
41
42
  command :validate do |cvalid|
42
43
 
43
- Inprovise::Cli.setup_provisioning_cmd(cvalid) do |_global, options, args|
44
+ Inprovise::Cli.setup_provisioning_cmd(cvalid, false) do |_global, options, args|
44
45
  raise ArgumentError, 'Missing arguments!' if args.empty?
45
46
  raise ArgumentError, 'Missing targets!' if args.size < 2
46
47
  Inprovise::Controller.run(:validate, options, *args)
@@ -52,7 +53,7 @@ class Inprovise::Cli
52
53
  arg_name 'ACTION NAME[ NAME[...]]'
53
54
  command :trigger do |ctrigger|
54
55
 
55
- Inprovise::Cli.setup_provisioning_cmd(ctrigger) do |_global, options, args|
56
+ Inprovise::Cli.setup_provisioning_cmd(ctrigger, false) do |_global, options, args|
56
57
  raise ArgumentError, 'Missing arguments!' if args.empty?
57
58
  raise ArgumentError, 'Missing targets!' if args.size < 2
58
59
  Inprovise::Controller.run(:trigger, options, *args)
@@ -99,6 +99,7 @@ class Inprovise::Controller
99
99
  load_schemes(options)
100
100
  # extract config
101
101
  cfg = parse_config(options[:config])
102
+ cfg[:run_always] = true if options[:force]
102
103
  # get script/action
103
104
  sca = args.shift
104
105
  run_provisioning_command(command, sca, cfg, *args)
@@ -80,6 +80,7 @@ class Inprovise::ScriptRunner
80
80
  return false unless script.provides_command?(command_name)
81
81
  return true unless @perform
82
82
  return true unless command_name == :apply || command_name == :revert
83
+ return true if context.config[:run_always]
83
84
  return true unless script.provides_command?(:validate)
84
85
  is_present = is_valid?(script, context)
85
86
  return !is_present if command_name == :apply
@@ -5,6 +5,6 @@
5
5
 
6
6
  module Inprovise
7
7
 
8
- VERSION = '0.2.22'
8
+ VERSION = '0.2.23'
9
9
 
10
10
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inprovise
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.22
4
+ version: 0.2.23
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Corino
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-03 00:00:00.000000000 Z
11
+ date: 2016-10-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colored