Sha256: 13fbe1f3e145cfa60deb5fe71f69018d057e9bb67ab0b918a30dd27c420df5e6

Contents?: true

Size: 647 Bytes

Versions: 3

Compression:

Stored size: 647 Bytes

Contents

module Octopolo
  class SemverTagScrubber

    def self.scrub_prefix(tag)
      scrub_via_regexp(tag, /\A[a-z]*/i)
    end

    def self.scrub_suffix(tag)
      scrub_via_regexp(tag, /[a-z]*\z/i)
    end

    private

    def self.scrub_via_regexp(tag, regexp)
      begin
        result = tag.match(regexp)[0]
        tag.gsub!(regexp, '')
        result
      rescue Exception => e
        if e.message.include?("match' for nil:NilClass")
          puts 'You are creating the first GitHub release for this repository.'
        else
          puts "Error finding existing GitHub release(s): #{e.message}"
        end
      end
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
octopolo-1.12.0 lib/octopolo/semver_tag_scrubber.rb
octopolo-1.11.4 lib/octopolo/semver_tag_scrubber.rb
octopolo-1.11.3 lib/octopolo/semver_tag_scrubber.rb