Class: Roger::Release::Scm::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/roger/release/scm.rb

Overview

Abstract SCM base class

Direct Known Subclasses

Fixed, Git

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config = {}) ⇒ Base

Returns a new instance of Base.



8
9
10
# File 'lib/roger/release/scm.rb', line 8

def initialize(config = {})
  @config = config
end

Instance Attribute Details

#configObject (readonly)

Returns the value of attribute config.



6
7
8
# File 'lib/roger/release/scm.rb', line 6

def config
  @config
end

Instance Method Details

#dateObject

Returns the release version date from the SCM



20
21
22
# File 'lib/roger/release/scm.rb', line 20

def date
  raise "Implement in subclass"
end

#previousObject

Returns a Release::Scm object with the previous version’s data

Returns:

  • Roger::Release::Scm The previous version



27
28
29
# File 'lib/roger/release/scm.rb', line 27

def previous
  raise "Implement in subclass"
end

#versionObject

Returns the release version string from the SCM

Returns:

  • String The current version string



15
16
17
# File 'lib/roger/release/scm.rb', line 15

def version
  raise "Implement in subclass"
end