Я пытаюсь собрать и развернуть RPM-пакет от Jenkins на основе некоторого стандартного файла спецификаций из другого проекта, который был написан ранее, чем мой.По некоторым причинам, я получаю ошибки сборки, когда я пытаюсь собрать или выпустить этот пакет из Jenkins.
+ rm -rf /builddir/build/BUILDROOT/component-prefix-blah-api-proxy-0.1.0.16-1.bbc.el7.x86_64
BUILDSTDERR: ++ dirname /builddir/build/BUILDROOT/component-prefix-blah-api-proxy-0.1.0.16-1.bbc.el7.x86_64
RPM build errors:
BUILDSTDERR: error: File not found by glob: /builddir/build/BUILDROOT/component-prefix-blah-api-proxy-0.1.0.16-1.bbc.el7.x86_64/var/www/cgi-bin/*
BUILDSTDERR: File not found by glob: /builddir/build/BUILDROOT/component-prefix-blah-api-proxy-0.1.0.16-1.bbc.el7.x86_64/var/www/cgi-bin/*
Child return code was: 1
EXCEPTION: [Error()]
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/mockbuild/trace_decorator.py", line 96, in trace
result = func(*args, **kw)
File "/usr/lib/python2.7/site-packages/mockbuild/util.py", line 734, in do_with_status
raise exception.Error("Command failed: \n # %s\n%s" % (command, output), child.returncode)
Error: Command failed:
# /usr/bin/systemd-nspawn -q -M b88888b933974fe283e8497d165b5369 -D /var/lib/mock/epel-7-x86_64-9876/root --capability=cap_ipc_lock --bind=/tmp/mock-resolv.kXeD1i:/etc/resolv.conf --setenv=LANG=en_GB.UTF-8 --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOSTNAME=mock --setenv=PROMPT_COMMAND=printf "\033]0;<mock-chroot>\007" --setenv=HOME=/builddir --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PS1=<mock-chroot> \s-\v\$ -u mockbuild bash --login -c /usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/blah-api-proxy.spec
Есть другая ошибка, которая возникла ранее, чем та, что выше в файле RPM build.logчто я не думаю, что это главная ошибка, поскольку я видел, что это происходило в других хорошо работающих сборках до
BUILDSTDERR: Failed to create directory /var/lib/mock/epel-7-x86_64-9876/root//sys/fs/selinux: Read-only file system
Я пытался установить флаг --old-chroot при выполнении макета.Однако я начал получать две ошибки -
ERROR: Exception(/var/lib/jenkins/workspace/component-prefix-blah-api-proxy/blah-api-proxy/SRPMS/component-prefix-blah-api-proxy-0.1.0.15-1.bbc.el7.src.rpm) Config(epel-7-x86_64) 0 minutes 11 seconds
и
# bash --login -c /usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/blah-api-proxy.spec
Version: 0.1.0%{?BUILD_NUMBER:.%{BUILD_NUMBER}}
Release: 1%{?dist}
Group: System Environment/Daemons
License: Internal COY use only
Summary: BLAH API Proxy
Source0: src.tar.gz
Requires: blah-blah-ssl-services-blah-staff jq
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildArch: x86_64
%description
BLAH API Proxy
%prep
%setup -q -n src
%build
%install
mkdir -p %{buildroot}
cp -r * %{buildroot}/
%clean
rm -rf %{buildroot}
%pre
%files
%defattr(0755, root, root, 0755)
/var/www/cgi-bin/*
%defattr(-, root, root, 0755)
/etc/bake-scripts/*
%defattr(0755, root, root, 0755)
/etc/bake-scripts/blah-api-proxy
Примечание: blah-api-proxy
- это каталог, содержащий конфигурации прокси-сервера Apache.
Структура папок src выглядит следующим образом:
src/
├── etc
│ └── bake-scripts
│ ├── blah-api-proxy
│ └── public-endpoints
└── var
└── www
└── cgi-bin
Буду очень признателен, если мне помогут в решении этой проблемы.Заранее большое спасибо.