Class: Gitlab::Dangerfiles::Engine
- Inherits:
-
Object
- Object
- Gitlab::Dangerfiles::Engine
- Defined in:
- lib/gitlab/dangerfiles.rb
Overview
This class provides utility methods to import plugins and dangerfiles easily.
Instance Method Summary collapse
-
#config ⇒ Object
Proxy method to
helper_plugin.config
. -
#import_dangerfiles(only: nil, except: []) ⇒ Object
Import available Dangerfiles.
-
#import_defaults ⇒ Object
Imports all default plugins and rules.
-
#import_plugins ⇒ Object
Import all available plugins.
- #initialize(dangerfile) ⇒ Gitlab::Dangerfiles::Engine constructor
Constructor Details
#initialize(dangerfile) ⇒ Gitlab::Dangerfiles::Engine
44 45 46 47 48 49 |
# File 'lib/gitlab/dangerfiles.rb', line 44 def initialize(dangerfile) @dangerfile = dangerfile # Import internal plugins eagerly, since other functionality in this class may depend on them. danger_plugin.import_plugin(File.("../danger/plugins/internal/*.rb", __dir__)) end |
Instance Method Details
#config ⇒ Object
Proxy method to helper_plugin.config
.
99 100 101 |
# File 'lib/gitlab/dangerfiles.rb', line 99 def config helper_plugin.config end |
#import_dangerfiles(only: nil, except: []) ⇒ Object
Import available Dangerfiles.
87 88 89 90 91 92 93 94 95 96 |
# File 'lib/gitlab/dangerfiles.rb', line 87 def import_dangerfiles(only: nil, except: []) return if helper_plugin.release_automation? rules = filtered_rules(only, except) rules.each do |rule, path| puts "Importing rule #{rule} at #{path}" if helper_plugin.ci? danger_plugin.import_dangerfile(path: path) end end |
#import_defaults ⇒ Object
Imports all default plugins and rules.
110 111 112 113 |
# File 'lib/gitlab/dangerfiles.rb', line 110 def import_defaults import_plugins import_dangerfiles end |
#import_plugins ⇒ Object
Import all available plugins.
58 59 60 61 62 63 64 65 |
# File 'lib/gitlab/dangerfiles.rb', line 58 def import_plugins danger_plugin.import_plugin(File.("../danger/plugins/*.rb", __dir__)) Dir.glob(File.("danger/plugins/*.rb", config.project_root)).sort.each do |path| puts "Importing plugin at #{path}" if helper_plugin.ci? danger_plugin.import_plugin(path) end end |