Требования

Для работы с пакетами Composer требуется PHP и официальная утилита composer.

Проверьте наличие утилиты:

composer -V

В случае, если утилита не установлена, используйте команду:

php composer-setup.php --install-dir=bin --filename=composer

Добавление пакета Composer

Для добавления пакета Composer, необходимо получить транспортный токен Gitflic. С инструкцией по получению токена можно ознакомиться на странице.

В документации ниже встречается атрибут <домен_gitflic> На его место необходимо указать домен, в зависимости от версии:

  • для SaaS версии registry.gitflic.ru

  • для self-hosted localhost:8080

Домен и порт для self-hosted версии может отличаться.

Файл настроек ~/composer.json

Чтобы зарегистрировать composer-реестр пакетов, вам необходимо добавить его в composer.json файл (который обычно должен находиться в корневой директории проекта)

Значение атрибута url зависит от уровня доступа:

Уровень URL
Проект http(s)://<домен_gitflic>/project/{ownerAlias}/{projectAlias}/package/-/composer
Компания http(s)://<домен_gitflic>/company/{companyAlias}/package/-/composer
Инстанс http(s)://<домен_gitflic>/package/-/composer
Переменная в URL Описание
projectAlias Псевдоним проекта
companyAlias Псевдоним компании
ownerAlias Псевдоним владельца проекта

Пример использования для компании:


{
    "repositories": [{
        "type": "composer",
        "url": "https://registry.gitflic.ru/company/<companyAlias>/package/-/composer"
    }]
}

Пример использования для проекта:


{
    "repositories": [{
        "type": "composer",
        "url": "https://registry.gitflic.ru/project/<ownerAlias>/<projectAlias>/package/-/composer"
    }]
}

Конфигурационный файл auth.json

Чтобы получить доступ к реестру пакетов с использованием имени пользователя и транспортного токена, необходимо указать их в auth.json файле следующим образом:

{
  "http-basic": {
    "registry.gitflic.ru": {
      "username": "<username>",
      "password": "<Транспортный токен>"
    }
  }
}

Публикация пакета

После выполнения настройки конфигурационных файлов можно публиковать пакет. Для этого необходимо выполнить PUT-запрос (Для примера указана загрузка на компанию):

curl --location --request PUT 'https://registry.gitflic.ru/company/<companyAlias>/package/-/composer' \
                          --user <username>:<Транспортный токен> \
                          --header 'Content-Type: application/zip' \
                          --upload-file <Путь до файла>

Запрос поддерживает необязательный параметр version, он нужен в том случае если в composer.json не определено поле с версией. Например, https://registry.gitflic.ru/company/<companyAlias>/package/-/composer?version=1.0.0

Установка пакета

Чтобы установить из реестра пакетов, выполните следующую команду:

composer require {packageName}

Также вы можете указать версию пакета:

composer require {packageName}:{packageVersion}

Параметр Описание
packageName Имя пакета.
packageVersion Пакетная версия.