Как пользоваться koji.ngrid.ru

Краткая инструкция

  1. Установить koji.
  2. Сделать директорию ~/.koji, скопировать в нее файлы ngrid.conf, ngrid-client.crt (получите при заведении koji account), ngrid-serverca.crt, ngrid-clientca.crt.
  3. Сделать для удобства алиас alias nkoji='koji -c ~/.koji/ngrid.conf'
  4. Для того, чтобы завести аккаунт на koji, откройте билет в компоненте "инфраструктура проекта".

Как собирать пакеты

При паковке пакетов, которые устанавливают что-либо в иерархии /usr, пожалуйста, следуйте Fedora Packaging Guidelines. Если вы не хотите или не можете выполнить эти гайдлайны, по пакет должен устанавливаться в иерархию /opt. В настоящее время автоматической проверки выполнения этих гайдлайнов нет, поэтому ошибки сборки, которые вы можете получить в процессе, никак не связаны с правильностью паковки.

Рекомендуемая процедура сборки выглядит следующим образом:

  1. Для локальной отладки установить mock, добавить конфигурационный файл ngrid-i386.cfg в /etc/mock
  2. Добиться сборки пакета в mock:
    mock -r ngrid-i386 -v --offline --rebuild my_package.src.rpm
    
  3. Попросить завести для вас пакет в koji. Для этого открыть билет на инфраструктуру.
  4. Проверить, что пакет собирается в koji:
    nkoji build --scratch dist-el5-testing my_package.src.rpm
    
  5. Если пакет собирается, то сделать чистовую сборку:
    nkoji build dist-el5-testing my_package.src.rpm
    
  6. Скачать собранный пакет, убедиться, что он работает. Если все нормально, то пометить пакет как условно-рабочий:
    nkoji move-pkg dist-el5-testing-candidate dist-el5-testing my_package-1.0-1.el5 
    
    Обратите внимание, команде move-pkg нужен пакет в формате N-V-R, а не только имя пакета.
  7. Пакет попадет в репозиторий ngrid-testing с ближайшим обновлением репозитория. Чтобы ускорить процесс обновления репозитория, можете воспользоваться ссылкой https://koji.ngrid.ru/repobuilder/ (требует установленного в браузере сертификата koji).
  8. Для перевода пакета из репозитория ngrid-testing в репозиторий ngrid, необходимо переместить пакет из тега dist-el5-testing в dist-el5:
    nkoji move-pkg dist-el5-testing dist-el5 my_package-1.0-1.el5 
    
    Пакет попадет в репозиторий ngrid с ближайшим обновлением репозитория. Чтобы ускорить процесс обновления репозитория, можете воспользоваться ссылкой https://koji.ngrid.ru/repobuilder/ (требует установленного в браузере сертификата koji).

Группы пакетов (comps.xml)

В репозиториях ГридННС реализована поддержка групп пакетов через yum. Общее описание того, как работает этот механизм, есть здесь http://fedoraproject.org/wiki/PackageMaintainers/CompsXml

Чтобы добавить/изменить группы пакетов ГридННС необходим commit-доступ к https://svn.ngrid.ru/pkgs/comps/trunk.

  1. Сделайте свежий checkout:
    svn co https://svn.ngrid.ru/pkgs/comps/trunk comps
    cd comps
    
  2. Отредактируйте файл comps-ngrid.xml.in (обратите внимание на мультиязычные xml-теги).
  3. При необходимости добавьте переводы новых строк:
    cd po
    make comps.pot
    make ru.po
    cd ..
    
    Дальше редактируйте po/ru.po (это удобно делать с помощью, например, linguist-qt4)
  4. Проверьте, что в файле comps-ngrid.xml.in нет ошибок:
    make validate
    
  5. Если ошибок нет, сделайте commit. Учтите, что commit xml-кода, который не валидируется, является основанием для лишения вас доступа на commit.
  6. Новые группы/исправления появятся после первого обновления репозитория после коммита (при условии, что в .xml-файле нет ошибок).

Странные письма о неудачных сборках

Если вы получили письмо о том, что какие-то операции с вашими пакетами завершились не удачно (или, наоборот, удачно), но при этом вы точно знаете, что сами никаких подобных действий не совершали, это нормально. Такие письма могут приходить в тех случаях, когда администраторы koji делают какие-либо манипуляции с пакетами сами.

Attachments