quiverstaskrunner 0.1.254562 → 0.1.254581

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 980268acfa25464daf6109ffc7da2a53ea2da0ee
4
- data.tar.gz: 61b652653a8b6ae0782d8fa572a96a4aa6149b1f
3
+ metadata.gz: 7abcbf8eaf47c9970a05873a95191438286029c7
4
+ data.tar.gz: fe3934cb261565f11a7a15568a26a156e4f58636
5
5
  SHA512:
6
- metadata.gz: 17b034e1680b92f563ccf981472818d8b4409864d77e233a2174766cf9e3f6704a235270b4636253ec3e7aeb00349b043a4b880442c845010c4277cec580e9fa
7
- data.tar.gz: fcfc7277ecb8a2edad3f459ce23b05f459941257029cd4206871013dc76f246fae2454be3b1a684e2ead7bf4111ea7d8fa8ffcfbd6b0dbae7a58220609767b65
6
+ metadata.gz: a25af2ed453d3e00980ba33ba5f872b730779457afe4c6b8746970b42376d39baafabca3ab57af6909948d1159500de09691e3f206a2114f50392ccc6d24e0c3
7
+ data.tar.gz: f74b9291bbb1c35518a87d6850f471f63abb9f71727555816094a4091890032df687aec0e0d4a53ff8d5f29cbf75db63c41f351a5fa9238923d39ca610c203c6
@@ -18,6 +18,13 @@ module QuiversTaskrunner
18
18
  :certs => "secrets/certs.yml",
19
19
  :global => "secrets/global.yml"
20
20
  }
21
+ @@allowed_secret_types = {
22
+ "cloud_services" => :cloud_services,
23
+ "storage" => :storage,
24
+ "certs" => :certs,
25
+ "global" => :global,
26
+ "all" => :all
27
+ }
21
28
 
22
29
  module_function
23
30
 
@@ -31,24 +38,64 @@ module QuiversTaskrunner
31
38
  return update_message_on
32
39
  end
33
40
 
34
- def list_secrets(options={})
35
- env = env || EnvHelper.get_env("env")
36
- white_list = options[:white_list]
37
- if (!white_list.nil?) && (!white_list.empty?)
38
- @@secrets
39
- .reject { |k,v| !white_list.detect { |x| k == x } }
40
- .each do |k,v|
41
- puts "#{k}".colorize(:yellow)
42
- puts
43
- puts CliHelper.pretty_print(SettingsHelper.get_settings(File.join(Dir.pwd, v), env, @@get_settings_options))
44
- end
41
+ def list_secrets()
42
+ if (defined? ARGV) && (!ARGV.detect { |x| x.index("secrets") == 0 })
43
+ puts "usage: rake list secrets=<args> env=<args>".colorize(:yellow)
44
+ puts
45
+ puts "This task lists the secrets key value pairs for a specific environment. The optional parameter 'secrets' allows to filter the results.".colorize(:yellow)
46
+ puts "The 'secrets' option is used as follow:".colorize(:yellow)
47
+ puts " rake list secrets=cloud_services env=test".colorize(:yellow)
48
+ puts "where 'cloud_services' represents all the key value pairs associated with Windows Azure Cloud Services.".colorize(:yellow)
49
+ puts "It is possible to define multiple secrets type by using the '/' separator as follow:".colorize(:yellow)
50
+ puts " rake list secrets=cloud_services/storage env=test".colorize(:yellow)
51
+ puts
52
+ puts "Allowed secret types are:".colorize(:yellow)
53
+ puts " all => List all secret types".colorize(:yellow)
54
+ puts " cloud_services => List secrets about the Windows Azure Cloud Services".colorize(:yellow)
55
+ puts " storage => List secrets about the Windows Azure Storage".colorize(:yellow)
56
+ puts " certs => List all SSL certs currently set up for the consumer pages".colorize(:yellow)
57
+ puts " global => List various common global settings used across all Quivers project".colorize(:yellow)
58
+ puts
59
+ puts "Allowed environments are:".colorize(:yellow)
60
+ puts " test".colorize(:yellow)
61
+ puts " demo".colorize(:yellow)
62
+ puts " prod".colorize(:yellow)
45
63
  else
46
- @@secrets
47
- .each do |k,v|
48
- puts "#{k}".colorize(:yellow)
49
- puts
50
- puts CliHelper.pretty_print(SettingsHelper.get_settings(File.join(Dir.pwd, v), env, @@get_settings_options))
64
+ cli_hash = SettingsHelper.get_cli_settings()
65
+ secrets_list = cli_hash["secrets"]
66
+ white_list =
67
+ if (!secrets_list.nil?) && (!secrets_list.empty?) && (secrets_list != "all")
68
+ white_list = secrets_list
69
+ .split('/')
70
+ .reject { |x| !allowed_secret_types.detect { |k,v| k == x } }
71
+ .map { |x| allowed_secret_types[x] }
72
+ elsif secrets_list == "all"
73
+ [ :all ]
74
+ else
75
+ nil
51
76
  end
77
+
78
+ if (!white_list.nil?)
79
+ env = env || EnvHelper.get_env("env")
80
+ white_list = options[:white_list]
81
+ if (!white_list.nil?) && (!white_list.empty?)
82
+ @@secrets
83
+ .reject { |k,v| !white_list.detect { |x| k == x } }
84
+ .each do |k,v|
85
+ puts "#{k}".colorize(:yellow)
86
+ puts
87
+ puts CliHelper.pretty_print(SettingsHelper.get_settings(File.join(Dir.pwd, v), env, @@get_settings_options))
88
+ end
89
+ else
90
+ @@secrets
91
+ .each do |k,v|
92
+ puts "#{k}".colorize(:yellow)
93
+ puts
94
+ puts CliHelper.pretty_print(SettingsHelper.get_settings(File.join(Dir.pwd, v), env, @@get_settings_options))
95
+ end
96
+ end
97
+ else
98
+ raise StandardError, "None of the provided secrets matches any allowed secret types. Run 'rake list -cs' to get the usage"
52
99
  end
53
100
  end
54
101
 
@@ -1 +1 @@
1
- module QuiversTaskrunner
1
+ module QuiversTaskrunner
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quiverstaskrunner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.254562
4
+ version: 0.1.254581
5
5
  platform: ruby
6
6
  authors:
7
7
  - ndao