Sha256: 181b8424a4372e2b2f7d262e655601e1fa58c073fb52a9d2e3e571e3bcc20be4

Contents?: true

Size: 1.14 KB

Versions: 7

Compression:

Stored size: 1.14 KB

Contents

module Dpl
  module Providers
    class Heroku
      class Git < Heroku
        register :'heroku:git'

        status :alpha

        full_name 'Heroku Git'

        description sq(<<-str)
          tbd
        str

        required :api_key, [:username, :password]

        opt '--api_key KEY',   'Heroku API key', secret: true
        opt '--username USER', 'Heroku username', alias: :user
        opt '--password PASS', 'Heroku password', secret: true
        opt '--git URL', 'Heroku Git remote URL'

        needs :git, :git_http_user_agent

        cmds fetch: 'git fetch origin $TRAVIS_BRANCH --unshallow',
             push:  'git push %{remote} HEAD:refs/heads/master -f'

        def prepare
          write_netrc if write_netrc?
        end

        def deploy
          shell :fetch, assert: false
          shell :push
        end

        private

          def remote
            git || "https://git.heroku.com/#{app}.git"
          end

          def write_netrc?
            remote.start_with?('https://')
          end

          def write_netrc
            super('git.heroku.com', email, api_key || password)
          end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
dpl-2.0.3.beta.4 lib/dpl/providers/heroku/git.rb
dpl-2.0.3.beta.3 lib/dpl/providers/heroku/git.rb
dpl-2.0.3.beta.2 lib/dpl/providers/heroku/git.rb
dpl-2.0.3.beta.1 lib/dpl/providers/heroku/git.rb
dpl-2.0.2.beta.1 lib/dpl/providers/heroku/git.rb
dpl-2.0.0.beta.3 lib/dpl/providers/heroku/git.rb
dpl-2.0.0.beta.2 lib/dpl/providers/heroku/git.rb