You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitHub Actions中PHPUnit执行失败,如何获取mailparse私钥?

问题

我使用GitHub Actions为每个创建的拉取请求(PR)运行PHP CS Fixer和PHPUnit,配置的YML文件如下:

name: PHPUnit Tests

on: [push]

jobs:
  build-test:
    name: PHPUnit Tests
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2

      - uses: php-actions/composer@v5
        with:
          php_extensions: mailparse pdo_mysql
          dev: no
          args: --profile --ignore-platform-reqs

      - name: PHPUnit Tests
        uses: php-actions/phpunit@v3
        with:
          php_version: 8.1

执行时出现如下错误:

994393dc58e7: Layer already exists
1e74372f6dff: Pushed
php-latest-mailparse-pdo_mysql-build2: digest: sha256:17078db8c8e36a72ce937d8b5f98eb0c0b814b91a2c20e14788039763b722300 size: 2831
Docker tag: docker.pkg.github.com/synega/connect/php-actions_composer_connect:php-latest-mailparse-pdo_mysql-build2
No private keys supplied
Command: composer install --no-dev --no-progress --no-interaction --profile --ignore-platform-reqs
Error: Process completed with exit code 1.

请问我该如何/从哪里获取mailparse的私钥?

解决方法

这个错误和mailparse的私钥无关,问题出在php-actions/composer动作构建自定义PHP镜像时,尝试推送镜像到GitHub Packages但缺少权限。以下是两种可行的解决方式:

  • 方式一:跳过自定义镜像构建,手动安装扩展
    去掉php_extensions参数,添加单独的步骤安装mailparse和pdo_mysql扩展,修改后的Workflow片段如下:

    - uses: actions/checkout@v2
    
    - name: 安装PHP扩展
      run: |
        sudo apt-get update
        sudo apt-get install -y php8.1-mailparse php8.1-mysql
        sudo docker-php-ext-enable mailparse pdo_mysql
    
    - uses: php-actions/composer@v5
      with:
        dev: no
        args: --profile --ignore-platform-reqs
    
  • 方式二:提供GitHub Packages推送权限
    如果需要保留自定义镜像构建,给composer步骤传入GitHub Actions自带的权限令牌即可,修改后的composer步骤如下:

    - uses: php-actions/composer@v5
      with:
        php_extensions: mailparse pdo_mysql
        dev: no
        args: --profile --ignore-platform-reqs
      secrets: inherit
    

    该配置会自动传入GITHUB_TOKEN,赋予动作推送镜像到GitHub Packages的权限。

内容的提问来源于stack exchange,提问作者William Francis Gomes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 23:45:41