如何在Cloudbees上安装PHP扩展?

时间:2015-09-28 15:22:34

标签: cloudbees

我需要在Cloudbees上为PHP安装mbstring(以及其他一些扩展)。这可能吗?

请注意,我正在使用此处所述的更新的PHP版本: https://developer.cloudbees.com/bin/view/DEV/PHP+Builds

我认为脚本没有sudo访问权限,所以我不能简单地使用包管理器。我不认为这些扩展存在于PEAR包中。所以我很难过。

1 个答案:

答案 0 :(得分:0)

以下是Cloudbees支持的回复。似乎工作正常,只要确保你的Jenkins构建路径中没有任何空格!

我们提供的PHP版本没有激活mbstring模块。您需要构建自己的PHP版本才能获得它。为了确保您的自定义PHP构建在Cloudbees slave上运行,您可以在您的实例上使用Jenkins作业构建它(使用各种--with-XXX或--without-XXX选项)。

我们自己正在用像

这样的脚本做这样的事情
# Download
regex='.*(RC|alpha|beta).*'
if [[ $version =~ $regex ]]; then
    wget http://downloads.php.net/dsp/php-${version}.tar.bz2
else
    wget http://us3.php.net/distributions/php-${version}.tar.bz2
fi

# Unpack
tar xjf php-${version}.tar.bz2

# Build
cd php-${version}
./configure --prefix=/home/jenkins/tools/php/${php_name} \
    --with-curl --with-openssl
make && make install

作为辅助节点,您还应该注意使用--prefix指定良好的安装前缀。我会选择像/home/jenkins/tools/php/5.4 /.

这样的东西

要存储已编译的php引擎,您可以生成目标安装目录的tar.gz // bz2文件。然后,将其存储在您的WebDAV目录中,该目录可在构建期间在/ private / {account} /中访问,然后安装CloudBees DEV @ cloud Private WebDav Repository"检查。

您应该向需要PHP提取此存档的作业添加第一步。由于Jenkins工作区通常缓存在DEV @ Cloud上,因此只有在存档不存在的情况下才能提取存档。这将加快你的构建。