CentOS Cloud SIG ppc64le issues
The following is a list of open issues needed to get https://buildlogs.centos.org/centos/7/cloud/ppc64le/openstack-pike/ matching https://buildlogs.centos.org/centos/7/cloud/x86_64/openstack-pike/
Repositories: cloud images
Does the cloud repository https://cloud.centos.org/altarch/7/images/ need to be compiled for ppc64le?
There are currently builds on http://ftp.unicamp.br/pub/ppc64el/centos/7/images/
FINISHED: Merging ppc64le scratch build into existing build
All of the packages have been processed.
For history's sake, the following packages needed to have scratch builds for only ppc64le built and then merged into the existing build of that version (with breaks for repo regens):
cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 apiextractor-0.10.10-11.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-dulwich-0.16.1-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 fio-2.2.10-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 jsoncpp-0.10.5-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 librdkafka-0.9.2-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 openvswitch-2.7.1-1.1fc27.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 Cython-0.25.2-3.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-dulwich-0.16.1-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-lz4-0.9.0-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-psutil-5.2.2-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-tornado-4.4.2-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-gitdb-0.6.4-4.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 qpid-proton-0.14.0-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 sip-4.19-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 sparsehash-2.0.2-4.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 mozjs38-38.8.0-2.el7.src.rpm --- cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 coin-or-CoinUtils-2.10.13-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 generatorrunner-0.6.16-10.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 mongodb-3.2.8-3.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 libev-4.24-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 qpid-cpp-1.35.0-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-subprocess32-3.2.6-4.el7.src.rpm --- cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 glpk-4.52.1-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 PyQt4-4.12-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-cassandra-driver-3.7.1-4.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-gevent-1.1.2-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-matplotlib-2.0.0-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 shiboken-1.2.4-2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 cmake3-3.6.1-2.el7.src.rpm --- cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 coin-or-Osi-0.107.8-1.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-pandas-0.19.1-2.el7.2.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-pykafka-2.6.0-0.1.dev2.el7.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 python-pyside-1.2.2-6.el7.1.src.rpm cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 qpid-dispatch-0.6.1-4.el7.src.rpm --- cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 coin-or-Clp-1.16.10-1.el7.src.rpm --- cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 coin-or-Cgl-0.59.9-1.el7.src.rpm --- cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 coin-or-Cbc-2.9.8-1.el7.src.rpm
Needs to move from cloud7-openstack-common-candidate to cloud7-openstack-common-release
How in general is this supposed to happen? Also, specifically, these packages need to show up in -release.
corosync-2.4.0-9.el7 https://cbs.centos.org/koji/buildinfo?buildID=17261 erlang-19.3.6.1-1.el7 https://cbs.centos.org/koji/buildinfo?buildID=17627 galera-25.3.16-3.el7 https://cbs.centos.org/koji/buildinfo?buildID=17566 libqb-1.0.1-3.el7 https://cbs.centos.org/koji/buildinfo?buildID=17248 librx-1.5-28.el7 https://cbs.centos.org/koji/buildinfo?buildID=16943 nagios-4.0.8-2.el7 https://cbs.centos.org/koji/buildinfo?buildID=11208 pacemaker-1.1.16-10.el7 https://cbs.centos.org/koji/buildinfo?buildID=17258 pcs-0.9.158-4.el7 https://cbs.centos.org/koji/buildinfo?buildID=17327 python-bcrypt-3.1.2-3.el7 https://cbs.centos.org/koji/buildinfo?buildID=17369 python-pillow-4.0.0-0.1.el7 https://cbs.centos.org/koji/buildinfo?buildID=16917 scipy https://cbs.centos.org/koji/buildinfo?buildID=15956 python-sqlalchemy https://cbs.centos.org/koji/buildinfo?buildID=17555 resource-agents https://cbs.centos.org/koji/buildinfo?buildID=17263 subunit https://cbs.centos.org/koji/buildinfo?buildID=17618
copying x86_64 noarch into ppc64le
Not sure how to get noarch from https://buildlogs.centos.org/centos/7/cloud/x86_64/openstack-pike/ into https://buildlogs.centos.org/centos/7/cloud/ppc64le/openstack-pike/. Needs to be retagged?
openstack-aodh https://cbs.centos.org/koji/packageinfo?packageID=1949 openstack-macros https://cbs.centos.org/koji/packageinfo?packageID=3792 puppet https://cbs.centos.org/koji/buildinfo?buildID=15305 python-amqp https://cbs.centos.org/koji/buildinfo?buildID=17360 python-cotyledon https://cbs.centos.org/koji/buildinfo?buildID=15562 python-docker https://cbs.centos.org/koji/buildinfo?buildID=17580 python-docker-pycreds https://cbs.centos.org/koji/buildinfo?buildID=17042 python-eventlet https://cbs.centos.org/koji/buildinfo?buildID=17356 python-funcsigs https://cbs.centos.org/koji/buildinfo?buildID=11232 python-gabbi https://cbs.centos.org/koji/buildinfo?buildID=17031 python-kombu https://cbs.centos.org/koji/buildinfo?buildID=16783 python-mock https://cbs.centos.org/koji/buildinfo?buildID=12100 python-murano-pkg-check https://cbs.centos.org/koji/buildinfo?buildID=15689 python-openstackdocstheme https://cbs.centos.org/koji/buildinfo?buildID=17538 python-paramiko https://cbs.centos.org/koji/buildinfo?buildID=11376 python-pbr https://cbs.centos.org/koji/buildinfo?buildID=17532 python-pecan https://cbs.centos.org/koji/buildinfo?buildID=11604 python-positional https://cbs.centos.org/koji/buildinfo?buildID=12116 python-PyMySQL https://cbs.centos.org/koji/buildinfo?buildID=17298 pyOpenSSL https://cbs.centos.org/koji/buildinfo?buildID=15812 python-pyroute2 https://cbs.centos.org/koji/buildinfo?buildID=17311 python-ryu https://cbs.centos.org/koji/buildinfo?buildID=17279 python-sphinx https://cbs.centos.org/koji/buildinfo?buildID=17541 python-sphinxcontrib-websupport https://cbs.centos.org/koji/buildinfo?buildID=17539 python-tinyrpc https://cbs.centos.org/koji/buildinfo?buildID=17259 python-tosca-parser https://cbs.centos.org/koji/buildinfo?buildID=15326 python-vine https://cbs.centos.org/koji/buildinfo?buildID=16741 python-XStatic-Angular https://cbs.centos.org/koji/buildinfo?buildID=15445 python-XStatic-Angular-Bootstrap https://cbs.centos.org/koji/buildinfo?buildID=15447 python-XStatic-Angular-Gettext https://cbs.centos.org/koji/packageinfo?packageID=767 python-XStatic-bootswatch https://cbs.centos.org/koji/buildinfo?buildID=15451 python-XStatic-D3 https://cbs.centos.org/koji/buildinfo?buildID=15452 python-XStatic-Font-Awesome https://cbs.centos.org/koji/buildinfo?buildID=15536 python-XStatic-JSEncrypt https://cbs.centos.org/koji/buildinfo?buildID=15448 python-XStatic-roboto-fontface https://cbs.centos.org/koji/buildinfo?buildID=14533 python-cachetools https://cbs.centos.org/koji/buildinfo?buildID=11994 python-django-compressor https://cbs.centos.org/koji/buildinfo?buildID=11184 python-django-pyscss https://cbs.centos.org/koji/buildinfo?buildID=3735 python-dogpile-cache https://cbs.centos.org/koji/buildinfo?buildID=12119 python-idna https://cbs.centos.org/koji/buildinfo?buildID=17243 python-kafka https://cbs.centos.org/koji/buildinfo?buildID=15342 python-migrate https://cbs.centos.org/koji/buildinfo?buildID=16842 python-pytest-cov https://cbs.centos.org/koji/buildinfo?buildID=17374 python-requests-mock https://cbs.centos.org/koji/buildinfo?buildID=13885 python-sphinx-locale https://cbs.centos.org/koji/buildinfo?buildID=17541 python-sphinx_rtd_theme https://cbs.centos.org/koji/buildinfo?buildID=17542 python-webob https://cbs.centos.org/koji/buildinfo?buildID=17007
cloud7-openstack-pike-candidate is not built yet for ppc64le
The repository https://cbs.centos.org/repos/cloud7-openstack-pike-candidate/ is not currently built for ppc64 because it would break the x86_64 builds.
Other package errors
The following packages were found in the cloud7-openstack-common x86_64 repository but not currently in the ppc64le repository:
libunwind
libunwind-1.1-3.el7.src.rpm does not support ppc64le architecture
... error: Architecture is not included: ppc64le ...
We need to tag libunwind-1.1-10.el7 into cloud7-openstack-common-release
mariadb-galera
Building mariadb-galera-5.5.40-3.el7.src.rpm fails with the following message:
Executing command: ['bash', '--login', '-c', u'/usr/bin/rpmbuild -bb --target ppc64le --nodeps /builddir/build/SPECS/mariadb-galera.spec'] with env {'LANG': 'en_GB.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'PROMPT_COMMAND': 'printf "\x1b]0;<mock-chroot>\x07<mock-chroot>"', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'HOME': '/builddir', 'HOSTNAME': 'mock'} and shell False error: Architecture is not included: ppc64le Building target platforms: ppc64le Building for target ppc64le Child return code was: 1
In Koji, it was last built on 2015-06-17. Is this package in active development?
openstack-tripleo-ui-deps
Building openstack-tripleo-ui-deps-7-5.el7.src.rpm fails with the following message:
Executing command: ['bash', '--login', '-c', u'/usr/bin/rpmbuild -bb --target ppc64le --nodeps /builddir/build/SPECS/openstack-tripleo-ui-deps.spec'] with env {'LANG': 'en_GB.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'PROMPT_COMMAND': 'printf "\x1b]0;<mock-chroot>\x07<mock-chroot>"', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'HOME': '/builddir', 'HOSTNAME': 'mock'} and shell False error: Architecture is not included: ppc64le Building target platforms: ppc64le Building for target ppc64le
Altering the openstack-tripleo-ui-deps.spec file
[hamzy@pkvmci853 ~]$ diff -Nu ~/rpmbuild/SPECS/openstack-tripleo-ui-deps.spec.orig ~/rpmbuild/SPECS/openstack-tripleo-ui-deps.spec --- /home/hamzy/rpmbuild/SPECS/openstack-tripleo-ui-deps.spec.orig 2017-05-30 19:15:56.000000000 -0400 +++ /home/hamzy/rpmbuild/SPECS/openstack-tripleo-ui-deps.spec 2017-07-22 18:51:05.471924860 -0400 @@ -20,7 +20,7 @@ Source0: tripleo-ui-deps-%{shortcommit}.tar.gz # Cannot build as noarch until nodejs is built from aarch64 in CBS -ExclusiveArch: x86_64 +ExclusiveArch: x86_64 ppc64le BuildRequires: nodejs BuildRequires: git
the build will succeed.
phantomjs
Building phantomjs-1.9.7-3.el7.src.rpm encounters the following error:
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DHAVE_CONFIG_H -DHAVE_FCNTL_H -DHAVE_STDARG_H -DHAVE_STDINT_H -DHAVE_UNISTD_H -DUSE_UTF8 -DSTATIC_BUILD -DQCOMMANDLINE_STATIC -DQT_NO_DEBUG -DQT_WEBKIT_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -Iqt/mkspecs/linux-g++ -I. -Iqt/include/QtCore -Iqt/include/QtNetwork -Iqt/include/QtGui -Iqt/include/QtWebKit -Iqt/include -Igif -Imongoose -Ilinenoise/src -Iqcommandline -Ibreakpad/src -I. -o csconverter.o csconverter.cpp In file included from breakpad/src/common/memory.h:44:0, from breakpad/src/client/linux/minidump_writer/linux_dumper.h:49, from breakpad/src/client/linux/minidump_writer/minidump_writer.h:39, from breakpad/src/client/linux/handler/exception_handler.h:45, from main.cpp:36: breakpad/src/third_party/lss/linux_syscall_support.h: In function 'void* sys_mmap2(void*, size_t, int, int, int, off_t)': breakpad/src/third_party/lss/linux_syscall_support.h:2429:18: error: '__NR_mmap2' was not declared in this scope __sc_0 = __NR_##name ^ breakpad/src/third_party/lss/linux_syscall_support.h:2432:13: note: in expansion of macro 'LSS_LOADARGS_0' LSS_LOADARGS_0(name); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:2436:13: note: in expansion of macro 'LSS_LOADARGS_1' LSS_LOADARGS_1(name, arg1); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:2440:13: note: in expansion of macro 'LSS_LOADARGS_2' LSS_LOADARGS_2(name, arg1, arg2); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:2444:13: note: in expansion of macro 'LSS_LOADARGS_3' LSS_LOADARGS_3(name, arg1, arg2, arg3); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:2448:13: note: in expansion of macro 'LSS_LOADARGS_4' LSS_LOADARGS_4(name, arg1, arg2, arg3, arg4); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:2452:13: note: in expansion of macro 'LSS_LOADARGS_5' LSS_LOADARGS_5(name, arg1, arg2, arg3, arg4, arg5); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:2480:13: note: in expansion of macro 'LSS_LOADARGS_6' LSS_LOADARGS_##nr(name, args); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:2533:11: note: in expansion of macro 'LSS_BODY' LSS_BODY(6, type, name, arg1, arg2, arg3, arg4, arg5, arg6); \ ^ breakpad/src/third_party/lss/linux_syscall_support.h:3046:16: note: in expansion of macro '_syscall6' LSS_INLINE _syscall6(void*, mmap2, void*, s, ^ In file included from main.cpp:36:0: breakpad/src/client/linux/handler/exception_handler.h: At global scope: breakpad/src/client/linux/handler/exception_handler.h:178:26: error: field 'float_state' has incomplete type struct _libc_fpstate float_state; ^ make[1]: *** [main.o] Error 1
Some internet talk about it here: powerpc-linux not currently supported and Porting google-breakpad on ppc64le
I did more research here: phantomjs_ppc64le
Talking to Atul Sowani, I learned:
I see that you are trying to build PhantomJS 1.9.x on ppc64le. Unfortunately, it is not compatible with ppc64le - especially the breakpad component. Starting with PhantomJS 2.0, breakpad has been removed and as a result PhantomJS builds okay on ppc64le. The default test suite runs fine, however PhantomJS itself is infested with numerous bugs and that manifests in different ways on ppc64le. There is a good pre-built PhantomJS binary available at ibmsoe site. Just in case you want to build it yourself, I strongly recommend that you use PhantomJS 2.1+.
Creating a phantomjs.spec file:
Name: phantomjs Version: 2.1.1 Release: 1%{?dist} Summary: Scriptable Headless WebKit License: BSD URL: http://phantomjs.org/ # # NOTE: executing "find . -depth -name .git -exec rm -r {} \;" will cause the following error: # ../src/corelib/global/qglobal.h:72:37: fatal error: QtCore/qsystemdetection.h: No such file or directory # # (VERSION="2.1.1"; cd /tmp/; git clone git://github.com/ariya/phantomjs.git; pushd phantomjs/; git checkout ${VERSION}; git submodule init; git submodule update; echo "not cleaning .git"; popd; mv phantomjs/ phantomjs-${VERSION}/; tar --create --gzip --file=phantomjs-${VERSION}.tar.gz phantomjs-${VERSION}/) # Source0: phantomjs-2.1.1.tar.gz # # aarch64 error: # # /builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/bin/moc -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_TSLIB -DQT_NO_LIBINPUT -DQT_NO_GRAPHICSVIEW -DQT_NO_GRAPHICSEFFECT -DQT_NO_STYLESHEET -DQT_NO_STYLE_CDE -DQT_NO_STYLE_CLEANLOOKS -DQT_NO_STYLE_MOTIF -DQT_NO_STYLE_PLASTIQUE -DQT_NO_PRINTPREVIEWDIALOG -DQT_NO_USING_NAMESPACE -DQT_BUILD_GUI_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_USE_BUNDLED_LIBPNG -DPNG_ARM_NEON_OPT=0 -DQT_ENABLE_HARFBUZZ_NG -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_CORE_LIB -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/mkspecs/linux-g++ -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/src/gui -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/include -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/include/QtGui -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/include/QtGui/5.5.1 -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/include/QtGui/5.5.1/QtGui -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/src/3rdparty/libpng -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/src/3rdparty/zlib -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/src/3rdparty/libjpeg -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/src/3rdparty/harfbuzz-ng/include -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/src/3rdparty/zlib -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/include/QtCore/5.5.1 -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/include/QtCore/5.5.1/QtCore -I/builddir/build/BUILD/phantomjs-2.1.1/src/qt/qtbase/include/QtCore -I/usr/include/c++/4.8.5 -I/usr/include/c++/4.8.5/aarch64-redhat-linux -I/usr/include/c++/4.8.5/backward -I/usr/lib/gcc/aarch64-redhat-linux/4.8.5/include -I/usr/local/include -I/usr/include kernel/qkeymapper_p.h -o .moc/moc_qkeymapper_p.cpp # {standard input}:7254: Error: invalid operands (*UND* and *UND* sections) for `*' # {standard input}:8854: Error: invalid operands (*UND* and *UND* sections) for `*' # ExclusiveArch: x86_64 ppc64le BuildRequires: python2-devel BuildRequires: chrpath BuildRequires: flex BuildRequires: bison BuildRequires: gperf BuildRequires: ruby BuildRequires: openssl-devel BuildRequires: freetype-devel BuildRequires: fontconfig-devel BuildRequires: libicu-devel BuildRequires: sqlite-devel BuildRequires: libpng-devel BuildRequires: libjpeg-devel Requires: sqlite %description PhantomJS is a headless WebKit scriptable with a JavaScript API. It has fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG. %prep %setup -q %build python ./build.py --confirm --skip-git --jobs=4 --qt-config=-system-sqlite %install mkdir -p %{buildroot}%{_bindir} cp bin/phantomjs %{buildroot}%{_bindir} chrpath -d %{buildroot}%{_bindir}/phantomjs %files %attr(755, root, root) %{_bindir}/phantomjs %changelog * Tue Jul 25 2017 Mark Hamzy <hamzy@us.ibm.com> 2.1.1-1 - Use version 2.1.1 * Fri Jul 31 2015 Lon Hohberger <lhh@redhat.com> 1.9.7-3 - Use system-sqlite instead of bundled sqlite * Wed Jul 29 2015 Graeme Gillies <ggillies@redhat.com> - 1.9.7-1 - Initial Packaging
And it builds as a scratch build:
[hamzy@pkvmci853 ~]$ vi ~/rpmbuild/SPECS/phantomjs.spec [hamzy@pkvmci853 ~]$ rpmbuild -bs --define "dist .el7" ~/rpmbuild/SPECS/phantomjs.spec Wrote: /home/hamzy/rpmbuild/SRPMS/phantomjs-2.1.1-1.el7.src.rpm [hamzy@pkvmci853 ~]$ cbs build --scratch cloud7-openstack-common-el7 ~/rpmbuild/SRPMS/phantomjs-2.1.1-1.el7.src.rpm ... Created task: 193456 Task info: https://cbs.centos.org/koji/taskinfo?taskID=193456 ... 193456 build (cloud7-openstack-common-el7, phantomjs-2.1.1-1.el7.src.rpm) completed successfully
python-cradox
python-cradox-1.3.2-1.el7.src.rpm is fixed. However, I do not know if the appropriate way was used. Basically, the Exclusive architecture statement was removed.
[hamzy@pkvmci853 ~]$ (TMP1=$(mktemp); TMP2=$(mktemp); wget --quiet -O - 'http://cbs.centos.org/kojifiles/packages/python-cradox/1.3.2/1.el7/src/python-cradox-1.3.2-1.el7.src.rpm' | rpm2cpio | cpio --extract --to-stdout python-cradox.spec > ${TMP1} 2>/dev/null; wget --quiet -O - 'http://cbs.centos.org/kojifiles/packages/python-cradox/1.3.2/1.el7.1/src/python-cradox-1.3.2-1.el7.1.src.rpm' | rpm2cpio | cpio --extract --to-stdout python-cradox.spec > ${TMP2} 2>/dev/null; diff -Nu ${TMP1} ${TMP2}; /bin/rm ${TMP1} ${TMP2}) --- /tmp/tmp.h5gKhhCQJj 2017-07-22 07:33:56.729566824 -0400 +++ /tmp/tmp.d7p7Qh4hqO 2017-07-22 07:33:56.829568094 -0400 @@ -6,12 +6,9 @@ Name: python-%{pypi_name} Version: 1.3.2 -Release: 1%{?dist} +Release: 1%{?dist}.1 Summary: Python libraries for the Ceph librados library with use cython instead of ctypes -# TODO(apevec) temp disable ppc64le, builder was not picking up the task after 1h -ExclusiveArch: x86_64 aarch64 - License: LGPLv2 URL: https://github.com/sileht/pycradox Source0: https://files.pythonhosted.org/packages/source/c/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
FINISHED: python-fastcache
Building python-fastcache-1.0.2-3.el7.src.rpm fails with the following message:
+ py.test-2.7 -v --ignore=fastcache/tests ============================= test session starts ============================== platform linux2 -- Python 2.7.5, pytest-3.0.6, py-1.4.31, pluggy-0.4.0 -- /usr/bin/python2 cachedir: .cache rootdir: /builddir/build/BUILD/python-fastcache-1.0.2/fastcache-1.0.2, inifile: collecting ... collected 0 items ========================= no tests ran in 0.01 seconds ========================= RPM build errors: error: Bad exit status from /var/tmp/rpm-tmp.aoOVMr (%check) Bad exit status from /var/tmp/rpm-tmp.aoOVMr (%check)
This also fails for x86_64:
[hamzy@pkvmci853 ~]$ cbs build --scratch --arch-override=x86_64 cloud7-openstack-common-el7 python-fastcache-1.0.2-3.el7.src.rpm Uploading srpm: python-fastcache-1.0.2-3.el7.src.rpm ... Created task: 192617 Task info: https://cbs.centos.org/koji/taskinfo?taskID=192617 ... ... DEBUG util.py:417: python2-pytest noarch 3.0.6-2.el7 build 1.0 M ... ... + py.test-2.7 -v --ignore=fastcache/tests ============================= test session starts ============================== platform linux2 -- Python 2.7.5, pytest-3.0.6, py-1.4.31, pluggy-0.4.0 -- /usr/bin/python2 cachedir: .cache rootdir: /builddir/build/BUILD/python-fastcache-1.0.2/fastcache-1.0.2, inifile: collecting ... collected 0 items ...
This is because it is using pytest-3.0.6. The last successful build used pytest-2.8.7-2.el7.noarch.
python-fastcache-1.0.2-9.fc26 [1] works:
[hamzy@pkvmci853 ~]$ cbs build --scratch cloud7-openstack-common-el7 ~/rpmbuild/SRPMS/python-fastcache-1.0.2-9.el7.src.rpm ... Created task: 192622 Task info: https://cbs.centos.org/koji/taskinfo?taskID=192622 ... 192622 build (cloud7-openstack-common-el7, python-fastcache-1.0.2-9.el7.src.rpm) completed successfully
FINISHED: python-tables
Building python-tables-3.1.1-2.el7.src.rpm encounters the following error:
+ python setup.py build * Using Python 2.7.5 (default, Nov 11 2016, 04:49:48) .. ERROR:: You need numpy 1.4.1 or greater to run PyTables! RPM build errors: error: Bad exit status from /var/tmp/rpm-tmp.U2vx9n (%build) Bad exit status from /var/tmp/rpm-tmp.U2vx9n (%build) Child return code was: 1
x86_64 successfully built a while ago, but a scratch build also fails now.
Building python-tables-3.2.0-1.el7.src.rpm encounters the following error:
... DEBUG util.py:417: Error: No Package found for blosc-devel >= 1.5.2 ...
So blosc-1.6.1-1.el7.src.rpm was imported from EPEL. However, python-tables still fails (https://kojipkgs.fedoraproject.org//packages/python-tables/3.2.0/1.el7/data/logs/ppc64le/build.log):
... ERROR: None (tables.tests.test_tables.RecArrayRangeTestCase) ... ValueError: could not broadcast input array from shape (2) into shape (0) ... Ran 5734 tests in 183.285s FAILED (errors=4, skipped=13) ...
Maybe https://github.com/PyTables/PyTables/issues/482 points to a solution?
python-tables is needed by openstack-gnocchi and python-hardware:
2017-07-22 05:41:33,615 INFO:dlrn-build:Error: Package: python2-pandas-0.19.1-2.el7.2.ppc64le (cloud7_openstack_common_release) 2017-07-22 05:41:33,615 INFO:dlrn-build: Requires: python-tables ... 2017-07-22 05:41:33,646 ERROR:dlrn:Received exception Error in build_rpm_wrapper for openstack-gnocchi: ... 2017-07-22 12:56:37,528 INFO:dlrn-build:DEBUG: Error: Package: python2-pandas-0.19.1-2.el7.2.ppc64le (cloud7_openstack_common_candidate) 2017-07-22 12:56:37,528 INFO:dlrn-build:DEBUG: Requires: python-tables ... 2017-07-22 12:56:50,478 ERROR:dlrn:Received exception Error in build_rpm_wrapper for python-hardware:
Building the latest python-tables in koji, python-tables-3.2.0-4.el7.src.rpm, encounters the following error:
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -D_GNU_SOURCE -fPIC -fwrapv -O3 -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -D_GNU_SOURCE -fPIC -fwrapv -O3 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -fPIC -DNDEBUG=1 -DHAVE_LZO2_LIB=1 -DHAVE_BZ2_LIB=1 -DHAVE_BLOSC_LIB=1 -Ihdf5-blosc/src -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/include/python2.7 -c src/H5ATTR.c -o build/temp.linux-ppc64le-2.7/src/H5ATTR.o -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -Isrc -DH5Acreate_vers=2 -DH5Aiterate_vers=2 -DH5Dcreate_vers=2 -DH5Dopen_vers=2 -DH5Eclear_vers=2 -DH5Eprint_vers=2 -DH5Epush_vers=2 -DH5Eset_auto_vers=2 -DH5Eget_auto_vers=2 -DH5Ewalk_vers=2 -DH5E_auto_t_vers=2 -DH5Gcreate_vers=2 -DH5Gopen_vers=2 -DH5Pget_filter_vers=2 -DH5Pget_filter_by_id_vers=2 -DH5Tarray_create_vers=2 -DH5Tget_array_dims_vers=2 -DH5Z_class_t_vers=2 gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -D_GNU_SOURCE -fPIC -fwrapv -O3 -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -D_GNU_SOURCE -fPIC -fwrapv -O3 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -fPIC -DNDEBUG=1 -DHAVE_LZO2_LIB=1 -DHAVE_BZ2_LIB=1 -DHAVE_BLOSC_LIB=1 -Ihdf5-blosc/src -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/include/python2.7 -c hdf5-blosc/src/blosc_filter.c -o build/temp.linux-ppc64le-2.7/hdf5-blosc/src/blosc_filter.o -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mcpu=power8 -mtune=power8 -Isrc -DH5Acreate_vers=2 -DH5Aiterate_vers=2 -DH5Dcreate_vers=2 -DH5Dopen_vers=2 -DH5Eclear_vers=2 -DH5Eprint_vers=2 -DH5Epush_vers=2 -DH5Eset_auto_vers=2 -DH5Eget_auto_vers=2 -DH5Ewalk_vers=2 -DH5E_auto_t_vers=2 -DH5Gcreate_vers=2 -DH5Gopen_vers=2 -DH5Pget_filter_vers=2 -DH5Pget_filter_by_id_vers=2 -DH5Tarray_create_vers=2 -DH5Tget_array_dims_vers=2 -DH5Z_class_t_vers=2 hdf5-blosc/src/blosc_filter.c: In function 'blosc_filter': hdf5-blosc/src/blosc_filter.c:172:19: error: 'BLOSC_BITSHUFFLE' undeclared (first use in this function) if (doshuffle == BLOSC_BITSHUFFLE) { ^ hdf5-blosc/src/blosc_filter.c:172:19: note: each undeclared identifier is reported only once for each function it appears in hdf5-blosc/src/blosc_filter.c:159:10: warning: unused variable 'errmsg' [-Wunused-variable] char errmsg[256]; ^ error: command 'gcc' failed with exit status 1
So blosc was updated to the latest level of blosc-1.11.1-3.el7.src.rpm. This allows python-tables-3.3.0-4.el7.src.rpm to build with the following spec file change:
[hamzy@pkvmci853 ~]$ diff -Nu ~/rpmbuild/SPECS/python-tables.spec.orig ~/rpmbuild/SPECS/python-tables.spec [40/1901] --- /home/hamzy/rpmbuild/SPECS/python-tables.spec.orig 2017-07-24 20:40:48.381011588 -0400 +++ /home/hamzy/rpmbuild/SPECS/python-tables.spec 2017-07-24 22:01:23.081037752 -0400 @@ -25,11 +25,13 @@ BuildRequires: blosc-devel >= 1.5.2 BuildRequires: python2-devel BuildRequires: python2-six +%if 0%{?with_python3} BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-Cython >= 0.13 BuildRequires: python%{python3_pkgversion}-numpy BuildRequires: python%{python3_pkgversion}-numexpr >= 2.4 BuildRequires: python%{python3_pkgversion}-six +%endif %description PyTables is a package for managing hierarchical datasets and designed @@ -49,6 +51,7 @@ This is the version for Python 2. +%if 0%{?with_python3} %package -n python%{python3_pkgversion}-tables Summary: %{summary} @@ -62,6 +65,7 @@ to efficiently and easily cope with extremely large amounts of data. This is the version for Python 3. +%endif %package doc Group: Development/Languages @@ -82,37 +86,47 @@ %build %py2_build +%if 0%{?with_python3} %py3_build +%endif %install chmod -x examples/check_examples.sh sed -i 's|bin/env |bin/|' utils/* %py2_install +%if 0%{?with_python3} %py3_install +%endif %check export LANG=en_US.UTF-8 PYTHONPATH=%{buildroot}%{python2_sitearch} %{__python2} bench/check_all.py +%if 0%{?with_python3} # OOM during tests on s390 %ifnarch s390 PYTHONPATH=%{buildroot}%{python3_sitearch} %{__python3} bench/check_all.py %endif +%endif %files -n python2-tables %license LICENSE.txt LICENSES %{python2_sitearch}/tables %{python2_sitearch}/tables-%{version}*.egg-info +%if 0%{?with_python3} %files -n python%{python3_pkgversion}-tables +%endif %license LICENSE.txt LICENSES %{_bindir}/ptdump %{_bindir}/ptrepack %{_bindir}/pt2to3 %{_bindir}/pttree +%if 0%{?with_python3} %{python3_sitearch}/tables %{python3_sitearch}/tables-%{version}*.egg-info +%endif %files doc %license LICENSE.txt LICENSES
v8
Building v8-3.14.5.10-17.el7.src.rpm fails with the following message:
Executing command: ['bash', '--login', '-c', u'/usr/bin/rpmbuild -bb --target ppc64le --nodeps /builddir/build/SPECS/v8.spec'] with env {'LANG': 'en_GB.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'PROMPT_COMMAND': 'printf "\x1b]0;<mock-chroot>\x07<mock-chroot>"', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'HOME': '/builddir', 'HOSTNAME': 'mock'} and shell False error: Architecture is not included: ppc64le Building target platforms: ppc64le Building for target ppc64le Child return code was: 1
Building v8-5.2.258-11.el7.src.rpm (https://kojipkgs.fedoraproject.org//packages/v8/5.2.258/11.fc27/src/v8-5.2.258-11.fc27.src.rpm) fails with the following message:
DEBUG util.py:417: Error: No Package found for clang
Building clang-4.0.1-1.el7.src.rpm (https://kojipkgs.fedoraproject.org//packages/clang/4.0.1/1.fc27/src/clang-4.0.1-1.fc27.src.rpm) fails with the following message:
Error: No Package found for llvm-devel = 4.0.1 Error: No Package found for llvm-static = 4.0.1 Error: No Package found for python2-lit Error: No Package found for python3-sphinx
Building llvm-4.0.1-1.el7.src.rpm (https://kojipkgs.fedoraproject.org//packages/llvm/4.0.1/1.fc27/src/llvm-4.0.1-1.fc27.src.rpm) fails with the following message:
DEBUG util.py:417: Error: No Package found for python3-sphinx
Altering the llvm.spec file
[hamzy@pkvmci853 ~]$ diff -Nu ~/rpmbuild/SPECS/llvm.spec.orig ~/rpmbuild/SPECS/llvm.spec [11/1927] --- /home/hamzy/rpmbuild/SPECS/llvm.spec.orig 2017-06-22 16:53:12.000000000 -0400 +++ /home/hamzy/rpmbuild/SPECS/llvm.spec 2017-07-22 16:08:43.742010218 -0400 @@ -7,6 +7,10 @@ %global llvm_bindir %{_libdir}/%{name} +%if 0%{?fedora} || 0%{?epel} +%global with_python3 1 +%endif + Name: llvm Version: 4.0.1 Release: 1%{?dist} @@ -24,11 +28,15 @@ Patch5: 0001-CMake-Fix-docs-llvm-man-target-when-clang-llvm-is-in.patch Patch6: 0001-CMake-Add-LLVM_UTILS_INSTALL_DIR-option.patch -BuildRequires: cmake +BuildRequires: cmake3 BuildRequires: zlib-devel BuildRequires: libffi-devel BuildRequires: ncurses-devel +%if 0%{?with_python3} BuildRequires: python3-sphinx +%else +BuildRequires: python2-sphinx +%endif BuildRequires: multilib-rpm-config %if %{with gold} BuildRequires: binutils-devel @@ -93,7 +101,7 @@ %endif # force off shared libs as cmake macros turns it on. -%cmake .. \ +%cmake3 .. \ -DBUILD_SHARED_LIBS:BOOL=OFF \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_SHARED_LINKER_FLAGS="-Wl,-Bsymbolic -static-libstdc++" \ @@ -143,7 +151,11 @@ -DLLVM_INSTALL_TOOLCHAIN_ONLY:BOOL=OFF \ \ -DSPHINX_WARNINGS_AS_ERRORS=OFF \ +%if 0%{?with_python3} -DSPHINX_EXECUTABLE=%{_bindir}/sphinx-build-3 +%else + -DSPHINX_EXECUTABLE=%{_bindir}/sphinx-build +%endif make %{?_smp_mflags}
the build will succeed.
Building python-lit-0.5.0-1.el7.src.rpm (https://kojipkgs.fedoraproject.org//packages/python-lit/0.5.0/1.fc27/src/python-lit-0.5.0-1.fc27.s) fails with the following message:
+ sed -i -e '1{\@^#!/usr/bin/env python@d}' '/builddir/build/BUILDROOT/python-lit-0.5.0-1.el7.ppc64le%{python3_sitelib}/lit/*.py' sed: can't read /builddir/build/BUILDROOT/python-lit-0.5.0-1.el7.ppc64le%{python3_sitelib}/lit/*.py: No such file or directory error: Bad exit status from /var/tmp/rpm-tmp.NKKtMh (%install)
Altering the python-lit.spec file
[hamzy@pkvmci853 ~]$ diff -Nu ~/rpmbuild/SPECS/python-lit.spec.orig ~/rpmbuild/SPECS/python-lit.spec --- /home/hamzy/rpmbuild/SPECS/python-lit.spec.orig 2017-03-10 10:51:45.000000000 -0500 +++ /home/hamzy/rpmbuild/SPECS/python-lit.spec 2017-07-22 17:33:40.084558263 -0400 @@ -63,7 +63,9 @@ # Strip out #!/usr/bin/env python sed -i -e '1{\@^#!/usr/bin/env python@d}' %{buildroot}%{python2_sitelib}/%{srcname}/*.py +%if 0%{?with_python3} sed -i -e '1{\@^#!/usr/bin/env python@d}' %{buildroot}%{python3_sitelib}/%{srcname}/*.py +%endif %check %{__python2} setup.py test
the build will succeed.
DLRN builds
dlrn has the following modifications:
diff --git a/projects.ini b/projects.ini index c9f165d..a9b602d 100644 --- a/projects.ini +++ b/projects.ini @@ -1,7 +1,8 @@ [DEFAULT] datadir=./data scriptsdir=./scripts -baseurl=http://trunk.rdoproject.org/centos7/ +#baseurl=http://trunk.rdoproject.org/centos7/ +baseurl=http://127.0.0.1/openstack-pike/ distro=rpm-master source=master target=centos @@ -10,7 +11,7 @@ reponame=delorean templatedir=./dlrn/templates maxretries=3 pkginfo_driver=dlrn.drivers.rdoinfo.RdoInfoDriver -tags= +tags=pike-uc #tags=mitaka rsyncdest= rsyncport=22 diff --git a/scripts/centos.cfg b/scripts/centos.cfg index 9298f1a..7dc8d99 100644 --- a/scripts/centos.cfg +++ b/scripts/centos.cfg @@ -1,11 +1,24 @@ -config_opts['root'] = 'dlrn-centos7-x86_64' -config_opts['target_arch'] = 'x86_64' -config_opts['legal_host_arches'] = ('x86_64',) +config_opts['root'] = 'dlrn-centos7-ppc64le' +config_opts['target_arch'] = 'ppc64le' +config_opts['legal_host_arches'] = ('ppc64le',) config_opts['chroot_setup_cmd'] = 'install basesystem rpm-build python2-devel gcc make python-sqlalchemy python-webob ghostscript g config_opts['dist'] = 'el7' # only useful for --resultdir variable subst config_opts['releasever'] = '7' config_opts['plugin_conf']['ccache_enable'] = False config_opts['priorities.conf'] = """ +config_opts['nosync'] = True +config_opts['plugin_conf']['root_cache_opts']['compress_program'] = "" +config_opts['plugin_conf']['root_cache_opts']['extension'] = "" +config_opts['plugin_conf']['tmpfs_enable'] = True +config_opts['plugin_conf']['tmpfs_opts'] = {} +config_opts['plugin_conf']['tmpfs_opts']['required_ram_mb'] = 1024 +config_opts['plugin_conf']['tmpfs_opts']['max_fs_size'] = '50g' +config_opts['plugin_conf']['tmpfs_opts']['mode'] = '0755' +config_opts['plugin_conf']['tmpfs_opts']['keep_mounted'] = False +config_opts['macros']['%__gzip'] = '/usr/bin/pigz' +config_opts['macros']['%__bzip2'] = '/usr/bin/lbzip2' +config_opts['http_proxy'] = 'http://127.0.0.1:3128' + [main] enabled = 1 check_obsoletes = 1 @@ -29,23 +42,30 @@ syslog_device= [base] name=BaseOS -mirrorlist=http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os +#mirrorlist=http://mirrorlist.centos.org/?release=7&arch=ppc64le&repo=os +baseurl=http://mirror.centos.org/altarch/$releasever/os/$basearch/ failovermethod=priority gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/mock/RPM-GPG-KEY-CentOS-SIG-AltArch-7-$basearch gpgcheck=1 [updates] name=updates enabled=1 -mirrorlist=http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=updates +#mirrorlist=http://mirrorlist.centos.org/?release=7&arch=ppc64le&repo=updates +baseurl=http://mirror.centos.org/altarch/$releasever/updates/$basearch/ failovermethod=priority gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-CentOS-7 + file:///etc/pki/mock/RPM-GPG-KEY-CentOS-SIG-AltArch-7-$basearch gpgcheck=1 [extras] name=extras -mirrorlist=http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=extras +#mirrorlist=http://mirrorlist.centos.org/?release=7&arch=ppc64le&repo=extras +baseurl=http://mirror.centos.org/altarch/$releasever/extras/$basearch/ failovermethod=priority gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-EPEL-7 + file:///etc/pki/mock/RPM-GPG-KEY-CentOS-SIG-AltArch-7-$basearch gpgcheck=1 +exclude=python-greenlet """
[hamzy@pkvmci853 DLRN]$ cat << __EOF__ | sudo tee -a /var/www/html/openstack-pike/delorean-deps.repo [cloud7_openstack_common_candidate] name=cloud7_openstack_common_candidate baseurl=https://cbs.centos.org/repos/cloud7-openstack-common-candidate/ppc64le/os/ enabled=1 gpgcheck=0 cost=1 [cloud7_openstack_common_testing] name=cloud7_openstack_common_testing baseurl=https://cbs.centos.org/repos/cloud7-openstack-common-testing/ppc64le/os/ enabled=1 gpgcheck=0 cost=2 [cloud7_openstack_common_release] name=cloud7_openstack_common_release baseurl=https://cbs.centos.org/repos/cloud7-openstack-common-release/ppc64le/os/ enabled=1 gpgcheck=0 cost=3 [openstack_pike_ppc64le] name=openstack_pike_ppc64le baseurl=https://buildlogs.centos.org/centos/7/cloud/ppc64le/openstack-pike/ enabled=1 gpgcheck=0 cost=4 [openstack_pike_x8664] name=openstack_pike_x8664 baseurl=https://buildlogs.centos.org/centos/7/cloud/x86_64/openstack-pike/ enabled=1 gpgcheck=0 cost=5
When dlrn builds a clean set of packages:
[hamzy@pkvmci853 ~]$ source ~/dlrn-venv/bin/activate (dlrn-venv)[hamzy@pkvmci853 DLRN]$ rm -rf data/; /bin/rm commits.sqlite; dlrn --order --verbose-mock 2>&1 | tee output.dlrn
missing dlrn order packages
there are a couple of missing packages that are in cloud7-openstack-pike-xxx but are not built by dlrn:
python-psutil openvswitch
python-openstackclient-3.11.0-0.20170720225953.c69304e
python-openstackclient-3.11.0-0.20170720225953.c69304e.el7.centos.src.rpm (https://github.com/openstack/python-openstackclient/commit/c69304e3d365dc2c67fab298eba0b9097d3819da)
has the following error during the build tests:
... 2017-07-20 19:02:22,741 INFO:dlrn-build:DEBUG: FAIL: openstackclient.tests.unit.integ.cli.test_shell.TestIntegShellCliPrecedenceOCC.test_shell_args_precedence_1 ... 2017-07-20 19:02:22,748 INFO:dlrn-build:DEBUG: testtools.matchers._impl.MismatchError: 0 != 2 ...
I believe that this problem has been fixed by the following defects:
- https://bugs.launchpad.net/os-client-config/+bug/1694937
- https://trunk.rdoproject.org/centos7-master-head/d0/34/d034b980ab03bbd50d31ef8bd439bc80a91a7d77_b81ca2c8/rpmbuild.log
- https://bugs.launchpad.net/python-openstackclient/+bug/1703783
hacking dlrn
The following hack gets around the above two problems:
[hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-openstack-pike; sudo /bin/rm -rf ${DIR}; sudo mkdir ${DIR}; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-psutil/5.2.2/1.el7/ppc64le/python2-psutil-5.2.2-1.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/python-psutil/5.2.2/1.el7/ppc64le/python-psutil-debuginfo-5.2.2-1.el7.ppc64le.rpm https://trunk.rdoproject.org/centos7-master/current-passed-ci/python-openstackclient-3.11.0-0.20170613232431.c69304e.el7.centos.noarch.rpm https://trunk.rdoproject.org/centos7-master/current-passed-ci/python-openstackclient-doc-3.11.0-0.20170613232431.c69304e.el7.centos.noarch.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-devel-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-central-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-common-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-docker-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-host-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-vtep-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-debuginfo-2.7.2-3.1fc27.el7.ppc64le.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ sudo vi /var/www/html/openstack-pike/delorean-deps.repo ... [missing_openstack_pike] name=missing_openstack_pike baseurl=http://127.0.0.1/missing-openstack-pike/ enabled=1 gpgcheck=0 cost=6 ...
Another run of dlrn will complete with the following problems:
2017-07-28 09:29:55,908 INFO:dlrn-build:DEBUG: FAIL: openstackclient.tests.unit.volume.test_find_resource.TestFindResourceVolumeSnapshots.test_find ... 2017-07-28 09:29:55,910 INFO:dlrn-build:DEBUG: TypeError: get() takes exactly 1 argument (2 given) ... 2017-07-28 09:30:07,136 ERROR:dlrn:Received exception Error in build_rpm_wrapper for python-openstackclient: ... 2017-07-28 16:19:14,750 INFO:dlrn-build:DEBUG: FAIL: troveclient.tests.test_shell.ShellTest.test_datastore_version_list ... 2017-07-28 16:19:14,756 INFO:dlrn-build:DEBUG: ValueError: Expecting a string None ... 2017-07-28 16:19:24,380 ERROR:dlrn:Received exception Error in build_rpm_wrapper for python-troveclient: ... 2017-07-29 01:20:24,068 INFO:dlrn-build:Error: No Package found for openstack-tripleo-ui-deps >= 7 ... 2017-07-29 01:20:24,161 ERROR:dlrn:Received exception Error in build_rpm_wrapper for openstack-tripleo-ui: ... 2017-07-29 02:01:25,450 INFO:dlrn-build:DEBUG: + oslo-config-generator --config-file=etc/oslo-config-generator/zaqar.conf 2017-07-29 02:01:27,014 INFO:dlrn-build:DEBUG: Traceback (most recent call last): ... 2017-07-29 02:01:27,022 INFO:dlrn-build:DEBUG: ImportError: No module named trollius ... 2017-07-29 02:01:37,561 ERROR:dlrn:Received exception Error in build_rpm_wrapper for openstack-zaqar: ... 2017-07-29 05:07:07,660 INFO:dlrn:4 packages not built correctly: not updating the consistent symlink
openstack overcloud image build
First install diskimage-builder:
[hamzy@pkvmci853 ~]$ git clone git://git.openstack.org/openstack/diskimage-builder [hamzy@pkvmci853 ~]$ (cd diskimage-builder/; sudo pip install --upgrade --force-reinstall --requirement requirements.txt) [hamzy@pkvmci853 ~]$ (cd diskimage-builder/; sudo python setup.py install --force)
Then install the newly built DLRN repository:
[hamzy@pkvmci853 ~]$ cat << __EOF__ | sudo tee -a /etc/yum.repos.d/DLRN.repo [DLRN] name=DLRN baseurl=http://127.0.0.1/DLRN/ enabled=1 gpgcheck=0 cost=1 __EOF__
Then install the cloud7-openstack-common repository. However, not every package has been promoted through the process, so you have to install the -candidate, -testing, and -release repositories:
[hamzy@pkvmci853 ~]$ cat << __EOF__ | sudo tee -a /etc/yum.repos.d/cloud7-openstack-common-candidate.repo [cloud7_openstack_common_candidate] name=cloud7_openstack_common_candidate baseurl=https://cbs.centos.org/repos/cloud7-openstack-common-candidate/ppc64le/os/ enabled=1 gpgcheck=0 cost=2 __EOF__ [hamzy@pkvmci853 ~]$ cat << __EOF__ | sudo tee -a /etc/yum.repos.d/cloud7-openstack-common-testing.repo [cloud7_openstack_common_testing] name=cloud7_openstack_common_testing baseurl=https://cbs.centos.org/repos/cloud7-openstack-common-testing/ppc64le/os/ enabled=1 gpgcheck=0 cost=3 __EOF__ [hamzy@pkvmci853 ~]$ cat << __EOF__ | sudo tee -a /etc/yum.repos.d/cloud7-openstack-common-release.repo [cloud7_openstack_common_release] name=cloud7_openstack_common_release baseurl=https://cbs.centos.org/repos/cloud7-openstack-common-release/ppc64le/os/ enabled=1 gpgcheck=0 cost=4 __EOF__
Next install python-tripleoclient:
[hamzy@pkvmci853 ~]$ sudo yum install -y python-tripleoclient ... Error: Package: python2-ironicclient-1.15.0-0.20170728223554.035aff2.el7.centos.noarch (DLRN) Requires: python-openstackclient >= 3.3.0 Error: Package: os-net-config-7.1.1-0.20170728133458.9b370b0.el7.centos.noarch (DLRN) Requires: python-pbr >= 2.0.0 Available: python-pbr-1.8.1-2.el7.noarch (cloud7_openstack_common_release) python-pbr = 1.8.1-2.el7 Installing: python2-pbr-1.10.0-1.el7.noarch (cloud7_openstack_common_candidate) python-pbr = 1.10.0-1.el7 Error: Package: python2-oslo-middleware-3.30.0-0.20170728125121.1cf39ee.el7.centos.noarch (DLRN) Requires: python-webob >= 1.7.0 Available: python-webob-1.2.3-6.el7.noarch (base) python-webob = 1.2.3-6.el7 Available: python-webob-1.4.1-2.el7.noarch (cloud7_openstack_common_release) python-webob = 1.4.1-2.el7 Installing: python-webob-1.6.1-2.el7.noarch (cloud7_openstack_common_candidate) python-webob = 1.6.1-2.el7 Error: Package: python-ironic-inspector-client-1.12.0-0.20170729000832.045fd9e.el7.centos.noarch (DLRN) Requires: python-openstackclient >= 3.3.0 Error: Package: python2-mistralclient-3.1.0-0.20170728133024.9e6ff99.el7.centos.noarch (DLRN) Requires: python-openstackclient >= 1.5.0 Error: Package: os-net-config-7.1.1-0.20170728133458.9b370b0.el7.centos.noarch (DLRN) Requires: openvswitch Error: Package: python-tripleoclient-7.2.0-0.20170729085127.11ad017.el7.centos.noarch (DLRN) Requires: python-openstackclient >= 3.3.0 ...
Which encounters a number of missing packages. These are: python-openstackclient, python-pbr, python-webob, and openvswitch. These might be in cloud7-openstack-pike-candidate (which doesn't exist for ppc64le)?
So create another missing repository:
[hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; sudo /bin/rm -rf ${DIR}; sudo mkdir ${DIR}; cd ${DIR}; for URL in https://trunk.rdoproject.org/centos7-master/current-passed-ci/python-openstackclient-3.11.0-0.20170613232431.c69304e.el7.centos.noarch.rpm https://trunk.rdoproject.org/centos7-master/current-passed-ci/python-openstackclient-doc-3.11.0-0.20170613232431.c69304e.el7.centos.noarch.rpm http://cbs.centos.org/repos/cloud7-openstack-pike-candidate/x86_64/os/Packages/python2-pbr-3.1.1-1.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/python-webob/1.7.2/1.el7/noarch/python-webob-1.7.2-1.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-devel-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-central-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-common-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-docker-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-host-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-ovn-vtep-2.7.2-3.1fc27.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/ppc64le/openvswitch-debuginfo-2.7.2-3.1fc27.el7.ppc64le.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR})
And add it locally:
[hamzy@pkvmci853 ~]$ cat << __EOF__ | sudo tee -a /etc/yum.repos.d/missing-overcloud.repo [missing_overcloud] name=missing_overcloud baseurl=http://127.0.0.1/missing-overcloud/ enabled=1 gpgcheck=0 cost=5 __EOF__
And install python-tripleoclient.
[hamzy@pkvmci853 ~]$ sudo yum install -y python-tripleoclient
Hardcoded arch in overcloud-images.yaml
All of the files in /usr/share/openstack-tripleo-common/image-yaml/ have hard coded architecture amd64 entries. So you have to edit /usr/share/openstack-tripleo-common/image-yaml/overcloud-images.yaml before you can create overcloud image.
[hamzy@pkvmci853 ~]$ grep -r amd64 /usr/share/openstack-tripleo-common/ /usr/share/openstack-tripleo-common/image-yaml/overcloud-hardened-images-centos7.yaml: arch: amd64 /usr/share/openstack-tripleo-common/image-yaml/overcloud-hardened-images-rhel7.yaml: arch: amd64 /usr/share/openstack-tripleo-common/image-yaml/overcloud-hardened-images.yaml: arch: amd64 /usr/share/openstack-tripleo-common/image-yaml/overcloud-images-centos7.yaml: arch: amd64 /usr/share/openstack-tripleo-common/image-yaml/overcloud-images-centos7.yaml: arch: amd64 /usr/share/openstack-tripleo-common/image-yaml/overcloud-images-rhel7.yaml: arch: amd64 /usr/share/openstack-tripleo-common/image-yaml/overcloud-images-rhel7.yaml: arch: amd64 /usr/share/openstack-tripleo-common/image-yaml/overcloud-odl-rhel7.yaml: arch: amd64
Building the overcloud image
http://cloud.centos.org/altarch/7/images/ppc64le does not exist yet so you have to override DIB_CLOUD_IMAGES and DIB_CLOUD_IMAGES.
[hamzy@pkvmci853 ~]$ (export DIB_DEBUG_TRACE=1; export DIB_YUM_REPO_CONF="/etc/yum.repos.d/DLRN.repo /etc/yum.repos.d/cloud7-openstack-common-candidate.repo /etc/yum.repos.d/cloud7-openstack-common-testing.repo /etc/yum.repos.d/cloud7-openstack-common-release.repo"; export NODE_ARCH=ppc64le; export DIB_CLOUD_IMAGES="http://ftp.unicamp.br/pub/ppc64el/centos/7/images/"; export BASE_IMAGE_FILE="CentOS-7-ppc64le-GenericCloud-1611.qcow2"; openstack overcloud image build) 2>&1 | tee output.overcloud-image-build ... Error: Package: pcs-0.9.158-4.el7.ppc64le (cloud7_openstack_common_candidate) Requires: python-clufter >= 0.59.0 Error: Package: rabbitmq-server-3.6.5-1.el7.noarch (cloud7_openstack_common_candidate) Requires: erlang-sd_notify Error: Package: python2-heat-translator-0.9.0-0.20170728224807.4973b0c.el7.centos.noarch (DLRN) Requires: python-tosca-parser Error: Package: 1:python-cinder-11.0.0-0.20170728214726.a2712ab.el7.centos.noarch (DLRN) Requires: python-psutil >= 3.2.2 Installing: python-psutil-1.2.1-1.el7.ppc64le (cloud7_openstack_common_candidate) python-psutil = 1.2.1-1.el7 Error: Package: 1:openstack-dashboard-12.0.0-0.20170728202853.8320350.el7.centos.noarch (DLRN) Requires: python-django-compressor >= 2.0 Installing: python-django-compressor-1.6-2.el7.noarch (cloud7_openstack_common_candidate) python-django-compressor = 1.6-2.el7 Error: Package: 1:python-neutron-11.0.0-0.20170729024032.d34aa00.el7.centos.noarch (DLRN) Requires: python-psutil >= 3.2.2 Installing: python-psutil-1.2.1-1.el7.ppc64le (cloud7_openstack_common_candidate) python-psutil = 1.2.1-1.el7 Error: Package: python-tacker-0.7.1-0.20170729050401.52bdf32.el7.centos.noarch (DLRN) Requires: python-tosca-parser Error: Package: 1:openstack-heat-common-9.0.0-0.20170728235148.93cbac4.el7.centos.noarch (DLRN) Requires: python-troveclient >= 2.2.0 Error: Package: 1:openstack-dashboard-12.0.0-0.20170728202853.8320350.el7.centos.noarch (DLRN) Requires: python-troveclient >= 1.0.0 Error: Package: 1:openstack-dashboard-12.0.0-0.20170728202853.8320350.el7.centos.noarch (DLRN) Requires: python-XStatic-roboto-fontface >= 0.5.0.0 Available: python2-XStatic-roboto-fontface-0.4.3.2-8.el7.noarch (cloud7_openstack_common_candidate) python-XStatic-roboto-fontface = 0.4.3.2-8.el7 Error: Package: 1:openstack-neutron-openvswitch-11.0.0-0.20170729024032.d34aa00.el7.centos.noarch (DLRN) Requires: python-openvswitch >= 2.6.1 Error: Package: openstack-sahara-ui-7.0.0-0.20170729042222.9a92bcd.el7.centos.noarch (DLRN) Requires: python-django-compressor >= 2.0 Installing: python-django-compressor-1.6-2.el7.noarch (cloud7_openstack_common_candidate) python-django-compressor = 1.6-2.el7 Error: Package: 1:python-neutron-11.0.0-0.20170729024032.d34aa00.el7.centos.noarch (DLRN) Requires: python-ryu >= 4.11 Error: Package: 1:openstack-dashboard-12.0.0-0.20170728202853.8320350.el7.centos.noarch (DLRN) Requires: python-django-compressor >= 2.0 Available: python-django-compressor-1.6-2.el7.noarch (cloud7_openstack_common_candidate) python-django-compressor = 1.6-2.el7 Error: Package: openstack-congress-6.0.0-0.20170728225235.afd02fb.el7.centos.noarch (DLRN) Requires: python-tosca-parser ...
So we are still missing packages...
python-clufter
Exists in http://vault.centos.org/7.3.1611/os/Source/SPackages/clufter-0.59.5-2.el7.src.rpm
Building for ppc64le:
[hamzy@pkvmci853 ~]$ wget --quiet http://vault.centos.org/7.3.1611/os/Source/SPackages/clufter-0.59.5-2.el7.src.rpm [hamzy@pkvmci853 ~]$ rpm -i clufter-0.59.5-2.el7.src.rpm [hamzy@pkvmci853 ~]$ vi ~/rpmbuild/SPECS/clufter.spec ... Release: 3%{?dist} ... ExclusiveArch: i686 x86_64 s390x ppc64le ... [hamzy@pkvmci853 ~]$ rpmbuild -bs --define "dist .el7" ~/rpmbuild/SPECS/clufter.spec Wrote: /home/hamzy/rpmbuild/SRPMS/clufter-0.59.5-3.el7.src.rpm [hamzy@pkvmci853 ~]$ cbs build --scratch cloud7-openstack-common-el7 ~/rpmbuild/SRPMS/clufter-0.59.5-3.el7.src.rpm Uploading srpm: /home/hamzy/rpmbuild/SRPMS/clufter-0.59.5-3.el7.src.rpm [====================================] 100% 00:00:00 268.22 KiB 1.14 MiB/sec Created task: 198591 Task info: https://cbs.centos.org/koji/taskinfo?taskID=198591 ... 198591 build (cloud7-openstack-common-el7, clufter-0.59.5-3.el7.src.rpm) completed successfully
successfully completes.
We decided since the upstream version is already fixed here https://git.centos.org/blob/rpms!clufter.git/c7/SPECS!clufter.spec#L45 then we should just do an arch-override build.
[hamzy@pkvmci853 ~]$ vi ~/rpmbuild/SPECS/clufter.spec [hamzy@pkvmci853 ~]$ rpmbuild -bs --define "dist .el7" ~/rpmbuild/SPECS/clufter.spec Wrote: /home/hamzy/rpmbuild/SRPMS/clufter-0.59.5-2.el7.src.rpm [hamzy@pkvmci853 ~]$ cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 ~/rpmbuild/SRPMS/clufter-0.59.5-2.el7.src.rpm ... Created task: 201516 Task info: https://cbs.centos.org/koji/taskinfo?taskID=201516 ... 201516 build (cloud7-openstack-common-el7, clufter-0.59.5-2.el7.src.rpm) completed successfully
<bstinson> hamzy: for every arch _but_ ppc64 clufter comes from the CentOS distro, so there's not a build in CBS for it. if you want clufter in the common tags for ppc64, you'll need to do a non-scratch + arch-override build <bstinson> since there are noarch bits mixed in here, i would actually recommend waiting a little bit until CentOS 7.1708 is released <TrevorH> akak 7.4 to the rest of us
FINISHED: erlang-sd_notify
Building for ppc64le:
[hamzy@pkvmci853 ~]$ wget --quiet http://cbs.centos.org/kojifiles/packages/erlang-sd_notify/0.1/9.el7/src/erlang-sd_notify-0.1-9.el7.src.rpm [hamzy@pkvmci853 ~]$ cbs build --scratch --arch-override=ppc64le cloud7-openstack-common-el7 erlang-sd_notify-0.1-9.el7.src.rpm ... Created task: 201501 Task info: https://cbs.centos.org/koji/taskinfo?taskID=201501 ... 201501 build (cloud7-openstack-common-el7, erlang-sd_notify-0.1-9.el7.src.rpm) completed successfully
successfully completes.
python-tosca-parser
python-tosca-parser-0.7.0-1.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=15326 and is currently tagged as cloud7-openstack-pike-candidate
python-psutil
python-psutil-5.2.2-1.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=17363 and is currently tagged as cloud7-openstack-pike-candidate
python-django-compressor
python-django-compressor-2.0-1.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=11184 and is currently tagged as cloud7-openstack-pike-candidate
python-troveclient
python-troveclient-2.8.0-1.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=15523 but is not currently tagged as cloud7-openstack-pike-candidate. However, it exists for -ocata, -newton, and -mitaka.
python-XStatic-roboto-fontface
python-XStatic-roboto-fontface-0.5.0.0-1.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=14533 and is currently tagged as cloud7-openstack-pike-candidate
python-ryu
python-ryu-4.15-1.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=17919 and is currently tagged as cloud7-openstack-pike-candidate
python-murano-pkg-check
python-murano-pkg-check-0.3.0-2.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=15689 and is currently tagged as cloud7-openstack-pike-candidate
python-routes
python-routes-2.4.1-1.el7 exists here https://cbs.centos.org/koji/buildinfo?buildID=17180 and is currently tagged as cloud7-openstack-pike-candidate
adding missing packages to missing-overcloud repo
Downloading all of the above packages into the missing-overcloud repository:
[hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/work/tasks/8593/198593/clufter-cli-0.59.5-3.el7.noarch.rpm http://cbs.centos.org/kojifiles/work/tasks/8593/198593/clufter-debuginfo-0.59.5-3.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/work/tasks/8593/198593/clufter-lib-ccs-0.59.5-3.el7.noarch.rpm http://cbs.centos.org/kojifiles/work/tasks/8593/198593/clufter-lib-general-0.59.5-3.el7.noarch.rpm http://cbs.centos.org/kojifiles/work/tasks/8593/198593/clufter-lib-pcs-0.59.5-3.el7.noarch.rpm http://cbs.centos.org/kojifiles/work/tasks/8593/198593/python-clufter-0.59.5-3.el7.ppc64le.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/work/tasks/8590/198590/erlang-sd_notify-0.1-9.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/work/tasks/8590/198590/erlang-sd_notify-debuginfo-0.1-9.el7.ppc64le.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-tosca-parser/0.7.0/1.el7/noarch/python2-tosca-parser-0.7.0-1.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/python-tosca-parser/0.7.0/1.el7/noarch/python2-tosca-parser-doc-0.7.0-1.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-psutil/5.2.2/1.el7/ppc64le/python2-psutil-5.2.2-1.el7.ppc64le.rpm http://cbs.centos.org/kojifiles/packages/python-psutil/5.2.2/1.el7/x86_64/python-psutil-debuginfo-5.2.2-1.el7.x86_64.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-django-compressor/2.0/1.el7/noarch/python-django-compressor-2.0-1.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-troveclient/2.8.0/1.el7/noarch/python2-troveclient-2.8.0-1.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-XStatic-roboto-fontface/0.5.0.0/1.el7/noarch/python2-XStatic-roboto-fontface-0.5.0.0-1.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/python-XStatic-roboto-fontface/0.5.0.0/1.el7/noarch/roboto-fontface-common-0.5.0.0-1.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/python-XStatic-roboto-fontface/0.5.0.0/1.el7/noarch/roboto-fontface-fonts-0.5.0.0-1.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-ryu/4.15/1.el7/noarch/python-ryu-common-4.15-1.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/python-ryu/4.15/1.el7/noarch/python2-ryu-4.15-1.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-murano-pkg-check/0.3.0/2.el7/noarch/python-murano-pkg-check-doc-0.3.0-2.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/python-murano-pkg-check/0.3.0/2.el7/noarch/python2-murano-pkg-check-0.3.0-2.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/noarch/openvswitch-test-2.7.2-3.1fc27.el7.noarch.rpm http://cbs.centos.org/kojifiles/packages/openvswitch/2.7.2/3.1fc27.el7/noarch/python2-openvswitch-2.7.2-3.1fc27.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR}) [hamzy@pkvmci853 DLRN]$ (DIR=/var/www/html/missing-overcloud; cd ${DIR}; for URL in http://cbs.centos.org/kojifiles/packages/python-routes/2.4.1/1.el7/noarch/python-routes-2.4.1-1.el7.noarch.rpm; do sudo wget --quiet ${URL}; done; sudo createrepo .; sudo chcon -R system_u:object_r:httpd_sys_content_t:s0 ${DIR})
Building the overcloud image take 2
Running "openstack overcloud image build" again comes up with a greenlet conflict.
[hamzy@pkvmci853 ~]$ (export DIB_DEBUG_TRACE=1; export DIB_YUM_REPO_CONF="/etc/yum.repos.d/DLRN.repo /etc/yum.repos.d/cloud7-openstack-common-candidate.repo /etc/yum.repos.d/cloud7-openstack-common-testing.repo /etc/yum.repos.d/cloud7-openstack-common-release.repo /etc/yum.repos.d/missing-overcloud.repo"; export NODE_ARCH=ppc64le; export DIB_CLOUD_IMAGES="http://ftp.unicamp.br/pub/ppc64el/centos/7/images/"; export BASE_IMAGE_FILE="CentOS-7-ppc64le-GenericCloud-1611.qcow2"; openstack overcloud image build) 2>&1 | tee output.overcloud-image-build ... Transaction check error: file /usr/lib64/python2.7/site-packages/greenlet.so conflicts between attempted installs of python-greenlet-0.4.9-1.el7.centos.ppc 64le and python2-greenlet-0.4.9-1.el7.ppc64le ...
This is fixed by the following hack:
[hamzy@pkvmci853 ~]$ (cd diskimage-builder; cat << '__EOF__' | git am -) From b3bfe84ca40e70bce5609e274050e7e23bef00b9 Mon Sep 17 00:00:00 2001 From: Mark Hamzy <hamzy@us.ibm.com> Date: Tue, 1 Aug 2017 12:44:12 -0500 Subject: [PATCH] fix python-greenlet conflict --- diskimage_builder/elements/yum/extra-data.d/99-yum-repo-conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/diskimage_builder/elements/yum/extra-data.d/99-yum-repo-conf b/diskimage_builder/elements/yum/extra-data.d/99-yum-repo-conf index b5b6e98..9fb27d0 100755 --- a/diskimage_builder/elements/yum/extra-data.d/99-yum-repo-conf +++ b/diskimage_builder/elements/yum/extra-data.d/99-yum-repo-conf @@ -25,3 +25,5 @@ for file in $DIB_YUM_REPO_CONF; do sudo cp -L -f $file $TMP_MOUNT_PATH/etc/yum.repos.d done + +echo 'exclude=python-greenlet*' | sudo tee -a $TMP_MOUNT_PATH/etc/yum.repos.d/CentOS-Base.repo -- 1.8.3.1 __EOF__