Class: GitLabBuildOutput::Application

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab_build_output/application.rb

Overview

rubocop:disable Metrics/ClassLength

Defined Under Namespace

Classes: Args

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(raw_args) ⇒ Application

Returns a new instance of Application.



12
13
14
15
# File 'lib/gitlab_build_output/application.rb', line 12

def initialize(raw_args)
  @raw_args = raw_args
  @args = Args.new
end

Instance Attribute Details

#argsObject (readonly)

Returns the value of attribute args.



5
6
7
# File 'lib/gitlab_build_output/application.rb', line 5

def args
  @args
end

#option_parserObject (readonly)

Returns the value of attribute option_parser.



6
7
8
# File 'lib/gitlab_build_output/application.rb', line 6

def option_parser
  @option_parser
end

#raw_argsObject (readonly)

Returns the value of attribute raw_args.



4
5
6
# File 'lib/gitlab_build_output/application.rb', line 4

def raw_args
  @raw_args
end

Class Method Details

.startObject



17
18
19
# File 'lib/gitlab_build_output/application.rb', line 17

def self.start
  new(ARGV).run
end

Instance Method Details

#runObject



21
22
23
24
25
26
27
28
29
# File 'lib/gitlab_build_output/application.rb', line 21

def run
  parse_verbose_argument(raw_args, args)
  handle_errors do
    @option_parser = parse_arguments(raw_args, args)
    exit = handle_arguments(args)
    return if exit
    runner.run
  end
end