openeuropa/composer-artifacts

Composer 插件,允许下载指定的工件而不是默认的包。

安装量: 124,436

依赖关系: 5

建议者: 0

安全: 0

星标: 10

关注者: 19

分支: 3

开放问题: 8

类型:composer-plugin

1.0.0-alpha1 2022-02-22 14:47 UTC

README

Build Status Packagist

Composer 插件,允许下载指定的工件而不是默认的 dist URL,这允许下载所有工件依赖。

注意:Composer Artifacts 2.x 版本仅适用于 Composer 2.x,并且仅支持 ZIP 工件。

目录

安装

推荐通过 Composer 安装插件。

composer require openeuropa/composer-artifacts

使用方法

编辑 composer.json 文件并在 extra 部分添加以下内容

{
    "extra": {
        "artifacts": {
            "foo/bar": {
              "dist": {
                "url": "https://github.com/{name}/releases/download/{version}/{project-name}-{version}.zip",
                "type": "zip"
              }
            }
        }
    }
}

这将从以下位置获取 dist 内容

https://github.com/foo/bar/releases/download/0.1.0/bar-0.1.0.zip"

有效的 type 值是 tarzip,而可用的 URL 替换令牌包括

  • {name}: 不带版本信息的完整包名,例如 foo/bar
  • {vendor-name}: 仅供应商名称,例如 foo
  • {project-name}: 仅项目名称,例如 bar
  • {pretty-version}: 此包的整洁(即非规范化)版本字符串,例如 0.1.0
  • {version}: 此包的完整版本,例如 0.1.0.0
  • {stability}: 此包的稳定性,例如 devalphabetaRCstable
  • {type}: 包类型,例如 library
  • {checksum}: 此版本分发存档的 SHA1 校验和

开发环境搭建

使用 Docker Compose

或者,您可以使用提供的配置使用 DockerDocker Compose 构建开发环境。

Docker 提供了运行测试所需的所有服务和工具,无论您的本地主机配置如何。

要求

配置

默认情况下,Docker Compose 读取两个文件,一个是 docker-compose.yml,另一个是可选的 docker-compose.override.yml 文件。按照惯例,docker-compose.yml 包含您的基本配置,并默认提供。重写文件,正如其名称所暗示的,可以包含现有服务或完全新服务的配置重写。如果服务在两个文件中都有定义,Docker Compose 将合并配置。

有关 Docker Compose 扩展机制的更多信息,请参阅官方 Docker Compose 文档

使用方法

要开始,请运行

docker-compose up

建议不要将 docker-compose 守护进程化,这样您可以在完成工作后快速将其关闭(CTRL+C)。但是,如果您想将其守护进程化,必须添加标志 -d

docker-compose up -d

然后

docker-compose exec web composer install

运行测试

要运行 grumphp 检查

docker-compose exec web ./vendor/bin/grumphp run

要运行 phpunit 测试

docker-compose exec web ./vendor/bin/phpunit

步骤调试

要从命令行启用步骤调试,请将任何值传递给容器的 XDEBUG_SESSION 环境变量

docker-compose exec -e XDEBUG_SESSION=1 web <your command>

请注意,从XDebug 3版本开始,如果变量已设置但客户端未监听调试连接,控制台将输出连接错误消息。此错误消息会导致PHPUnit测试出现假阴性结果。

要从浏览器开始逐步调试,请使用浏览器扩展或书签工具设置正确的Cookie,例如在https://www.jetbrains.com/phpstorm/marklets/生成的工具。

贡献

有关我们的行为准则和向我们提交pull请求的流程的详细信息,请参阅完整文档

版本控制

我们使用SemVer进行版本控制。有关可用版本,请参阅此存储库上的标签