Sha256: b1dfee1744358cc1b247e1db576098674b76afae663c83b0323648cf83f3ee8c

Contents?: true

Size: 1.07 KB

Versions: 1

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true

module GoNative
  module Commands
    module Android
      class  Publish < Base
        desc 'Used to update one of the android internal dependencies'
        
        def call
          assert_build_file_exists!
          create_and_push_tag!
        end
        
        def assert_build_file_exists!
          return if gradle_file

          raise Error, "No build.gradle file exists"
        end
        
        private
        
        def gradle_file
          @gradle_file ||= Dir.entries(".").select { |s| s == "build.gradle" }.first
        end

        def version
          str = IO.read(gradle_file)
          str.match(/versionName\s+\"(?<version>.+)\"/)

          str.match(/versionName\s+\"(?<version>.+)\"/)[:version]
        end

        def create_and_push_tag!
          unless system("git tag | grep #{version} > /dev/null")
            system "git add -A && git commit -m \"Releases #{version}.\""
            system "git tag #{version}"
            system "git push && git push --tags"
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gonative-cli-1.0.1 lib/gonative/commands/android/publish.rb