#!/usr/bin/env ruby require 'octokit' require_relative 'lib/s3_website/version' version = S3Website::VERSION unless ENV['S3_WEBSITE_RELEASE_KEY'] puts "Set the S3_WEBSITE_RELEASE_KEY environmental variable. It should be your personal GitHub access token." exit 1 end def run(cmd) unless system(cmd) exit 1 end end puts "Building s3_website.jar..." jar_location = 'target/scala-2.11/s3_website.jar' run "./sbt clean" run "./sbt assembly" # The bin s3_website uses the MD5 checksum to verify that the jar is not corrupted jar_md5 = Digest::MD5.file(jar_location).hexdigest File.write('resources/s3_website.jar.md5', jar_md5) tag_name = "v#{version}" run "git tag #{tag_name} && git push origin #{tag_name}" run "git push" run "rake build" client = Octokit::Client.new(:login => 'laurilehmijoki', :password => ENV['S3_WEBSITE_RELEASE_KEY']) release = client.create_release( 'laurilehmijoki/s3_website', tag_name, :body => "See https://github.com/laurilehmijoki/s3_website/blob/master/changelog.md##{version.gsub('.', '')}" ) puts "Uploading s3_website.jar..." client.upload_asset(release[:url], jar_location) run "gem push pkg/s3_website-#{version}.gem"