Sha256: b0aa35ff167d44e10e74f701a082b7bde62ebd2f18cd25a0785522f20bd7d070

Contents?: true

Size: 1.07 KB

Versions: 20

Compression:

Stored size: 1.07 KB

Contents

require 'thor'
require 'json'

require 'zendesk_apps_tools/manifest_handler'

module ZendeskAppsTools
  class Bump < Thor
    include Thor::Actions
    prepend ManifestHandler

    SHARED_OPTIONS = {
      ['commit', '-c'] => false,
      ['message', '-m'] => nil,
      ['tag', '-t'] => false
    }

    desc 'major', 'Bump major version'
    method_options SHARED_OPTIONS
    def major
      semver[:major] += 1
      semver[:minor] = 0
      semver[:patch] = 0
    end

    desc 'minor', 'Bump minor version'
    method_options SHARED_OPTIONS
    def minor
      semver[:minor] += 1
      semver[:patch] = 0
    end

    desc 'patch', 'Bump patch version'
    method_options SHARED_OPTIONS
    def patch
      semver[:patch] += 1
    end

    default_task :patch

    private

    def post_actions
      return tag if options[:tag]
      commit if options[:commit]
    end

    def commit
      `git commit -am #{commit_message}`
    end

    def commit_message
      options[:message] || version(v: true)
    end

    def tag
      commit
      `git tag #{version(v: true)}`
    end
  end
end

Version data entries

20 entries across 20 versions & 2 rubygems

Version Path
zendesk_apps_tools-1.34.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.34.1 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.33.3 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.33.2 lib/zendesk_apps_tools/bump.rb
xat-1.32.2 lib/zendesk_apps_tools/bump.rb
xat-1.32.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.32.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.31.1 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.31.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.30.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.29.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.28.3 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.28.2 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.28.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.27.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.25.0 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.24.3 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.24.2 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.24.1 lib/zendesk_apps_tools/bump.rb
zendesk_apps_tools-1.24.0 lib/zendesk_apps_tools/bump.rb