Sha256: 6f9bd2038fa7a16925333bd5d0be235b58b492a22496c0e525bd8460baa34feb
Contents?: true
Size: 1.59 KB
Versions: 2
Compression:
Stored size: 1.59 KB
Contents
module EY module Serverside module DependencyManager class Composer < Base def detected? composer_lock? || composer_json? end def check unless composer_available? raise EY::Serverside::RemoteFailure.new("composer.#{lock_or_json} detected but composer not available!") end if composer_json? && !composer_lock? shell.warning <<-WARN composer.json found but composer.lock missing! This may result in different versions of packages being installed than what you tested with. To fix this problem, commit your composer.lock to the repository and redeploy. WARN end end def install shell.status "Checking for composer updates..." composer_selfupdate shell.status "Installing composer packages (composer.#{lock_or_json} detected)" composer_install end def lock_or_json composer_lock? ? 'lock' : 'json' end def composer_lock? paths.composer_lock.exist? end def composer_json? paths.composer_json.exist? end def composer_install run "composer install --no-interaction --working-dir #{paths.active_release}" end def composer_selfupdate run "composer self-update" end def composer_available? begin run "command -v composer > /dev/null" return true rescue EY::Serverside::RemoteFailure return false end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
engineyard-serverside-2.2.0.pre2 | lib/engineyard-serverside/dependency_manager/composer.rb |
engineyard-serverside-2.2.0.pre | lib/engineyard-serverside/dependency_manager/composer.rb |