Class: Sycersion::VersionSetter

Inherits:
Object
  • Object
show all
Defined in:
lib/sycersion/version_setter.rb

Overview

Sets the version

Instance Method Summary collapse

Constructor Details

#initializeVersionSetter

Returns a new instance of VersionSetter.



6
7
8
# File 'lib/sycersion/version_setter.rb', line 6

def initialize
  @environment = Sycersion::VersionEnvironment.new
end

Instance Method Details

#build=(build) ⇒ Object

Sets the build part only. The build parameter is of the form

“build”, “build”


25
26
27
# File 'lib/sycersion/version_setter.rb', line 25

def build=(build)
  create_version(4, build[0])
end

#create_version(position, value) ⇒ Object

Helper method for build= and pre_release=



30
31
32
33
34
35
36
# File 'lib/sycersion/version_setter.rb', line 30

def create_version(position, value)
  version = @environment.version
  semver_array = version.scan(Sycersion::SEMVER_REGEX).flatten
  semver_array[position] = value
  @environment.version = Sycersion::Semver.version(semver_array)
  @environment.save
end

#pre_release=(pre_release) ⇒ Object

Sets the pre-release part only. The pre-release parameter is of the form

“pre-release”, “pre-release”


19
20
21
# File 'lib/sycersion/version_setter.rb', line 19

def pre_release=(pre_release)
  create_version(3, pre_release[0])
end

#version=(version) ⇒ Object

Sets the version provided by the version array. The version array is in the form [“version”, “major”, “minor”, “patch”, “pre-release”, “build”]



12
13
14
15
# File 'lib/sycersion/version_setter.rb', line 12

def version=(version)
  @environment.version = version[0]
  @environment.save
end