Commit Graph

279 Commits

Author SHA1 Message Date
Kefu Chai
7fec5f7a67 install-deps.sh: stop preparing wheels for python2
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-12-19 11:52:56 +08:00
Kefu Chai
7f6e30d628 install-deps.sh: add ken's copr repo for el8 build
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-12-18 21:57:38 +08:00
Kefu Chai
6b009b49f2
Merge pull request #31144 from badone/wip-use-dnf-on-rhel-or-centos-8
install-deps.sh: Use dnf for rhel/centos 8

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-12-17 12:03:54 +08:00
Brad Hubbard
6065050022 install-deps.sh: Use dnf for rhel/centos 8
Also install the correct dnf-utils package rather than yum-utils.

Fixes: https://tracker.ceph.com/issues/42504

Co-Authored-By: Kefu Chai <tchaikov@gmail.com>
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2019-12-13 14:22:02 +10:00
Nathan Cutler
a5a44cf42e install-deps.sh: install python2-{virtualenv,devel} on SUSE if needed
Recent versions of openSUSE are fully Python 3 systems, but Python 2 can still
be installed on them. When Python 2 *and* Python 3 are installed, tox will try
to run unit tests ("make check" tests) on both. But the spec-file-based
mechanism used by install-deps.sh for determining "make check" dependencies only
installs python3-virtualenv and python3-devel.

Fixes: https://tracker.ceph.com/issues/23981
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-12-12 13:02:54 +01:00
Nathan Cutler
6378fa45ac rpm: add rpm-build to SUSE-specific make check deps
The binary /usr/bin/rpmspec was recently moved to rpm-build, breaking
install-deps.sh on openSUSE Tumbleweed. The package is not strictly
needed for SLE-15-SP* and openSUSE Leap 15.*, but it doesn't hurt to
have it, and will future-proof these distros from this regression.

Putting the dependency in the spec file does not address the issue,
because /usr/bin/rpmspec must be available before install-deps.sh runs it to
determine the dependencies, but it's nice to have it explicitly listed there,
since it *is* a dependency of "make check" on SUSE distros.

SUSE versions < 15 are of no interest in master/octopus+.

Fixes: https://tracker.ceph.com/issues/42612
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-12-10 18:31:16 +01:00
Kefu Chai
06a004b932 install-deps.sh: remove the cleanup for kitware repo
it was used for removing the kitware repo, and in
7265b55d09, we switched to a rebuilt
version hosted in chacra, and it was more than two months ago,
presumably, none builder has kitware repo anymore. so, let's remove
the cleanup code.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-11-14 00:12:16 +08:00
Kefu Chai
edc93babf7 install-deps.sh: install binutils 2.28 for xenial
ld 2.26 segment faults when linking librados.so in
https://github.com/ceph/ceph/pull/16715 .

while ld 2.28 always survives.
binutils 2.28 is rebuilt and uploaded to chacra
binutils/master/7fa393306ed8b93019d225548474c0540b8928f7/ubuntu/xenial,

so let's use it instead.

the source deb package comes from
http://ppa.launchpad.net/jonathonf/binutils/ubuntu

i tried to use the binutils 2.30 source package from bionic,
but it has build dependency of dpkg-dev (>= 1.19.0.5) which cannot be
fulfilled on xenial. so without more changes, we cannot get
binutils 2.30 built on xenial using this source package.

Fixes: https://tracker.ceph.com/issues/42596
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-11-14 00:12:06 +08:00
Kefu Chai
32aaa44904 install-deps.sh: use sepia/lab-extra/8
some build dependencies are still missing in PowerTools and EPEL8, so we
built and pushed them to sepia so it can be used before they are ready
in these repos.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-10-30 12:55:52 +08:00
Kefu Chai
7a93cb2ba0 install-deps.sh: install python3-devel for python related rpm macros
python3-devel depends on python-rpm-macros, which in turn depends on
python-srpm-macros. the latter offers `python3_pkgversion` macro, which
is necessary for prepare the build dependencies of rpm packages.

this change avoids the unnecessary `$yumdnf` calls, and to simplify the
code.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-10-10 11:00:52 +08:00
Kefu Chai
73ee20ea26
Merge pull request #30656 from tchaikov/wip-install-deps-for-el8
install-deps.sh: enable PowerTool repo for EL8

Reviewed-by: Neha Ojha <nojha@redhat.com>
2019-10-07 16:06:30 +08:00
Kefu Chai
d301137bb1 install-deps.sh: enable CRB/PowerTool repo for RHEL/CentOS 8
see also https://fedoraproject.org/wiki/EPEL

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-10-01 18:28:16 +08:00
Kefu Chai
80ec43792b install-deps.sh: only install python-srpm-macros for required macros
the reason why we need to install these macros is to solve the
egg-chicken problem -- to set `_python_buildid` and `python3_pkgversion`
so that we can prepare the build dependencies and install them. in which,
`_python_buildid` is defined using `python3_pkgversion`. this macro is
offered by python-srpm-macros.

the other macros, like `python3_sitelib` and `__python3` are offered by
`python3-rpm-macros`.

this change also avoid the issue if we install `*rpm-macros` on CentOS8:

Error:
 Problem: package R-rpm-macros-1.1.0-2.el8.noarch requires /usr/bin/Rscript, but none of the providers can be installed
  - package R-rpm-macros-1.1.0-2.el8.noarch requires R-core, but none of the providers can be installed
  - conflicting requests
  - nothing provides libRblas.so()(64bit) needed by R-core-3.6.1-1.el8.x86_64
  - nothing provides openblas-Rblas needed by R-core-3.6.1-1.el8.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-09-28 22:20:35 +08:00
Kefu Chai
45a4173bcf install-deps: do not install if rpm already installed
there is chance that the system already have epel-release-latest-7.noarch.rpm
installed, in that case, install-deps.sh should not fail.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-09-27 11:07:30 +08:00
Nathan Cutler
49d740118f install-deps.sh: add EPEL repo for non-x86_64 archs as well
Fixes: https://tracker.ceph.com/issues/42023
Signed-off-by: Kefu Chai <kchai@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-09-25 10:58:33 +02:00
Kefu Chai
e7287257ef
Merge pull request #30405 from p-se/wip-pna-ubuntu-disco-deps
install-deps.sh: add support for Ubuntu Disco Dingo

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-09-19 10:01:07 +08:00
Patrick Seidensal
95283a60de install-deps.sh: add support for Ubuntu Disco Dingo
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
2019-09-17 08:35:34 +02:00
Kefu Chai
0b2be2b671 install-deps.sh: install python*-devel for python*rpm-macros
in 087ea813, we installed '*rpm-macros' for the macros, so we can have
access to the latest python packaging related macros for preparing the
build dependencies.

but we could run into https://bugs.centos.org/view.php?id=16379, if
we already have an old version of python-devel installed. as the newer
version of python-rpm-macros conflicts with it.

it was a chicken-and-egg problem, as we don't know the exact name of
*rpm-macros packages. that's why we chose to install all of them. but
we have to upgrade the existing python-devel package to resolve the
conflict. but the since there is no python3-devel in RHEL7/CentOS7,
what they have is python36-devel. so we have to hardwire the
`%{python3_pkgversion}` to "36" even before we have access to this
macro, and upgrade the python36-devel package beforehand. but this
renders installing the rpm-macro package less useful -- we intend to
use the macro offered by the package to figure out "36".

as a workaround, we pretend that we know the "main" version of python3
in current RHEL/CentOS. and always install python36-devel for
python-rpm-macros. as the former requires the latter.

once all python3*-devel on all builders are upgraded, we will be safe
to install '*rpm-macros' again without installing python36-devel first.
by then, we could revert this change, or continue installing
python36-devel until the distro bumps up the "main" python version to 3.7

Fixes: https://tracker.ceph.com/issues/41603
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-09-07 02:15:00 +08:00
Kefu Chai
dfa6c5fcba install-deps: revert 47d4351d
this change reverts 47d4351d3a

see also 33dfffc8

Fixes: https://tracker.ceph.com/issues/40646
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-09-04 09:17:13 +08:00
Kefu Chai
ff631a19b4 install-deps.sh: only prepare wheels for "make check"
* move `for_make_check` to the beginning of script, as FreeBSD will also
  use this variable
* extract `preload_wheels_for_tox()` function out to improve readability
* call `preload_wheels_for_tox()` only if `for_make_check` is true

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-27 17:53:28 +08:00
Kefu Chai
f3d3e37c7e
Merge pull request #29903 from tchaikov/wip-pip-download
install-deps.sh: download wheel using 'pip wheel'

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2019-08-27 00:44:28 +08:00
Kefu Chai
3562504afd install-deps.sh: download wheel using 'pip wheel'
otherwise we will fail to install the build dependencies of
`lazy-object-proxy` from the wheelhouse. as `lazy-object-proxy` does not
add `setuptools_scm` in its `setup.py`, instead it lists
`setuptools_scm` in `setup.cfg` and `pyproject.toml` as a `build-system`
requires. but unfortunately, `pip download` only downloads the
install/run-time dependencies at this moment. and `lazy-object-proxy`
does not offer binary package for at least python2.7.

ideally, `pip download` should collects its dependencies like

Collecting setuptools_scm>=3.3.1 (from lazy-object-proxy->astroid<3,>=2.2.0->pylint->-r requirements-lint.txt (line 1))

so we need to use `pip wheel` do download build-time dependencies

see also https://github.com/pypa/pip/issues/6222

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-26 23:06:39 +08:00
Kefu Chai
5d6d770e2f install-deps.sh,deb,rpm: move python-saml deps into debian/control and ceph.spec.in
these dependencies are only used for building python-saml which is in
turn used for the SAML support. this feature is tested using
`test_sso.py` while performing dashboard tests. we do not package or
ship python-saml along with other Ceph packages. so let's move these
dependencies to the "make check" sections in ceph.spec.in and
debian/control for simplifying install-deps.sh.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-24 02:11:51 +08:00
Ernesto Puerta
1e07237d92
mgr/dashboard: clean-up tox and unit tests
Refactor CMake add_tox_test to automatically add py27 and/or py3 to
provided toxenvs.

Refactor tox.ini:
- Remove requirements-{py27,py3}.txt, as python release dependant
packages can be handled with PEP 508 syntax.
- Remove develepment dependencies from requirements.
- Move pycodestyle settings to separate section.
- Add flake8 check and other checkers (rst, naming, etc). Some of them
are commented out for future clean-ups (Ceph trackers have been opened)
- Pycodestyle removed, as flake8 is a wrapper for pycodestyle.
- Add instafail plugin to report failures immediately
- Add timeout plugin to limit max run time (sometimes test_tasks hangs)
- Remove unused dependencies (lru_cache, pluggy)

Test and code linting fixes:
- Unused imports
- Fixes to HACKING.rst

Doc:
- Update HACKING.rst

Add conftest.py to mock imported modules (rados, rbd, cephfs), and mock
also rados Error and OSError Exceptions.

Fixes: https://tracker.ceph.com/issues/40487
Fixes: https://tracker.ceph.com/issues/41152
Signed-off-by: Ernesto Puerta <epuertat@redhat.com>
2019-08-16 19:17:27 +02:00
Kefu Chai
2db496017a
Merge pull request #29400 from wjwithagen/wjw-fix-do_freeBSD.sh
do_freebsd.sh: update build scripts to resemble Jenkins scripts

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-08-09 14:09:42 +08:00
Kefu Chai
7265b55d09
Merge pull request #29475 from tchaikov/wip-cmake3-for-xenial
install-deps.sh: use chacra for cmake repo

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
2019-08-06 08:15:19 +08:00
Kefu Chai
9f4b2be015
Merge pull request #29403 from rhcs-dashboard/wip-41013-master
install-deps.sh: remove failing error catching

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-08-05 18:07:39 +08:00
Kefu Chai
26a5d7e850 install-deps.sh: use chacra for cmake repo
two reasons:

- do not rely on kitware repo so we have better control of the
  cmake3: the `debian` directory is tracked by
  https://github.com/tchaikov/ceph-cmake
- chacra repo also offers aarch64 build of cmake3

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-04 13:08:48 +08:00
Ernesto Puerta
7f767ab48e
install-deps.sh: remove failing error catching
Fixes: https://tracker.ceph.com/issues/41013
Signed-off-by: Ernesto Puerta <epuertat@redhat.com>
2019-08-02 21:26:40 +02:00
Kefu Chai
ddacfcc0e0 install-deps.sh: install cmake 3.10.2 and up on xenial
to enable us to build on xenial, install newer cmake.
cmake 3.10.2 is the version offered by bionic.

with this change, we can safely require cmake 3.10.2 in our cmake
script. as EPEL7 offers cmake 3.13

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-02 20:23:33 +08:00
Willem Jan Withagen
713e596073 build/FreeBSD: update build scripts to resemble Jenkins scripts
Copied from the jenkins:master build

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2019-07-30 16:56:01 +02:00
Kefu Chai
47d4351d3a ceph.spec.in,install-dep.sh: pin to gcc-c++-8.2.1
as an intermediate solution before
https://bugzilla.redhat.com/show_bug.cgi?id=1726630 gets fixed.

Fixes: https://tracker.ceph.com/issues/40646
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-07-05 23:59:21 +08:00
Kefu Chai
6e62f5f855 install-deps.sh: update ubuntu-toolchain-r mirrors
the removed two do not have GCC-9, but the newly added mirros do.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-06-08 00:14:54 +08:00
Kefu Chai
0e5ab6f95a install-deps.sh: use GCC-9 on bionic
two reasons

* GCC-9 features more checks. so let's use it!
* crimson targets the hardware + toolchain + kernel after 1+ years,
  so it would be great if we can compile and test crimson using
  the toolchain which is ubiquitous on most mainstream distos.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-06-08 00:14:54 +08:00
Kefu Chai
7f19bf39d6 install-deps.sh: populate WITH_SEASTAR in the same way as for_make_check
because `install-deps.sh` is executed using `source`, we have to pass
these options using env variables. but before this change, `WITH_SEASTAR` is used directly,
while `FOR_MAKE_CHECK` is checked and translated to a local variable
`for_make_check`. which, in my opinion, has better readability.

so, in this change, `WITH_SEASTAR` is translated to `with_seastar`
variable in `install-deps.sh`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-06-07 22:17:19 +08:00
Kefu Chai
4d363edc59 d/control,install-deps: use d/control for installing seastar deps
prepare for building ceph-crimson-osd deb package

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-06-06 18:06:43 +08:00
Thomas Johnson
329e6fcc0c install-deps.sh: Typo for krb5 on FreeBSD
The FreeBSD dependency install specifies devel/kbr5 instead of devel/krb5

Fixes: https://tracker.ceph.com/issues/40050
Signed-off-by: Thomas Johnson <NTmatter@gmail.com>
2019-05-28 21:44:17 +02:00
Kefu Chai
f52d69ea92 install-deps.sh: use gcc-8 on xenial and trusty
to be consistent with #27183 and https://github.com/ceph/ceph-build/pull/1286

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-05-14 22:39:48 +08:00
Kefu Chai
9b796a181a install-deps.sh: install libboost-test for seastar
see
5858fe30c1/cmake/SeastarDependencies.cmake (L58-L68)

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-05-08 08:22:27 +08:00
Jun He
95aff1e384 install-deps.sh: add option to skip prebuilt boost-* pkgs installation
Prebuilt boost-1.67 packages are only available for limited arch on Ubuntu
(x86_64 for bionic, x86_64 and arm64 for xenial). This will cause install
failure on missing platforms.
Add a new env variable to allow user to build and install from source
while the default option is to install pkgs from ceph repo.

Change-Id: I4259733dd40a638d1bd5d1578a64ecaaa6490121
Signed-off-by: Jun He <jun.he@arm.com>
2019-04-25 16:57:31 +08:00
Kefu Chai
087ea813a0 install-deps.sh: install '*rpm-macros'
so `yum-builddep` can have access to the latest macros for preparing the
build dependencies

Fixes: http://tracker.ceph.com/issues/39164
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-04-12 00:14:20 +08:00
Kefu Chai
00f19923b4 install-deps,rpm: enable devtoolset-8 on aarch64 also
in 5ae3b06e, we left aarch64 with devtoolset-7, but aarch64 builders are
also suffering from http://tracker.ceph.com/issues/38892. so i installed
devtoolset-8 on all aarch64 builders manually from the rpm packages
downloaded from koji builder:

- https://cbs.centos.org/koji/buildinfo?buildID=24923
- https://cbs.centos.org/koji/buildinfo?buildID=24931

libasan5, libubsan1 are not installed.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-04-03 11:40:59 +08:00
Kefu Chai
5ae3b06e63 install-dep,rpm: use devtools-8 on amd64
seems devtools-8 is not packaged on aarch64. and we are suffering from
ICE on centos7 when building with GCC-7.3. so let's try GCC-8.2!

Fixes: http://tracker.ceph.com/issues/38892
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-03-23 01:37:00 +08:00
Willem Jan Withagen
9e01aff8bf build: LLVM ld does not like the versioning scheme
There is a few essentail differences between the way versioning
and a version-map is interpreted for binutils ld and LLVM ld.
The easy way out for the time being is to use the one that works.

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2019-03-06 23:23:33 +01:00
Kefu Chai
818e1031d0 install-deps,do_freebsd: disable amqp support
per Willem's request.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-22 10:30:25 +08:00
Kefu Chai
9962c35abd install-deps.sh: do not install librabbitmq-dev manually
it will be installed by `mk-build-deps --install`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-21 12:08:19 +08:00
Kefu Chai
6ca980beff
Merge pull request #26402 from tchaikov/wip-install-deps
install-deps.sh: selectively install dependencies

Reviewed-by: David Zafman <dzafman@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2019-02-21 11:59:10 +08:00
Matt Benjamin
fcb8149951
Merge pull request #25866 from yuvalif/add_amqp_push_endpoint_new
rgw/pubsub: add amqp push endpoint
2019-02-20 07:37:34 -05:00
Kefu Chai
69fe3e5aba install-deps.sh: selectively enable deps on rpm distros
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-17 02:27:07 +08:00
Kefu Chai
694495f621 install-deps.sh: selectively enable deps on deb distros
on debian derivatives, only enable required dependencies on demand.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-17 02:27:07 +08:00
Kefu Chai
4fd179654e install-deps.sh: extract munge_debian_control()
this function will uncomment necessary dependencies on demand.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-17 02:25:05 +08:00
Yuval Lifshitz
e2c7842f4e install rabbitmq for debian/ubuntu and xBSD
Signed-off-by: Yuval Lifshitz <yuvalif@yahoo.com>
2019-02-13 11:19:17 +02:00
Zack Cerza
a1a3e7960c install-deps.sh: Fixes for RHEL 7
Signed-off-by: Zack Cerza <zack@redhat.com>
2019-02-12 17:27:13 -07:00
Kefu Chai
8b55b47cc7 install-deps.sh: use latest setuptools
this change reverts "install-deps.sh: workaround setuptools' dependency on six"

This reverts commit 30ce5e5546.

tl;dr: this change addresses the failures of "make check" runs on arm64
builders when they try to build `mgr-dashboard-test-venv` target.

long story: without this change, we will fail to pull in
setuptools >= 36, and as a result pip will fail to import
`setuptools.build_meta` in `pip/_vendor/pep517/_in_process.py`. and will
a `BackendUnavailable` exception thrown by `_call_hook()` in
`pip/_vendor/pep517/wrappers.py`. since the issue addressed by 30ce5e55
has been addressed since setuptools >= 36.0.1, we should be safe to
upgrade to the latest setuptools now.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-01-27 01:33:10 +08:00
Willem Jan Withagen
4d04ce251a build: Add Kerberos requirement for FreeBSD
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2018-12-24 10:52:58 +01:00
Kefu Chai
aa2b9e9a64 install-deps.sh: skip unavailable repos
as centos-sclo-rh-source leads us to 404 at this moment. and we are not
using the source repo for building ceph. so we can just skip any
unavailable repo.

Fixes: http://tracker.ceph.com/issues/37707
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2018-12-19 17:06:35 +08:00
Willem Jan Withagen
0d13a1b1df install-deps.sh: Update python requirements for FreeBSD
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2018-11-27 01:41:33 +01:00
Nathan Cutler
3fd4629662
Merge pull request #25181 from smithfarm/wip-37301
build/ops: rpm: stop install-deps.sh clobbering spec file Python build setting

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: Tim Serong <tserong@suse.com>
2018-11-22 10:12:09 +01:00
Brad Hubbard
f39d9b7d1f install-deps.sh: Remove CR repo
Remove the continuous release repos for CentOS and Virtuozzo 7 as they
should no longer be needed since http://tracker.ceph.com/issues/13997 is
no longer relevant and the newer versions of selinux packages pulled in
by the build system are causing problems for systems without CR repos
enabled.

Fixes: https://tracker.ceph.com/issues/37335

Signed-off-by: Alfredo Deza <adeza@redhat.com>
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2018-11-22 10:07:22 +10:00
Nathan Cutler
7d4916618c build/ops: rpm: stop install-deps.sh clobbering spec file Python build setting
Fedora 29 still ships a Python 2 binary, but some of Ceph's build
dependencies are only available in py3 versions there. In other
words, from F29 on, it is no longer possible to do a py2 Ceph build
on Fedora, even if a python2 binary exists on the system.

If that were not enough, the Python 2 that ships with Fedora 29 is
linked against a non-compatible version of OpenSSL.

Before this commit, install-deps.sh was overriding the spec file's
Python build setting based on the presence or absence of a python2
binary. As the bug cited below indicates, this was not a good idea.

It's better for the spec file to be explicit about which OS versions
are py2 and which are py3, and just stick to that.

Fixes: http://tracker.ceph.com/issues/37301
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-11-20 15:00:48 +01:00
Kefu Chai
98d7741579 install-deps.sh: install prebuilt libboost dependencies for bionic also
* extract boost install function into a helper, so we don't need to
  repeat it when adding support for new distros.
* install ceph-libboost-* for bionic build also. we check for the
  existence in run-make-check.sh, so there is no need to update
  the build script elsewhere.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-20 13:09:53 +08:00
Changcheng Liu
ab7344e617 install-deps.sh: correct gcc version info as major.minor.patch
On ubuntu 18.04, "gcc -dumpversion" output "7", it result in
that below check will return false:
    dpkg --compare-versions 7 ge 7.0
Then, this script will install other gcc.

Actully, the full gcc version "gcc -dumpfullversion" output is
"7.3.0", than below check will turn true:
    dpkg --compare-version 7.3.0 ge 7.0
So, there's no need to install other gcc.

In case of hitting error on ubuntu16.04, use below parameter:
   gcc -dumpfullversion -dumpversion

Signed-off-by: Changcheng Liu <changcheng.liu@intel.com>
2018-11-20 12:31:42 +08:00
Kefu Chai
c8a89df744 install-deps.sh: install libtool-ltdl-devel for building python-saml
python-saml depends on dm.xmlsec.binding. which links against ltdl. so
without libtool-ltdl-devel, we will have

/opt/rh/devtoolset-7/root/usr/libexec/gcc/aarch64-redhat-linux/7/ld:
cannot find -lltdl

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-13 15:28:45 +08:00
Kefu Chai
95386752ab install-deps: install setuptools before upgrading virtualenv
this should address the failures when running install-deps.sh, like

Downloading/unpacking virtualenv
  Running setup.py egg_info for package virtualenv
    /usr/lib64/python2.7/distutils/dist.py:267: UserWarning: Unknown
distribution option: 'python_requires'
      warnings.warn(msg)
    error in virtualenv setup command: 'extras_require' must be a
dictionary whose values are strings or lists of strings containing valid
project/version requirement specifiers.
    Complete output from command python setup.py egg_info:
    /usr/lib64/python2.7/distutils/dist.py:267: UserWarning: Unknown
distribution option: 'python_requires'

  warnings.warn(msg)

error in virtualenv setup command: 'extras_require' must be a dictionary
whose values are strings or lists of strings containing valid
project/version requirement specifiers.

this only happens on very old virtualenv shipped with RHEL7.4

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-10 13:47:13 -08:00
Ricardo Marques
04f4d5053e mgr/dashboard: SAML 2.0 support
Fixes: https://tracker.ceph.com/issues/24268

Signed-off-by: Ricardo Dias <rdias@suse.com>
Signed-off-by: Ricardo Marques <rimarques@suse.com>
2018-11-08 15:27:37 +00:00
Sebastian Wagner
d8de543b7e install-deps.sh: dashboard frontend needs git
Running `npm install` for the dashboard pulls dependenies with git.
Under some setups, git was not installed when building the frontend.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-10-11 14:20:52 +02:00
Kefu Chai
3911a7c7d0 install-deps: do not specify unknown options
per apt.conf(5), and
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=550564,
"Acquire::Translation" is not documented and will be deprecated. it
would be better to use "Acquire::Languages" solely. and it's consistent
with https://github.com/ceph/ceph-build/pull/1137 .

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-09-28 11:52:39 +08:00
Kefu Chai
f46523e464
Merge pull request #23955 from wjwithagen/wjw-fix-ceph-helpers.sh
test: Start using GNU awk and fix archiving directory

Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-09-17 15:44:06 +08:00
Kefu Chai
f0d7616b37 install-deps,run-make-check: use ceph-libboost repo
ceph-libboost1.67 repo is setup to satisfy the libboost dependencies
used when building ceph. now it offers arm64 and amd64 builds for xenial.

* install-deps.sh: add ceph-libboost1.67 repo hosted on chacra if the
  building host does not have any of the listed ceph-libboost1.67
  packages installed
* run-make-check.sh: add "-DWITH_SYSTEM_BOOST=ON
  -DBOOST_ROOT=/opt/ceph" if include/boost/config.hpp is found
  under /opt/ceph

See-also: http://tracker.ceph.com/issues/25186
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-09-11 22:22:47 +08:00
Willem Jan Withagen
bfe7a2afaa test: Start using GNU awk and fix archiving directory
awk uses some tests that the native FreeBSD awk does not support:
    like: BEGIN{print 0 < 90}

And TESTDIR is not set when calling ceph-helpers from smoke.sh
    So fix with keeping the archive in /tmp

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2018-09-06 15:50:20 +02:00
Kefu Chai
e4a2de952f install-deps: s/openldap-client/openldap24-client/
please refer:

https://svnweb.freebsd.org/ports/head/net/openldap24-client/
https://svnweb.freebsd.org/ports/head/net/openldap-client/

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-09-04 23:42:37 +08:00
Willem Jan Withagen
3b776457fe FreeBSD: update build script to current state
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2018-08-06 23:42:06 +02:00
Nathan Cutler
38508b41dc build/ops: refrain from installing/using lsb_release in install-deps.sh
Unfortunately the mapping between release number and codename (which is only
relevant for Debian and Ubuntu btw) is not available from /etc/os-release.
In that one respect, lsb_release was "better".

However, when I weigh the advantages of obtaining that mapping from an external
tool, with the (substantial) risk that the external dependency might cause
trouble on one or more supported distros (to say nothing of the non- or
semi-/pseudo-supported ones), against the work involved in maintaining a
hard-coded mapping (negligible), the needle on my scale immediately swings
toward eliminating the dependency.

Also, I see this commit as part of the longer-term effort to completely expunge
lsb_release from our codebase. See git log --grep lsb_release.

For another example of an external distro-detection tool (albeit one that was
included in Python 2) gone awry, see http://tracker.ceph.com/issues/18163.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-08-02 11:51:10 +02:00
Nathan Cutler
e0042dd617 build/ops: unify command substitution in install-deps.sh
The $() form is preferable to `` because folks (like me) might be using
` as a keyboard shortcut to GNU Screen, causing havoc to ensue whenever
copy-pasting the ` character.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-08-01 12:36:31 +02:00
Nathan Cutler
f170775770 build/ops: streamline processing of WITH_SEASTAR env var
Quoting relevant portion of "man test":

    STRING equivalent to -n STRING

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-08-01 12:36:09 +02:00
Kefu Chai
96196e9d77 rpm,install-deps,cmake: install {c-ares,fmt}-devel
* ceph.spec.in: c-ares-devel and fmt-devel are installed as
  dependencies fo seastar.
* install-deps.sh: libfmt-dev is missing in xenial, so we only
  install libc-ares-dev for ubuntu in install-deps.sh .
* cmake: build libfmt if it's not found.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
4ca636f9b6 install-deps: set DEBIAN_FRONTEND for apt-get
so it won't complain if the tty is not an interactive one.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-18 10:28:08 +08:00
Nathan Cutler
4b8c3b8e79 build/ops: install-deps.sh: set with_seastar
25d5122b55 introduced code into
install-deps.sh which was intended to set a variable "with_seastar" to the
string "true" or "false" depending on whether or not an environment
variable WITH_SEASTAR is defined.

As originally implemented, the conditional is always true, so with_seastar
is set to "true" unconditionally. Fix this by putting $WITH_SEASTAR in
double quotes.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-07-16 22:07:57 +02:00
Kefu Chai
4e87c5a492
Merge pull request #22809 from tchaikov/wip-with-seastar
run-make-check: enable --with-seastar option

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-07-14 17:36:20 +08:00
Kefu Chai
25d5122b55 rpm,install-deps.sh: add --with-seastar option
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-12 17:49:34 +08:00
Kefu Chai
b94e3790c8 install-deps.sh: import ubuntu-toolchain-r's key without keyserver
we are running into following error recently

gpg: requesting key BA9EF27F from hkp server keyserver.ubuntu.com
gpgkeys: key 1E9377A2BA9EF27F can't be retrieved
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
gpg: keyserver communications error: keyserver helper general error
gpg: keyserver communications error: unknown pubkey algorithm
gpg: keyserver receive failed: unknown pubkey algorithm

so use the local copy of the pubkey instead

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-10 20:24:02 +08:00
Kyr Shatskyy
bd0448c0b5 Add new OpenSUSE Leap id for install-deps.sh
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
2018-07-02 20:22:30 +02:00
Yunchuan Wen
46e33d15a4 install-deps: check the exit status for the $builddepcmd
in some case, the $builddepcmd will failed without any "error:" output.
so we should check the exit status to handle it.

Signed-off-by: Yunchuan Wen <yunchuan.wen@kylin-cloud.com>
2018-06-24 09:48:50 +08:00
Kefu Chai
f1fa8cb98c
Merge pull request #22488 from ai-traders/fix-gcc-install
install-deps.sh: fix installing gcc on ubuntu when no old compiler

Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-06-10 09:59:00 +08:00
Tomasz Setkowski
0d8d0cf6f7 install-deps: fix installing gcc on ubuntu when no old compiler
Signed-off-by: Tomasz Setkowski <tom@ai-traders.com>
2018-06-09 15:55:06 +00:00
Yunchuan Wen
f92f256f45 install-deps.sh: support install gcc7 in xenial aarch64
Signed-off-by: Yunchuan Wen <yunchuan.wen@kylin-cloud.com>
2018-06-07 15:51:31 +08:00
Kefu Chai
ed0ca70707 install-deps: nuke wheelhouse if it's stale
otherwise, if we update *requirements.txt, and the wheelhouse fails to
offer the newly added dependency, the setup-virtualenv.sh will fail the
build.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-05-16 19:43:33 +08:00
Ricardo Marques
372433d598 install-deps: Add support for 'opensuse-tumbleweed'
Signed-off-by: Ricardo Marques <rimarques@suse.com>
2018-04-25 18:49:51 +01:00
Casey Bodley
26d96eb3f0 install-deps: add liblz4 to freebsd build dependencies
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-04-12 09:35:40 -04:00
Willem Jan Withagen
381d1ef56f FreeBSD: add new required packages to be installed
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2018-04-11 13:37:15 +02:00
Tiago Melo
d5f8713882 mgr/dashboard: remove node/npm system installation
Node and npm are now being installed in a virtualenv, removing the need of
having it installed in the system or as a node dependency.

Now, if you want to use npm, you just need to activate the virtualenv created
on 'build/src/pybind/mgr/dashboard/node-env', and then you can execute the
same commands as you did before.

Signed-off-by: Tiago Melo <tmelo@suse.com>
2018-03-16 12:06:22 +00:00
Yao Guotao
b3a5949031 install-deps.sh: fix an error condition expression
Signed-off-by: Yao Guotao <yaoguot@gmail.com>
2018-03-09 04:46:27 -05:00
Ricardo Dias
b6d9464806
install-deps: install dashboard_v2 development dependencies
Signed-off-by: Ricardo Dias <rdias@suse.com>
Signed-off-by: Kai Wagner <kwagner@suse.com>
2018-03-05 13:07:14 +00:00
Nathan Cutler
6a2bcea045
Merge pull request #20436 from smithfarm/wip-22999
install-deps.sh: set python2 %bcond by environment

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
2018-02-27 16:19:36 +01:00
Nathan Cutler
fe028f89b6 install-deps.sh: set python2 %bcond by environment
If there is no /usr/bin/python2 we need to set %bcond_with python2.

Fixes: http://tracker.ceph.com/issues/22999
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-02-27 14:12:12 +01:00
Nathan Cutler
b47d57474d scripts: install-deps.sh: pass --no-recommends to zypper
Fixes: http://tracker.ceph.com/issues/22998
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-02-14 11:49:03 +01:00
Casey Bodley
ba85740955 cmake: remove cryptopp option
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-01-19 10:25:41 -05:00
Kefu Chai
7bb8f66cf4 install-deps.sh: check if have access to stdout
$- is "hB" if launched via command line, and it is "himBH" only when
we are actually *in* an interactive shell. so checking "test -t 1" is
what we want.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-30 23:20:07 +08:00
Kefu Chai
d38a9370b6 install-deps: bump DTS version on aarch64 to 7
see https://bugs.centos.org/view.php?id=14078

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-30 23:20:07 +08:00
wangsongbo
2d44ba7d4c install-deps.sh: only download mirrored package index
E: Failed to fetch http://mirror.cs.uchicago.edu/ubuntu-toolchain-r/dists/xenial/main/binary-i386/Packages  404  Not Found
E: Failed to fetch http://mirror.yandex.ru/mirrors/launchpad/ubuntu-toolchain-r/dists/xenial/main/i18n/Translation-en  404  Not Found [IP: 213.180.204.183 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.

On Ubuntu amd64 installations, i386 is enabled as an additional
architecture by default. apt & co. expect repositories to provide all
configured architectures, which causes the error above.

Signed-off-by: Songbo Wang <wangsongbo@cloudin.cn>
2017-12-30 23:20:07 +08:00
Kefu Chai
45781602c9 install-deps.sh: do not download i18n apt index
and do not fail the `apt-get update` command, if any mirror is not
reachable.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-30 23:20:07 +08:00
Kefu Chai
0beb846e57 install-deps.sh: use tee for writing a file
because the stdout redirect is performed by current shell not `$SUDO
cat`, so $SUDO does not help here. use `$SUDO tee` instead, which is
able to read the stdin and write to the given file just as expected.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-14 19:06:53 +08:00
Kefu Chai
b69e3efe64 install-deps.sh: avoid re-installing g++-7
* add ubuntu-toolchain-r mirrors in case the ppa.launchpad.net is not
  accessible
* add ppa repo manually, it's faster than installing
  `software-properties-common` and then launch `add-apt-repository`
* hardwire $old to the gcc version shipped by the distro, simpler this
  way.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-13 14:22:41 +08:00
Kefu Chai
8a0935988f install-deps.sh: use GCC-7 on xenial also
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-11 23:26:24 +08:00
Kefu Chai
3882deae8c install-deps.sh: install new gcc as the default the right way
* should install software-properties-common beforehand, otherwise
  the `add-apt-repository` command will not be available.
* the update-alternative commandline were copied from ceph-build,
  should remove the escape characters.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-09 20:00:28 +08:00
Kefu Chai
4cedada14e install-deps.sh: enable testing repo on centos on aarch64
the DTS-6 is only available in the testing repo

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-08 21:15:53 +08:00
Kefu Chai
3f8647a7e8 install-deps.sh: use DTS on centos if GCC is too old
please note, run-make-check.sh sources install-deps.sh here to import
the $PATH and other environmental variables, which could be changed by
the the DTS "enable" script.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-08 19:36:58 +08:00
Kefu Chai
84660c977c install-deps.sh: install centos-release-scl-rh on aarch64
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-05 23:48:15 +08:00
Kefu Chai
24d0f935dc install-deps.sh: use gcc-7 on trusty
* always install gcc-7 on trusty
* point g++ to g++-7 if not yet

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-05 10:29:49 +08:00
Kefu Chai
eccc961c72 install-deps.sh: always use yum-config-manager for consistency
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-05 10:29:48 +08:00
Kefu Chai
f9aa49cee1 install-deps.sh: install devtoolset-7 for centos/rhel
ready them for gcc7 and libstdc++-7 for better performance.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-12-05 10:29:48 +08:00
Alan Somers
3aae5ca6fd scripts: fix bash path in shebangs
/bin/bash is a Linuxism.  Other operating systems install bash to
different paths.  Use /usr/bin/env in shebangs to find bash.

Signed-off-by: Alan Somers <asomers@gmail.com>
2017-07-27 13:24:26 -06:00
Alan Somers
5b10a736a2 install-deps.sh: add missing dependencies for FreeBSD
Signed-off-by: Alan Somers <asomers@gmail.com>
2017-07-24 16:48:07 -06:00
Nathan Cutler
a502a93907 build/ops: rpm: put mgr python build dependencies in make_check bcond
Fixes: http://tracker.ceph.com/issues/20425
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Signed-off-by: Tim Serong <tserong@suse.com>
2017-07-17 13:12:54 +02:00
Bassam Tabbara
a8da9fd077 test,qa/workunits: add tests for public_bind_addr
Add a set of new tests for the case when public_addr and public_bind_addr
are different for a mon. In order to test this properly I had to employ
port forwarding with socat. This helps simulate what would happen in a
environment like Kubernetes. socat is now a build dependency.

Also, moved jq_success to ceph-helpers.sh and refactored run_mon to enable
creating the mons without creating the rbd pool immediately.

Signed-off-by: Bassam Tabbara <bassam.tabbara@quantum.com>
2017-07-14 10:41:49 -07:00
Willem Jan Withagen
f7e18c29dc core: Install Pecan for FreeBSD
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2017-06-10 12:12:23 +02:00
Kefu Chai
a87fa37e46 cmake,debian,rpm: remove atomic_t completely
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-06-08 12:21:00 +08:00
Kefu Chai
30ce5e5546 install-deps.sh: workaround setuptools' dependency on six
see also https://github.com/pypa/setuptools/issues/1042

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-06-01 14:52:44 +08:00
Adam C. Emerson
69a5eebd8a rgw: Add basic support for IAM policies
This support is currently incomplete but should provide a starting
point.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-05-17 14:22:18 -04:00
Sage Weil
15e80fa2d8 Merge pull request #9853 from dx9/wip-alpine-dev-support
alpine: add alpine linux dev support
2017-04-21 18:54:25 -05:00
Sage Weil
180ff1f47e Merge pull request #14301 from Andrey1994/master
build: Add Virtuozzo Linux support

Reviewed-by: Sage Weil <sage@redhat.com>
2017-04-10 16:22:21 -05:00
Andrey Parfenov
46bdb32bcd install-deps: Add Virtuozzo Linux support
Signed-off-by: Andrey Parfenov <aparfenov@virtuozzo.com>
2017-04-03 16:35:49 +03:00
Willem Jan Withagen
3d712b6781 build: let FreeBSD build ceph-fuse
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2017-04-02 21:39:41 +02:00
Willem Jan Withagen
0a91b76f2f test: use gsed on FreeBSD for inplace editting
- FreeBSD sed(1) requires a extension on -i
   so replace the usuage with GNU sed: gsed

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2017-03-19 18:02:26 +01:00
Nikita Gerasimov
38786405c6 ceph-detect-init: Adds Oracle Linux Server and Oracle VM Server detection
Oracle Linux Server is API/ABI compatible with RHEL/CentOS Linux distro.
Oracle VM Server is Xen based VM server. Which modern versions Dom0 is based on el6

Signed-off-by: Nikita Gerasimov <nikita.gerasimov@oracle.com>
2017-03-10 17:29:08 +03:00
Willem Jan Withagen
832b9bccae build/install-deps.sh: Add sphinx package for DOCS
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2017-02-01 23:04:48 +01:00
John Coyle
84eb9b8369 install-deps.sh: add alpine support
Signed-off-by: John Coyle <dx9err@gmail.com>
2016-12-20 20:24:31 -05:00
Willem Jan Withagen
5268a3e3e0 install-deps.sh: JQ is needed in one script
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2016-11-19 20:10:51 +01:00
Nitin A Kamble
266f4d4f20 install-deps.sh: allow building on SLES systems
Avoids this error on SLES systems:

> ./install-deps.sh
sles is unknown, dependencies will have to be installed manually.

Signed-off-by: Nitin A Kamble <Nitin.Kamble@Teradata.com>
2016-10-31 11:48:22 -07:00
Kefu Chai
78f298df05 Merge pull request #11512 from wjwithagen/wip-wjw-freebsd-depends
FreeBSD: update require packages

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-10-19 11:32:59 +08:00
Willem Jan Withagen
3c8cd0ffd8 tools/ceph-monstore-update-crush.sh: FreeBSD getopt is not compatible, use the one from packages
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2016-10-18 11:40:28 +02:00
Willem Jan Withagen
30c0e4cbf5 FreeBSD: update require packages
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2016-10-16 22:10:03 +02:00
Brad Hubbard
07a5a98982 build scripts: Enable dnf for Fedora >= 22
The use of yum triggers a warning and reference to yum2dnf on Fedora >= 22.
Use either yum or dnf based on the Fedora version.

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2016-09-16 18:59:59 +10:00
Gregory Meno
01eb1327ae install-deps: exit non-zero when we cannot match distro
Signed-off-by: Gregory Meno <gmeno@redhat.com>
2016-09-09 21:15:52 +00:00
Nathan Cutler
fd37e87f6d build/ops: fix /etc/os-release parsing in install-deps.sh
85a370e35f introduced the DISTRO variable whose
value was obtained by parsing /etc/os-release like this:

DISTRO=$(grep  "^ID=" /etc/os-release | sed "s/ID=//")

This unfortunately picks up the double-quotes, so on a CentOS system DISTRO
will be equal to '"centos"'.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-09-05 16:20:49 +02:00
Nathan Cutler
3c5e021c35 Merge pull request #10017 from jan--f/os-release-based-install-deps
build/ops: install-deps.sh based on /etc/os-release

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
2016-08-30 11:41:29 +02:00
Jan Fajerski
85a370e35f install-deps.sh: initial distro detection based on /etc/os-release
This avoids initial distribution detection (before lsb_release is available)
based on the presence of a specific package manager. This caused an
issue with openSUSE Tumbleweed before since both zypper and apt-get are
available.

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
2016-08-29 16:38:51 +02:00
Oleh Prypin
2699b6d89b install-deps: Get the latest virtualenv in a temporary folder
to work around a bug in old virtualenv

Signed-off-by: Oleh Prypin <oleh@pryp.in>
2016-07-13 16:35:07 -07:00
Dan Mick
99bca09b8d install-deps.sh: use mk-build-deps instead of processing control
mk-build-deps is designed to handle installing build dependencies;
use that instead, so '|' indications are handled properly.

Signed-off-by: Dan Mick <dan.mick@redhat.com>
2016-06-21 16:36:56 -07:00
Willem Jan Withagen
8b6307cdd9 install-deps.sh: Add the required packages to build on FreeBSD
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2016-05-10 23:41:17 +02:00
Loic Dachary
dad2e195ce Merge pull request #8782 from SUSE/wip-15627
install-deps.sh: systemd-rpm-macros must be installed on SUSE

Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-05-03 10:10:07 +02:00
Nathan Cutler
a7f5ad5f6f install-deps.sh: systemd-rpm-macros must be installed on SUSE
Otherwise the script breaks.

Fixes: http://tracker.ceph.com/issues/15627
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-04-27 11:13:06 +02:00
Erwan Velu
bbcda5a2c2 install-deps: Adding gcc for debian based systems
When running install-deps on a minimalistic system, we reach that situation :

dpkg-checkbuilddeps --admindir=/tmp/install-deps.5526 debian/control
    sh: 1: gcc: not found
    dpkg-checkbuilddeps: warning: Couldn't determine gcc system type, falling back to default (native compilation)
    dpkg-checkbuilddeps: error: cannot open /tmp/install-deps.5526/status: No such file or directory

This means that we shall install gcc before calling dpkg-checkbuilddeps.

Signed-off-by: Erwan Velu <erwan@redhat.com>
2016-04-25 17:11:45 +02:00
Alfredo Deza
64f14d43a8 install-deps: remove distribute requirement
Because it was meant for Ubuntu 12.04 and it is installing directly
from PyPI on newer releases that aren't being built for 12.04

Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-20 16:23:55 -04:00
Loic Dachary
247ee6084b build/ops: enable CR in CentOS 7
To get libunwind from the CR repositories until CentOS 7.2.1511 is released.

http://tracker.ceph.com/issues/13997 Fixes: #13997

Signed-off-by: Loic Dachary <loic@dachary.org>
2015-12-08 08:25:24 +01:00
Nathan Cutler
3217803700 Revert "install-deps.sh: use %bcond_with selinux on SLE/openSUSE"
This reverts commit 1df2cc2bf6.
2015-10-06 14:40:41 +02:00
Loic Dachary
392c56c10e Merge pull request #6137 from SUSE/wip-13324-infernalis
install-deps.sh: use %bcond_with selinux on SLE/openSUSE 

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-10-02 00:34:53 +02:00
Nathan Cutler
1df2cc2bf6 install-deps.sh: use %bcond_with selinux on SLE/openSUSE
http://tracker.ceph.com/issues/13324 Fixes: #13324

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-10-01 21:47:49 +02:00
Nathan Cutler
0f9dca458b install-deps.sh: openSUSE-release/sles-release/sled-release are always present
http://tracker.ceph.com/issues/13318 Fixes: #13318

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-10-01 16:04:26 +02:00
Loic Dachary
4da6793d8d install-deps: enable python3
The upstream regression has been fixed, we can re-enable python3
support.

http://tracker.ceph.com/issues/13136 Fixes: #13136

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-09-20 13:18:40 +02:00