Class: Dude::Gitlab

Inherits:
Object
  • Object
show all
Includes:
Settings
Defined in:
lib/dude/gitlab.rb

Constant Summary

Constants included from Settings

Settings::CONFIG_FILE

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Settings

#file, #read, #settings

Constructor Details

#initialize(options = {}) ⇒ Gitlab

Returns a new instance of Gitlab.



9
10
11
12
13
14
15
# File 'lib/dude/gitlab.rb', line 9

def initialize(options = {})
  @options = options
  ::Gitlab.configure do |config|
    config.endpoint       = settings['GITLAB_ENDPOINT']
    config.private_token  = settings['GITLAB_TOKEN']
  end
end

Instance Attribute Details

#optionsObject

Returns the value of attribute options.



7
8
9
# File 'lib/dude/gitlab.rb', line 7

def options
  @options
end

Instance Method Details

#callObject



17
18
19
20
21
22
23
# File 'lib/dude/gitlab.rb', line 17

def call
  ::Gitlab.issue(project_id, options[:issue_id]).title
rescue StandardError
  puts "Issue ##{options[:issue_id]} not found " \
    "in project #{options[:project_title]}\n" \
    "Please, check the entered issue_id and project"
end

#my_issuesObject



25
26
27
# File 'lib/dude/gitlab.rb', line 25

def my_issues
  ::Gitlab.issues(project_id).select.map {|a| [a.iid, a.title, a.labels]}
end