Sha256: 32fa53ea9a0336b5dc49a55c0320758b64b6baeec09a1e96221f286e1192d943

Contents?: true

Size: 1.17 KB

Versions: 19

Compression:

Stored size: 1.17 KB

Contents

module DPL
  class Provider
    class CloudFoundry < Provider

      def initial_go_tools_install
        context.shell 'test $TRAVIS_OS_NAME = "linux" && rel="linux64-binary" || rel="macosx64"; wget "https://cli.run.pivotal.io/stable?release=${rel}&source=github" -qO cf.tgz && tar -zxvf cf.tgz && rm cf.tgz'
      end

      def check_auth
        initial_go_tools_install
        context.shell "./cf api #{option(:api)} #{'--skip-ssl-validation' if options[:skip_ssl_validation]}"
        context.shell "./cf login -u #{option(:username)} -p #{option(:password)} -o #{option(:organization)} -s #{option(:space)}"
      end

      def check_app
        if options[:manifest]
          error 'Application must have a manifest.yml for unattended deployment' unless File.exists? options[:manifest]
        end
      end

      def needs_key?
        false
      end

      def push_app
        error 'Failed to push app' unless context.shell("./cf push#{manifest}")

      ensure
        context.shell "./cf logout"
      end

      def cleanup
      end

      def uncleanup
      end

      def manifest
        options[:manifest].nil? ? "" : " -f #{options[:manifest]}"
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
dpl-1.8.43.travis.2286.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.43 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.43.travis.2283.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.43.travis.2280.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.43.travis.2258.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.42.travis.2257.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.42 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.42.travis.2248.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.41.travis.2247.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.41 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.41.travis.2207.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.41.travis.2205.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.41.travis.2199.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.40 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.40.travis.2196.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.40.travis.2195.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.40.travis.2194.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.40.travis.2191.5 lib/dpl/provider/cloud_foundry.rb
dpl-1.8.40.travis.2174.5 lib/dpl/provider/cloud_foundry.rb