Sha256: 151bd96a966b3e0e5030aa802b0c2c91eb9afa96a50adf1eeeb35d3287f62e3b

Contents?: true

Size: 887 Bytes

Versions: 3

Compression:

Stored size: 887 Bytes

Contents

# frozen_string_literal: true

module Dpl
  module Providers
    class Cloud66 < Provider
      register :cloud66

      status :alpha

      description sq(<<-STR)
        tbd
      STR

      gem 'logger', '1.6.0'

      env :cloud66

      opt '--redeployment_hook URL', 'The redeployment hook URL', required: true, secret: true

      msgs failed: 'Redeployment failed (%s)'

      def deploy
        response = client.request(request)
        error :failed, response.code if response.code != '200'
      end

      private

      def client
        Net::HTTP.new(uri.host, uri.port).tap do |client|
          client.use_ssl = use_ssl?
        end
      end

      def request
        Net::HTTP::Post.new(uri.path)
      end

      def uri
        @uri ||= URI.parse(redeployment_hook)
      end

      def use_ssl?
        uri.scheme.downcase == 'https'
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
dpl-2.0.5.2 lib/dpl/providers/cloud66.rb
dpl-2.0.5.2.beta.1 lib/dpl/providers/cloud66.rb
dpl-2.0.5.1 lib/dpl/providers/cloud66.rb