class Versi::GenerateCommand::Interactors::ExtractReleaseTypeFromCommitMessage
Constants
- MERGE_COMMIT_REGEXES
Public Instance Methods
call()
click to toggle source
# File lib/versi/generate_command/interactors/extract_release_type_from_commit_message.rb, line 15 def call source_branch = extract_source_branch return if !source_branch context.release_type = extract_release_type_from_merge_source_branch(source_branch) end
Private Instance Methods
extract_release_type_from_merge_source_branch(source_branch)
click to toggle source
# File lib/versi/generate_command/interactors/extract_release_type_from_commit_message.rb, line 38 def extract_release_type_from_merge_source_branch(source_branch) if source_branch.start_with?("hotfix/") if source_branch =~ /feature/i Versi::Util::SemanticReleaseTypes::MINOR else Versi::Util::SemanticReleaseTypes::PATCH end elsif source_branch.start_with?("release/") Versi::Util::SemanticReleaseTypes::MINOR elsif source_branch.start_with?("major-release/") Versi::Util::SemanticReleaseTypes::MAJOR end end
extract_source_branch()
click to toggle source
# File lib/versi/generate_command/interactors/extract_release_type_from_commit_message.rb, line 28 def extract_source_branch MERGE_COMMIT_REGEXES.each do |regex| match_data = context.commit_message.match(regex) return match_data[1] if match_data && match_data[1] end # The nil here is to ensure that the nil value will be returned if # the commit_message doesn't match any regex nil end
setup()
click to toggle source
# File lib/versi/generate_command/interactors/extract_release_type_from_commit_message.rb, line 24 def setup raise(ArgumentError, "Missing commit_message argument") if !context.commit_message end