Sha256: a52436e802f1f56475de8edf11e9fe1582805b9f106736aebcdd49c50ab22b53

Contents?: true

Size: 636 Bytes

Versions: 4

Compression:

Stored size: 636 Bytes

Contents

#!/usr/bin/env ruby

require 'net/https'
require 'uri'
require 'json'

gem_name = ARGV[0]
github_repository = ARGV[1]

def get_json(url)
  uri = URI.parse(url)
  response = Net::HTTP.get_response(uri)
  versions = JSON.parse(response.body)
end

versions = get_json("https://rubygems.org/api/v1/versions/#{gem_name}.json")
last_released_version = versions.reject { |g| g['prerelease'] }.map { |g| g['number'] }.sort_by(&Gem::Version.method(:new)).last

tag = get_json("https://api.github.com/repos/#{github_repository}/git/refs/tags/v#{last_released_version}")

print tag['object']['sha'] if tag && tag['object'] && tag['object']['sha']

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
shipit-engine-0.39.0 lib/snippets/fetch-gem-version
shipit-engine-0.38.0 lib/snippets/fetch-gem-version
shipit-engine-0.37.0 lib/snippets/fetch-gem-version
shipit-engine-0.36.1 lib/snippets/fetch-gem-version