Sha256: 94b75bd0353a5a8988cf9ce6002ce052bad8329abea50f22aaa28f8e0aacb752
Contents?: true
Size: 944 Bytes
Versions: 5
Compression:
Stored size: 944 Bytes
Contents
namespace :cogy do desc "Invoke the Cog Trigger that will install the Cogy-generated bundle" task :notify_cog do require "net/http" require "timeout" require "json" trigger_url = fetch(:cogy_release_trigger_url) cogy_endpoint = fetch(:cogy_endpoint) begin raise ":cogy_release_trigger_url must be set" if trigger_url.nil? raise ":cogy_endpoint must be set" if cogy_endpoint.nil? Timeout.timeout(fetch(:cogy_trigger_timeout) || 7) do url = URI(trigger_url) res = Net::HTTP.post_form(url, url: cogy_endpoint) if !res.is_a?(Net::HTTPSuccess) error = JSON.parse(res.body)["errors"]["error_message"] if error !~ /version has already been taken/ puts "Error response (#{res.code}) from Cog trigger: #{error}" end end end rescue => e puts "Error invoking Cog trigger: #{e.class} #{e.message}" end end end
Version data entries
5 entries across 5 versions & 1 rubygems