namespace :github do
desc "creating new release in github" task create_release: :environment do begin owner = KP::Utils.github[:repo_owner] repo = KP::Utils.github[:repo_name] token = KP::Utils.github[:deploy_token] auth = "-H 'Authorization: token #{token}'" current_branch = `git rev-parse --abbrev-ref HEAD` target = `git branch | grep \* | cut -d ' ' -f2` prerelease = !Rails.env.production? params = { tag_name: "#{target}-#{Time.now.strftime('%F-%H-%M-%S')}", target_commitish: target, name: "#{Rails.env.upcase} DEPLOY: #{Time.now.strftime('%A : %B %e, %Y : %R')}", draft: false, prerelease: prerelease #body: 'Description of the release', # FIX ME: to do: add commits of release diff } system "curl #{auth} https://api.github.com/repos/#{owner}/#{repo}/releases -d '#{params.to_json}'" rescue Exception => e puts "Failure: Could not create release" puts "Error: #{e.inspect}" ensure end end
end