gpt4 book ai didi

php - 如何将 Composer 的 PHP 扩展添加到 Azure DevOps Pipeline

转载 作者:行者123 更新时间:2023-12-03 03:54:04 25 4
gpt4 key购买 nike

我尝试通过 Azure DevOps 部署 PHP (CakePHP) 应用程序,并使用 Windows 托管代理在管道的构建步骤中安装 Composer 依赖项。

Composer 安装失败,因为常见 PHP 扩展(即 intl 和 fileinfo)对于构建中运行的 PHP 可执行文件不可用。部署后,Azure 上的 Web 应用程序确实具有这些扩展。 composer Web 应用扩展安装在 Azure 上的实际应用服务上,并且存储库根目录中有一个 composer.phar 文件。

我尝试运行的步骤只是phpcomposer.phar install --no-scripts --no-interaction --optimize-autoloader

管道因此错误而失败,但我不知道如何访问 .ini 文件或提供任何选项。

To enable extensions, verify that they are enabled in your .ini files:
- C:\tools\php\php.ini

可以设置 PHP_INI_SCAN_DIR,但是当新部署发生时,DevOps 中的这个“php 模板”会清除所有添加的配置属性。这似乎也是与应用服务实际运行的 PHP 完全不同的 PHP。我可以为配置选项创建一个新模板,但 PHP 扩展问题似乎仍然存在于构建步骤中。

如果有人知道如何简单地让 Composer 安装依赖项并将它们包含在创建的构建工件(.zip 文件)中,我将不胜感激。谢谢!

最佳答案

正如 Levi Lu-MSFT 在评论中的回答,我能够通过使用命令行任务添加新的构建任务并输入以下内容来修改 PHP 配置:

echo extension=intl >> C:\tools\php\php.ini
echo extension=fileinfo >> C:\tools\php\php.ini

添加引号会导致问题,但不添加引号似乎也能工作。

关于php - 如何将 Composer 的 PHP 扩展添加到 Azure DevOps Pipeline,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65327452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com