rake_git_crypt 0.1.0.pre.22 → 0.1.0.pre.24

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '074859dfdddfa3ad275cce11978fa65d40b6f52b2fe9a8df8881f553b94fd470'
4
- data.tar.gz: a2d710bd98c76460502e6c1ce0c3b0c8af062bd82c7778695c35ee1c2dec7e94
3
+ metadata.gz: 52e05d9302fcacef1461071ac96bd12ddc4640c05bef5587f566a87e06f6549a
4
+ data.tar.gz: 6c0634b824a60a36c10144f2320ee8560bd5754d3f2be83a42b41e31ed89395d
5
5
  SHA512:
6
- metadata.gz: de3fdb597649ec0e5035f2acb49074b6d896d75042f026ee4481c248d486a5250af299a3f3706eb592977394b4ae778b1547282aee28ce7666dd60969051bd54
7
- data.tar.gz: 03012e31d93410c37e2d5fe74ac9dd1ae5a531c9c0bfea45c266fe0ab0809154025fa000a40b6c0376ac478919a9b2d8a471adbc9e5790a8954e9a6b49c2ddd8
6
+ metadata.gz: cc1fc1ccf4d65ead20d582d95de8ee286ce55d745ff461ca56d49f9bc834587dca05730b1bcdaf8dfa19507450af3ad420bdcb48e4e3b59509de7dc1a2c3cd42
7
+ data.tar.gz: fd7ab816c384a76282037abd39e4197acd1e0890d628d788042be2f979d2f3d2628e0168496599ffa2751a8b627eba2d3e0136674b08904b8d5ee656f1f3f44a
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rake_git_crypt (0.1.0.pre.22)
4
+ rake_git_crypt (0.1.0.pre.24)
5
5
  colored2 (~> 3.1)
6
6
  rake_factory (= 0.32.0.pre.2)
7
7
  ruby_git_crypt (= 0.1.0.pre.2)
@@ -0,0 +1,169 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rake_factory'
4
+
5
+ module RakeGitCrypt
6
+ module TaskSets
7
+ # rubocop:disable Metrics/ClassLength
8
+ class Standard < RakeFactory::TaskSet
9
+ prepend RakeFactory::Namespaceable
10
+
11
+ parameter :key_name
12
+
13
+ parameter :gpg_home_directory
14
+ parameter :gpg_work_directory, default: '/tmp'
15
+
16
+ parameter :gpg_user_ids, default: []
17
+ parameter :gpg_user_key_paths, default: []
18
+
19
+ parameter :allow_git_crypt_commit, default: false
20
+ parameter :allow_untrusted_keys, default: false
21
+
22
+ parameter :lock_when_unclean, default: false
23
+ parameter :lock_all_keys, default: false
24
+
25
+ parameter :unlock_key_paths
26
+
27
+ parameter :install_commit_message_template,
28
+ default: 'Installing git-crypt.'
29
+ parameter :install_commit_task_name
30
+
31
+ parameter :uninstall_commit_message_template,
32
+ default: 'Uninstalling git-crypt.'
33
+ parameter :uninstall_commit_task_name
34
+
35
+ parameter :add_users_commit_message_template,
36
+ default: 'Adding users to git-crypt.'
37
+ parameter :add_users_commit_task_name
38
+
39
+ parameter :add_user_by_id_commit_message_template,
40
+ default: 'Adding git-crypt GPG user with <%= @type %>: ' \
41
+ "'<%= @value %>'."
42
+ parameter :add_user_by_id_commit_task_name
43
+
44
+ parameter :add_user_by_key_path_commit_message_template,
45
+ default: 'Adding git-crypt GPG user with <%= @type %>: ' \
46
+ "'<%= @value %>'."
47
+ parameter :add_user_by_key_path_commit_task_name
48
+
49
+ parameter :provision_secrets_task_name
50
+ parameter :destroy_secrets_task_name
51
+
52
+ parameter :init_task_name, default: :init
53
+ parameter :lock_task_name, default: :lock
54
+ parameter :unlock_task_name, default: :unlock
55
+ parameter :install_task_name, default: :install
56
+ parameter :uninstall_task_name, default: :uninstall
57
+ parameter :reinstall_task_name, default: :reinstall
58
+ parameter :add_users_task_name, default: :add_users
59
+ parameter :add_user_by_id_task_name,
60
+ default: :add_user_by_id
61
+ parameter :add_user_by_key_path_task_name,
62
+ default: :add_user_by_key_path
63
+
64
+ task(Tasks::Init,
65
+ {
66
+ name: RakeFactory::DynamicValue.new do |ts|
67
+ ts.init_task_name
68
+ end
69
+ })
70
+ task(Tasks::Lock,
71
+ {
72
+ name: RakeFactory::DynamicValue.new do |ts|
73
+ ts.lock_task_name
74
+ end,
75
+ force: RakeFactory::DynamicValue.new do |ts|
76
+ ts.lock_when_unclean
77
+ end,
78
+ all: RakeFactory::DynamicValue.new do |ts|
79
+ ts.lock_all_keys
80
+ end
81
+ })
82
+ task(Tasks::Unlock,
83
+ {
84
+ name: RakeFactory::DynamicValue.new do |ts|
85
+ ts.unlock_task_name
86
+ end,
87
+ key_paths: RakeFactory::DynamicValue.new do |ts|
88
+ ts.unlock_key_paths
89
+ end
90
+ })
91
+ task(Tasks::Install,
92
+ {
93
+ name: RakeFactory::DynamicValue.new do |ts|
94
+ ts.install_task_name
95
+ end,
96
+ commit_message_template: RakeFactory::DynamicValue.new do |ts|
97
+ ts.install_commit_message_template
98
+ end,
99
+ commit_task_name: RakeFactory::DynamicValue.new do |ts|
100
+ ts.install_commit_task_name
101
+ end
102
+ })
103
+ task(Tasks::Uninstall,
104
+ {
105
+ name: RakeFactory::DynamicValue.new do |ts|
106
+ ts.uninstall_task_name
107
+ end,
108
+ commit_message_template: RakeFactory::DynamicValue.new do |ts|
109
+ ts.uninstall_commit_message_template
110
+ end,
111
+ commit_task_name: RakeFactory::DynamicValue.new do |ts|
112
+ ts.uninstall_commit_task_name
113
+ end
114
+ })
115
+ task(Tasks::Reinstall,
116
+ {
117
+ name: RakeFactory::DynamicValue.new do |ts|
118
+ ts.reinstall_task_name
119
+ end,
120
+ install_task_names: RakeFactory::DynamicValue.new do |ts|
121
+ [ts.install_task_name]
122
+ end
123
+ })
124
+ task(Tasks::AddUsers,
125
+ {
126
+ name: RakeFactory::DynamicValue.new do |ts|
127
+ ts.add_users_task_name
128
+ end,
129
+ commit_message_template: RakeFactory::DynamicValue.new do |ts|
130
+ ts.add_users_commit_message_template
131
+ end,
132
+ commit_task_name: RakeFactory::DynamicValue.new do |ts|
133
+ ts.add_users_commit_task_name
134
+ end
135
+ })
136
+ task(Tasks::AddUser,
137
+ {
138
+ name: RakeFactory::DynamicValue.new do |ts|
139
+ ts.add_user_by_id_task_name
140
+ end,
141
+ commit_message_template: RakeFactory::DynamicValue.new do |ts|
142
+ ts.add_user_by_id_commit_message_template
143
+ end,
144
+ commit_task_name: RakeFactory::DynamicValue.new do |ts|
145
+ ts.add_user_by_id_commit_task_name
146
+ end,
147
+ argument_names: [:gpg_user_id]
148
+ }) do |t, args|
149
+ t.gpg_user_id = args.gpg_user_id
150
+ end
151
+ task(Tasks::AddUser,
152
+ {
153
+ name: RakeFactory::DynamicValue.new do |ts|
154
+ ts.add_user_by_key_path_task_name
155
+ end,
156
+ commit_message_template: RakeFactory::DynamicValue.new do |ts|
157
+ ts.add_user_by_key_path_commit_message_template
158
+ end,
159
+ commit_task_name: RakeFactory::DynamicValue.new do |ts|
160
+ ts.add_user_by_key_path_commit_task_name
161
+ end,
162
+ argument_names: [:gpg_user_key_path]
163
+ }) do |t, args|
164
+ t.gpg_user_key_path = args.gpg_user_key_path
165
+ end
166
+ end
167
+ # rubocop:enable Metrics/ClassLength
168
+ end
169
+ end
@@ -1 +1,8 @@
1
1
  # frozen_string_literal: true
2
+
3
+ require_relative 'task_sets/standard'
4
+
5
+ module RakeGitCrypt
6
+ module TaskSets
7
+ end
8
+ end
@@ -18,11 +18,13 @@ module RakeGitCrypt
18
18
 
19
19
  parameter(:init_task_name, default: :init)
20
20
  parameter(:add_users_task_name, default: :add_users)
21
+ parameter(:provision_secrets_task_name)
21
22
  parameter(:commit_task_name)
22
23
 
23
24
  action do |task, args|
24
25
  puts('Installing git-crypt...')
25
26
  init_git_crypt(task, args)
27
+ maybe_provision_secrets(task, args)
26
28
  add_users_to_git_crypt(task, args)
27
29
  maybe_commit(task, args)
28
30
  end
@@ -37,6 +39,14 @@ module RakeGitCrypt
37
39
  invoke_and_reenable_task_with_name(task, add_users_task_name, args)
38
40
  end
39
41
 
42
+ def maybe_provision_secrets(task, args)
43
+ return unless provision_secrets_task_name
44
+
45
+ invoke_and_reenable_task_with_name(
46
+ task, provision_secrets_task_name, args
47
+ )
48
+ end
49
+
40
50
  def maybe_commit(task, args)
41
51
  return unless commit_task_name
42
52
 
@@ -17,7 +17,7 @@ module RakeGitCrypt
17
17
  default: 'Uninstalling git-crypt.')
18
18
 
19
19
  parameter(:lock_task_name, default: :lock)
20
- parameter(:delete_secrets_task_name)
20
+ parameter(:destroy_secrets_task_name)
21
21
  parameter(:commit_task_name)
22
22
 
23
23
  action do |task, args|
@@ -40,9 +40,10 @@ module RakeGitCrypt
40
40
  end
41
41
 
42
42
  def maybe_delete_secrets(task, args)
43
- return unless delete_secrets_task_name
43
+ return unless destroy_secrets_task_name
44
44
 
45
- invoke_and_reenable_task_with_name(task, delete_secrets_task_name, args)
45
+ invoke_and_reenable_task_with_name(task, destroy_secrets_task_name,
46
+ args)
46
47
  end
47
48
 
48
49
  def maybe_commit(task, args)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RakeGitCrypt
4
- VERSION = '0.1.0.pre.22'
4
+ VERSION = '0.1.0.pre.24'
5
5
  end
@@ -5,7 +5,7 @@ require 'rake_git_crypt/task_sets'
5
5
  require 'rake_git_crypt/version'
6
6
 
7
7
  module RakeGitCrypt
8
- def self.define_init_task(opts = {}, &block)
9
- RakeGitCrypt::Tasks::Init.define(opts, &block)
8
+ def self.define_standard_tasks(opts = {}, &block)
9
+ RakeGitCrypt::TaskSets::Standard.define(opts, &block)
10
10
  end
11
11
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake_git_crypt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre.22
4
+ version: 0.1.0.pre.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - InfraBlocks Maintainers
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-02-02 00:00:00.000000000 Z
11
+ date: 2023-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colored2
@@ -85,6 +85,7 @@ files:
85
85
  - lib/rake_git_crypt/home.rb
86
86
  - lib/rake_git_crypt/mixins/support.rb
87
87
  - lib/rake_git_crypt/task_sets.rb
88
+ - lib/rake_git_crypt/task_sets/standard.rb
88
89
  - lib/rake_git_crypt/tasks.rb
89
90
  - lib/rake_git_crypt/tasks/add_user.rb
90
91
  - lib/rake_git_crypt/tasks/add_users.rb