GitLab Composer Repository

GitLab Composer Repository

Introduced in 13.2.

使用 GitLab Composer 信息库,每个项目都可以有自己的空间来存储Composer软件包.

注意:仅当您的 GitLab 管理员此选项才可用.

启用 Composer 信息库后,默认情况下它将可用于所有新项目. 要为现有项目启用它,或者要禁用它:

  1. 导航到项目的“设置”>”常规”>”可见性,项目功能,权限” .
  2. 找到”软件包”功能并启用或禁用它.
  3. 单击保存更改以使更改生效.

然后,您应该能够在左侧栏中看到” 程序包和注册表”部分.

Getting started

本节将介绍如何创建一个新的示例 Composer 软件包进行发布. 这是测试GitLab Composer 注册表的快速入门.

您将需要最新版本的 .

在此目录中创建一个新的composer.json文件以设置基本项目:

  1. touch composer.json

composer.json内部,添加以下代码:

<namespace>替换为唯一的命名空间,例如您的 GitLab 用户名或组名.

在创建了基本的包结构之后,我们需要在 Git 中对其进行标记并将其推送到存储库中.

  1. git init
  2. git add composer.json
  3. git commit -m 'Composer package test'
  4. git tag v1.0.0
  5. git add origin git@gitlab.com:<namespace>/<project-name>.git
  6. git push origin v1.0.0

现在,我们的项目基础已经完成,我们可以发布该软件包了. 为此,您将需要以下内容:

  • 您的项目 ID,可以在项目的主页上找到.

要发布托管在 GitLab 上的软件包,我们需要使用这样的工具对 GitLab 软件包 API 进行POST

Where:

  • <personal-access-token>是您的个人访问令牌.
  • <project_id>是您的项目 ID.
  • <tag>是您要发布的版本的 Git 标记名称. 在此示例中,它应为v1.0.0 . 请注意,除了使用tag=<tag>您还可以使用branch=<branch>来发布分支.

要安装您的软件包,您需要:

  • 个人访问令牌. 您可以生成范围设置为api个人访问令牌 ,以进行存储库身份验证.
  • 您的组 ID,可在项目组的主页上找到.

将 GitLab Composer 软件包存储库以及要安装的软件包名称和版本添加到现有项目的composer.json文件中,如下所示:

  1. { ... "repositories": [ { "type": "composer", "url": "https://gitlab.com/api/v4/group/<group_id>/-/packages/composer/packages.json" } ], "require": { ... "<package_name>": "<version>" }, ... }

Where:

  • <group_id>是在项目的”组”页面下找到的组 ID.
  • 是软件包的composer.json文件中定义的软件包名称.
  • <version>是您的软件包版本(在此示例中为1.0.0 ).

您还需要使用 GitLab 凭据创建一个auth.json文件:

Where:

配置了composer.jsonauth.json文件后,您可以通过运行composer安装软件包:

  1. composer update

如果成功,您应该能够看到指示软件包已成功安装的输出.