我需要在Cloudbees上为PHP安装mbstring(以及其他一些扩展)。这可能吗?
请注意,我正在使用此处所述的更新的PHP版本: https://developer.cloudbees.com/bin/view/DEV/PHP+Builds
我认为脚本没有sudo访问权限,所以我不能简单地使用包管理器。我不认为这些扩展存在于PEAR包中。所以我很难过。
答案 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上,因此只有在存档不存在的情况下才能提取存档。这将加快你的构建。