def _compile(self, install): print 'Installing PHP' ctx = install.builder._ctx validate_php_version(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) if ctx['PHP_VERSION'].startswith('5.4'): print('DEPRECATION WARNING: PHP 5.4 is being declared "End of Life" as of 2015-09-14') print('DEPRECATION WARNING: See https://secure.php.net/supported-versions.php for more details') print('DEPRECATION WARNING: Upgrade guide can be found at https://secure.php.net/manual/en/migration55.php') print('DEPRECATION WARNING: The php-buildpack will no longer support PHP 5.4 after this date') (install .package('PHP') .done()) validate_php_extensions(ctx) convert_php_extensions(ctx) (install .config() .from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/{PHP_VERSION}') .to('php/etc') .rewrite() .done()) return 0
def compile(install): print 'Installing PHP' ctx = install.builder._ctx validate_php_version(ctx) validate_php_extensions(ctx) convert_php_extensions(ctx) build_php_environment(ctx) (install .package('PHP') .config() .from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/{PHP_VERSION}') .to('php/etc') .rewrite() .done() .modules('PHP') .find_modules_with_regex('^extension=(.*).so$') .from_application('php/etc/php.ini') .find_modules_with_regex('^zend_extension=(.*).so$') .from_application('php/etc/php.ini') .find_modules_with_regex('^zend_extension="(?:.*/)?(.*).so"$') .from_application('php/etc/php.ini') .include_modules_from('PHP_MODULES') .include_module(is_web_app(ctx) and 'fpm' or 'cli') .done()) return 0
def _compile(self, install): ctx = install.builder._ctx (json_file, lock_file) = find_composer_paths(ctx) if (os.path.isfile(os.path.join(ctx['BUILD_DIR'],'.bp-config', 'options.json')) and json_file and os.path.isfile(json_file)): print('WARNING: A version of PHP has been specified in both `composer.json` and `./bp-config/options.json`.'); print('WARNING: The version defined in `composer.json` will be used.'); print 'Installing PHP' validate_php_version(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) major_minor = '.'.join(string.split(ctx['PHP_VERSION'], '.')[0:2]) (install .package('PHP') .done()) validate_php_extensions(ctx) convert_php_extensions(ctx) (install .config() .from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/%s.x' % major_minor) .to('php/etc') .rewrite() .done()) return 0
def _compile(self, install): ctx = install.builder._ctx (composer_json_file, composer_lock_file) = find_composer_paths(ctx) options_json_file = os.path.join(ctx['BUILD_DIR'],'.bp-config', 'options.json') if (os.path.isfile(options_json_file) and composer_json_file and os.path.isfile(composer_json_file)): # options.json and composer.json both exist. Check to see if both define a PHP version. composer_json = json.load(open(composer_json_file,'r')) options_json = json.load(open(options_json_file,'r')) if composer_json.get('require', {}).get('php') and options_json.get("PHP_VERSION"): print('WARNING: A version of PHP has been specified in both `composer.json` and `./bp-config/options.json`.') print('WARNING: The version defined in `composer.json` will be used.') print 'Installing PHP' validate_php_version(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) major_minor = '.'.join(string.split(ctx['PHP_VERSION'], '.')[0:2]) (install .package('PHP') .done()) validate_php_extensions(ctx) convert_php_extensions(ctx) (install .config() .from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/%s.x' % major_minor) .to('php/etc') .rewrite() .done()) return 0
def _compile(self, install): ctx = install.builder._ctx (json_file, lock_file) = find_composer_paths(ctx) if (os.path.isfile( os.path.join(ctx['BUILD_DIR'], '.bp-config', 'options.json')) and json_file and os.path.isfile(json_file)): print( 'WARNING: A version of PHP has been specified in both `composer.json` and `./bp-config/options.json`.' ) print( 'WARNING: The version defined in `composer.json` will be used.' ) print 'Installing PHP' validate_php_version(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) major_minor = '.'.join(string.split(ctx['PHP_VERSION'], '.')[0:2]) (install.package('PHP').done()) validate_php_extensions(ctx) convert_php_extensions(ctx) (install.config().from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/%s.x' % major_minor).to('php/etc').rewrite().done()) return 0
def compile(install): print 'Installing PHP' ctx = install.builder._ctx validate_php_version(ctx) validate_php_extensions(ctx) convert_php_extensions(ctx) build_php_environment(ctx) (install .package('PHP') .config() .from_application('.bp-config/php') .or_from_build_pack('defaults/config/php/{PHP_VERSION}') .to('php/etc') .rewrite() .done() .modules('PHP') .find_modules_with_regex('^extension=(.*).so$') .from_application('php/etc/php.ini') .find_modules_with_regex('^zend_extension=(.*).so$') .from_application('php/etc/php.ini') .find_modules_with_regex('^zend_extension="(?:.*/)?(.*).so"$') .from_application('php/etc/php.ini') .include_modules_from('PHP_MODULES') .include_module(is_web_app(ctx) and 'fpm' or 'cli') .done()) return 0
def compile(install): print "Installing PHP" ctx = install.builder._ctx convert_php_extensions(ctx) build_php_environment(ctx) ( install.package("PHP") .config() .from_application(".bp-config/php") .or_from_build_pack("defaults/config/php/{PHP_VERSION}") .to("php/etc") .rewrite() .done() .modules("PHP") .find_modules_with_regex("^extension=(.*).so$") .from_application("php/etc/php.ini") .find_modules_with_regex("^zend_extension=(.*).so$") .from_application("php/etc/php.ini") .find_modules_with_regex('^zend_extension="(?:.*/)?(.*).so"$') .from_application("php/etc/php.ini") .include_modules_from("PHP_MODULES") .include_module(is_web_app(ctx) and "fpm" or "cli") .done() ) return 0
def test_convert_php_extensions_one(self): ctx = {'PHP_EXTENSIONS': ['mod1'], 'ZEND_EXTENSIONS': ['zmod1']} convert_php_extensions(ctx) eq_('extension=mod1.so', ctx['PHP_EXTENSIONS']) eq_( 'zend_extension="@{HOME}/php/lib/php/extensions/' 'no-debug-non-zts-20100525/zmod1.so"', ctx['ZEND_EXTENSIONS'])
def test_convert_php_extensions_54_one(self): ctx = {"PHP_VERSION": "5.4.x", "PHP_EXTENSIONS": ["mod1"], "ZEND_EXTENSIONS": ["zmod1"]} convert_php_extensions(ctx) eq_("extension=mod1.so", ctx["PHP_EXTENSIONS"]) eq_( 'zend_extension="@HOME/php/lib/php/extensions/' 'no-debug-non-zts-20100525/zmod1.so"', ctx["ZEND_EXTENSIONS"], )
def test_convert_php_extensions_none(self): ctx = { 'PHP_EXTENSIONS': [], 'ZEND_EXTENSIONS': [] } convert_php_extensions(ctx) eq_('', ctx['PHP_EXTENSIONS']) eq_('', ctx['ZEND_EXTENSIONS'])
def test_convert_php_extensions_55_one(self): ctx = { 'PHP_VERSION': '5.5.x', 'PHP_EXTENSIONS': ['mod1'], 'ZEND_EXTENSIONS': ['zmod1'] } convert_php_extensions(ctx) eq_('zend_extension="zmod1.so"', ctx['ZEND_EXTENSIONS'])
def test_convert_php_extensions_55(self): ctx = { "PHP_VERSION": "5.5.x", "PHP_EXTENSIONS": ["mod1", "mod2", "mod3"], "ZEND_EXTENSIONS": ["zmod1", "zmod2"], } convert_php_extensions(ctx) eq_("extension=mod1.so\nextension=mod2.so\nextension=mod3.so", ctx["PHP_EXTENSIONS"]) eq_('zend_extension="zmod1.so"\nzend_extension="zmod2.so"', ctx["ZEND_EXTENSIONS"])
def test_convert_php_extensions_one(self): ctx = { 'PHP_EXTENSIONS': ['mod1'], 'ZEND_EXTENSIONS': ['zmod1'] } convert_php_extensions(ctx) eq_('extension=mod1.so', ctx['PHP_EXTENSIONS']) eq_('zend_extension="@{HOME}/php/lib/php/extensions/' 'no-debug-non-zts-20100525/zmod1.so"', ctx['ZEND_EXTENSIONS'])
def test_convert_php_extensions_55(self): ctx = { 'PHP_VERSION': '5.5.x', 'PHP_EXTENSIONS': ['mod1', 'mod2', 'mod3'], 'ZEND_EXTENSIONS': ['zmod1', 'zmod2'] } convert_php_extensions(ctx) eq_('extension=mod1.so\nextension=mod2.so\nextension=mod3.so', ctx['PHP_EXTENSIONS']) eq_('zend_extension="zmod1.so"\nzend_extension="zmod2.so"', ctx['ZEND_EXTENSIONS'])
def _compile(self, install): print 'Installing PHP' ctx = install.builder._ctx validate_php_version(ctx) convert_php_extensions(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) (install.package('PHP').config().from_application( '.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/{PHP_VERSION}').to( 'php/etc').rewrite().done()) return 0
def test_convert_php_extensions(self): ctx = { 'PHP_EXTENSIONS': ['mod1', 'mod2', 'mod3'], 'ZEND_EXTENSIONS': ['zmod1', 'zmod2'] } convert_php_extensions(ctx) eq_('extension=mod1.so\nextension=mod2.so\nextension=mod3.so', ctx['PHP_EXTENSIONS']) eq_('zend_extension="@HOME/php/lib/php/extensions/' 'no-debug-non-zts-20100525/zmod1.so"\n' 'zend_extension="@HOME/php/lib/php/extensions/' 'no-debug-non-zts-20100525/zmod2.so"', ctx['ZEND_EXTENSIONS'])
def _compile(self, install): print 'Installing PHP' ctx = install.builder._ctx validate_php_version(ctx) convert_php_extensions(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) (install .package('PHP') .config() .from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/{PHP_VERSION}') .to('php/etc') .rewrite() .done()) return 0
def _compile(self, install): print 'Installing PHP' ctx = install.builder._ctx validate_php_version(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) major_minor = '.'.join(string.split(ctx['PHP_VERSION'], '.')[0:2]) (install.package('PHP').done()) validate_php_extensions(ctx) convert_php_extensions(ctx) (install.config().from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/%s.x' % major_minor).to('php/etc').rewrite().done()) return 0
def _compile(self, install): ctx = install.builder._ctx (composer_json_file, composer_lock_file) = find_composer_paths(ctx) options_json_file = os.path.join(ctx['BUILD_DIR'],'.bp-config', 'options.json') if (os.path.isfile(options_json_file) and composer_json_file and os.path.isfile(composer_json_file)): # options.json and composer.json both exist. Check to see if both define a PHP version. composer_json = json.load(open(composer_json_file,'r')) options_json = json.load(open(options_json_file,'r')) if composer_json.get('require', {}).get('php') and options_json.get("PHP_VERSION"): print('WARNING: A version of PHP has been specified in both `composer.json` and `./bp-config/options.json`.') print('WARNING: The version defined in `composer.json` will be used.') if ctx.get('OPTIONS_JSON_HAS_PHP_EXTENSIONS', False): print("Warning: PHP_EXTENSIONS in options.json is deprecated. See: http://docs.cloudfoundry.org/buildpacks/php/gsg-php-config.html") print 'Installing PHP' validate_php_version(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) major_minor = '.'.join(string.split(ctx['PHP_VERSION'], '.')[0:2]) (install .package('PHP') .done()) validate_php_ini_extensions(ctx) validate_php_extensions(ctx) convert_php_extensions(ctx) include_fpm_d_confs(ctx) (install .config() .from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/%s.x' % major_minor) .to('php/etc') .rewrite() .done()) return 0
def _compile(self, install): print 'Installing PHP' ctx = install.builder._ctx validate_php_version(ctx) print 'PHP %s' % (ctx['PHP_VERSION']) major_minor = '.'.join(string.split(ctx['PHP_VERSION'], '.')[0:2]) (install .package('PHP') .done()) validate_php_extensions(ctx) convert_php_extensions(ctx) (install .config() .from_application('.bp-config/php') # noqa .or_from_build_pack('defaults/config/php/%s.x' % major_minor) .to('php/etc') .rewrite() .done()) return 0
def compile(install): print 'Installing PHP' convert_php_extensions(install.builder._ctx) build_php_environment(install.builder._ctx) (install .package('PHP') .config() .from_application('.bp-config/php') .or_from_build_pack('defaults/config/php/{PHP_VERSION}') .to('php/etc') .rewrite() .done() .modules('PHP') .find_modules_with_regex('^extension=(.*).so$') .from_application('php/etc/php.ini') .find_modules_with_regex('^zend_extension=(.*).so$') .from_application('php/etc/php.ini') .find_modules_with_regex('^zend_extension=".*/(.*).so"$') .from_application('php/etc/php.ini') .include_module('fpm') .done()) return 0
def test_convert_php_extensions_55_none(self): ctx = {"PHP_VERSION": "5.5.x", "PHP_EXTENSIONS": [], "ZEND_EXTENSIONS": []} convert_php_extensions(ctx) eq_("", ctx["PHP_EXTENSIONS"]) eq_("", ctx["ZEND_EXTENSIONS"])
def test_convert_php_extensions_55_one(self): ctx = {"PHP_VERSION": "5.5.x", "PHP_EXTENSIONS": ["mod1"], "ZEND_EXTENSIONS": ["zmod1"]} convert_php_extensions(ctx) eq_("extension=mod1.so", ctx["PHP_EXTENSIONS"]) eq_('zend_extension="zmod1.so"', ctx["ZEND_EXTENSIONS"])