gitlab_add_approval_rules_bot 0.1.0 → 0.1.1

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
  SHA256:
3
- metadata.gz: 81962cc2d72ae66fb21336cf41280e885d3d9cf67b4d1d9fdb387a67b7e460f2
4
- data.tar.gz: '09b3915ebf67302fa75af58446d56b8db10b4d3273713c18be62aee5becd329c'
3
+ metadata.gz: e29a349d91f7472eebfd51a9d7b36f62edb7e6bcdf1f9d4cc62d1b701f46bf4e
4
+ data.tar.gz: d6b20e8fe864eb8b7367c32cb2d3b8f0ce489dda2f6f58697fb0793c0c32f92c
5
5
  SHA512:
6
- metadata.gz: 6eb8d9058fba110b90f28bac0b21c64ddf38611d0a14029ce5cd71f17952f2c9b19e8e419ab02592d25fdf73eb8c925927f848a974bd5e88740a65935309b6b1
7
- data.tar.gz: ac1c16d0f8fd78f96973697e66bcf59cfebb796d9bd0a3dafe2a212a64a140201ae0ae554678c1e6f1eed44e1a5b5640f6821a693bab8b69edc5f8381d2ecc42
6
+ metadata.gz: 8bc52aa9a06aafa01007beb10447ff3e41cfb22ac3b6516a1a518b3d7e9bb7ef0a4fd2c3aeef06bda968e2f2c6732199c6b62451321c8e0ae4585d7f5bbfa094
7
+ data.tar.gz: 55bb2298aa3651eabd21467cf7cc7ea9316814e0335a72c17910987f7b51eba3e412f4b69ad6b4df99a203037e99e39bf179cc7ffaf5f40436f14e3fcf3722e1
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GitlabAddApprovalRulesBot
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
@@ -20,49 +20,55 @@ module GitlabAddApprovalRulesBot
20
20
  default_task :help
21
21
 
22
22
  desc "apply", "apply"
23
- def apply(config_filename=nil, dry_run=true)
23
+ option :dry_run, aliases: "-d", type: :boolean, desc: "dry run mode", default: false
24
+ def apply(config_filename=nil)
24
25
  config_filename = "config.yml" if config_filename.nil?
25
26
  config = YAML.load_file(config_filename)
26
27
  project_id = ENV['PROJECT_ID'] or ENV['CI_PROJECT_ID']
27
28
  merge_request_iid = ENV['MERGE_REQUEST_IID'] or ENV['CI_MERGE_REQUEST_IID']
28
29
 
29
30
  config['rules'].each do |rule|
30
- options = {
31
+ rule_options = {
31
32
  name: rule['name'],
32
33
  approvals_required: rule['approvals_required'],
33
34
  user_ids: [],
34
35
  group_ids: [],
35
36
  }
36
37
  if rule.has_key? 'approval_project_rule_id'
37
- options[:approval_project_rule_id] = rule['approval_project_rule_id']
38
+ rule_options[:approval_project_rule_id] = rule['approval_project_rule_id']
38
39
  end
39
40
  if rule.has_key? 'user_ids'
40
- options[:user_ids] = rule['user_ids']
41
+ rule_options[:user_ids] = rule['user_ids']
41
42
  end
42
43
  if rule.has_key? 'group_ids'
43
- options[:group_ids] = rule['group_ids']
44
+ rule_options[:group_ids] = rule['group_ids']
44
45
  end
45
46
  if rule.has_key? 'usernames'
46
47
  rule['usernames'].each do |username|
47
- user = Gitlab.users(options: {username: username})&.first
48
+ user = Gitlab.user_search(username)&.first
48
49
  pp user
49
- options[:user_ids] << user['id'] unless user.nil?
50
+ if not user.nil? and user['username'] == username
51
+ rule_options[:user_ids] << user['id'] unless user.nil?
52
+ end
50
53
  end
51
54
  end
52
55
  if rule.has_key? 'groupnames'
53
56
  rule['groupnames'].each do |groupname|
54
- group = Gitlab.groups(options: {groupname: groupname})&.first
57
+ group = Gitlab.group_search(groupname)&.first
55
58
  pp group
56
- options[:group_ids] << group['id'] unless group.nil?
59
+ if not group.nil? and group['groupname'] == groupname
60
+ rule_options[:group_ids] << group['id'] unless group.nil?
61
+ end
62
+
57
63
  end
58
64
  end
59
65
  puts "project_id: #{project_id}"
60
66
  puts "merge_request_iid: #{merge_request_iid}"
61
- puts "options: #{options}"
62
- if dry_run
67
+ puts "options: #{rule_options}"
68
+ if options[:dry_run]
63
69
  puts "THIS IS DRY RUN MODE!!"
64
70
  else
65
- Gitlab.create_merge_request_level_rule(project_id, merge_request_iid, options)
71
+ # Gitlab.create_merge_request_level_rule(project_id, merge_request_iid, rule_options)
66
72
  end
67
73
  end
68
74
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab_add_approval_rules_bot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shoma FUKUDA