измените каталог rpmbuild на / var / lib / jenkins / rpmbuild / - PullRequest
0 голосов
/ 17 июня 2019

Я генерирую RPM-пакет, используя jenkins, хотя SOURCE, BUILD, BUILDROOT все хранятся в / var / lib / jenkins / rpmbuild /, пакет rpm после генерации перенаправляется в / root / rpmbuild / RPMS, и я получаю ошибкукак

error: cannot create /root/rpmbuild/RPMS/noarch: Permission denied

Я пытался создать / var / lib / jenkins / rpmbuild / RPMS / noarch, но это не удалось, я тоже проверил свой .rpmmacro и там я определил topdir как

%_topdir %(echo $HOME)/rpmbuild

а владельцем и группой .rpmmacro является jenkins

Я хочу, чтобы пакет rpm хранился в / var / lib / jenkins / rpmbuild / RPMS / noarch /, так как задача создается jenkins, и это единственный каталогчто Дженкинс владеет.

1 Ответ

0 голосов
/ 17 июня 2019

Чтобы ответить на мой собственный вопрос,

В спецификационном файле есть ключ %define, вам просто нужно указать каталог или путь, куда вы хотите сохранить свой пакет rpm. Вам просто нужно определить его в первый раз, если вы используете один и тот же файл спецификаций для каждой сборки.

для меня это было

%define _rpmdir /root/rpmbuild/RPMS/

который я изменил на

%define _rpmdir /var/lib/jenkins/rpmbuild/RPMS/

и он начал работать

...