Commit Graph

540 Commits

Author SHA1 Message Date
Yuan Zhou
9466d70985 build/ops: adding build spec for immutable object cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
2019-03-22 00:16:26 +08:00
Sage Weil
0a7077a855 Merge PR #26237 into master
* refs/pull/26237/head:
	Revert "qa: update test_envlibrados_for_rocksdb.sh for libradospp split"
	doc/librados: explicitly mention that the C++ API is not stable
	ceph.spec: force use of upgrade devtoolset-gcc under RHEL 7
	librados: add symbol versioning to the C++ API
	librados: add symbol versioning to the C API
	librados: revert librados3/libradoscc back to librados2

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-02-21 11:18:46 -06:00
Jason Dillaman
d2b1ab49f5 librados: add symbol versioning to the C++ API
The future goal would be to change the version for each Ceph major
release to ensure C++ applications will need to be recompiled against
the librados C++ API since we don't guarentee ABI stability.

Fixes: https://tracker.ceph.com/issues/38177
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-02-21 08:27:38 -05: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
Sage Weil
e784b697b4 Merge PR #26526 into master
* refs/pull/26526/head:
	rpm,deb: remove btrfs-tools as a build-dependency
	rpm,deb: remove bc as a build-dependency

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
2019-02-20 21:36:13 -06:00
Jason Dillaman
65c8733b56 librados: revert librados3/libradoscc back to librados2
For backwards compatibility and upgrade reasons, the librados2
API needs to be preserved and it needs to continue to be compatible
with dependent libraries like librbd1.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-02-20 14:59:26 -05:00
Sage Weil
d198831c44 Merge PR #26262 into master
* refs/pull/26262/head:
	mgr/orch/ssh: add qa test
	qa: install/exclude ceph-mgr-ssh package
	debian: package ssh orchestrator
	spec.ceph: package ssh orchestrator
	ssh/orch: add ssh orchestrator
2019-02-20 13:05:11 -06:00
Noah Watkins
b5972a53d9 debian: package ssh orchestrator
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-02-20 09:45:48 -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
01c9e2a632 rpm,deb: remove btrfs-tools as a build-dependency
this change reverts 7d48d21a

we are using bluestore for testing by default on GNU/Linux now. and on
FreeBSD, install-deps.sh does not look at spec.in or d/control.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-20 11:32:11 +08:00
Kefu Chai
8bec5c99f4 rpm,deb: remove bc as a build-dependency
this change reverts 3ff4be6d, because in ce9c0298, we replaced bc
with awk.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-20 11:32:05 +08:00
Kefu Chai
2fb4cddd6f rpm,deb: add python-{openssl,requests} as make_check dependencies
Fixes: https://tracker.ceph.com/issues/37584
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-17 02:27:07 +08:00
Kefu Chai
ee5357d029 debian/control: mark test-time dependencies
mark dependencies used for `make check` run with `Make-Check`

in which, socat is used only by `qa/standalone/mon/mon-bind.sh`, we
could mark it with QA-Run, but since there only a single dependency in
this bucket, let's wait for more of them before adding the QA-Run
category.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-17 02:23:38 +08:00
Kefu Chai
ac1f62b750 rpm,deb: remove btrfs-tools as a build-dependency
this change reverts 7d48d21a

we are using bluestore for testing by default on GNU/Linux now. and on
FreeBSD, install-deps.sh does not look at spec.in or d/control.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-16 21:47:55 +08:00
Kefu Chai
502160594a rpm,deb: remove bc as a build-dependency
this change reverts 3ff4be6d, because in ce9c0298, we replaced bc
with awk.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-16 21:47:55 +08:00
Yuval Lifshitz
6bc82a7485 rgw: pubsub fix debian packaging dependencies
Signed-off-by: Yuval Lifshitz <yuvalif@yahoo.com>
2019-02-13 21:26:18 +02:00
Kefu Chai
3eefd5c524 debian: split ceph-mgr-dashboard plugin into its own package
to make ceph-mgr-dashboard a separated package

- helps to reduce the repo size of downstream. because
  ceph-mgr-dashboard is an architecture independent package. by
  making it separated package avoids needless duplication of
  the same data in mutiple .debs.
- gives user a fine grained control of selection.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-13 17:42:01 +08:00
Kefu Chai
729104e5f2
Merge pull request #26379 from tchaikov/wip-remove-jinja2
rpm,deb: remove python-jinja2 dependency

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2019-02-13 17:29:58 +08:00
Kefu Chai
c2def40661 rpm,deb: remove python-jinja2 dependency
python-jinja2 dependency was added for the dashboard v1 in 87399bea. but
dashboard v2, which is now known as "dashboard" has taken the place of
the old dashboard. and dashboard now does not use jinja2, so we should
drop this dependency.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-12 17:16:33 +08:00
Kefu Chai
9b020d0104 debian/control: change Architecture python plugins to "all"
change following plugins' Architecture to "all", as they are pure python
plugins, and are architecture-independent packages.

- ceph-mgr-diskprediction-cloud
- ceph-mgr-diskprediction-local
- ceph-mgr-rook

this also matches their couterparts in ceph.spec.in, where we have
```
BuildArch:  noarch
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-12 16:23:47 +08:00
Sage Weil
b4fa47390d Merge PR #25977 into master
* refs/pull/25977/head:
	qa/suites: exclude new packages when installing old versions
	rpm: add dependency on python-kubernetes module to ceph-mgr-rook package
	rpm,deb: add rbd_support module to ceph-mgr
	packaging: split ceph-mgr diskprediction and rook plugins into own packages

Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2019-02-09 13:46:51 -06:00
Dan Mick
5c137e7052 packaging: split ceph-mgr diskprediction and rook plugins into own packages
There are troublesome dependencies for both, so being able to deselect
them is useful

Signed-off-by: Dan Mick <dan.mick@redhat.com>
2019-02-04 14:53:35 -08:00
Sage Weil
9aaa354cad build: disable kerberos for nautilus
We can re-enable after we branch.  For N, though, there is no point in dragging
in the dependencies and implying there is something that works.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-02-03 14:27:49 -06:00
Mykola Golub
275bedc8d5
Merge pull request #26133 from dillaman/wip-37913
rbd: implement new 'rbd perf image iostat/iotop' commands

Reviewed-by: Mykola Golub <mgolub@suse.com>
2019-01-29 12:41:23 +02:00
Jason Dillaman
df4db9c5cb rbd: new 'perf image iostat/iotop' actions
This provides an 'iostat' and 'top'-like IO monitor for all
RBD images

Fixes: http://tracker.ceph.com/issues/37913
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-01-28 20:52:02 -05:00
Kefu Chai
77109d7582
Merge pull request #25916 from tchaikov/wip-debian-librados-dev
debian: librados-dev should replace librados2-dev

Reviewed-by: Neha Ojha <nojha@redhat.com>
2019-01-27 21:41:39 +08:00
Kefu Chai
d15f1c3c14 debian: librados-dev should replace librados2-dev
the librados2 to librados3 transition does not change this.

it's a regression introduced by 286ef1fe

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-01-11 23:37:41 +08:00
Brad Hubbard
885a37ac02 mount.fuse.ceph: Fix ambiguous shebang
The ambiguous shebang now produces an error in rawhide and halts the
build. In f29 this was a warning. Add python3 as a dependency for
ceph-fuse.

Fixes: http://tracker.ceph.com/issues/37787

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2019-01-10 10:32:07 +10:00
Tim Serong
0b29fbcc7b Revert "spec: fix cython package version to less than 0.29"
This reverts commit 088fbff7df.

Signed-off-by: Tim Serong <tserong@suse.com>
2018-12-17 23:56:28 +11:00
Sage Weil
59d0844c12 Merge PR #23550 into master
* refs/pull/23550/head:
	auth: Kerberos authentication
2018-12-05 13:42:17 -06:00
oliveiradan
67784065ce auth: Kerberos authentication
Signed-off-by: Daniel Oliveira <doliveira@suse.com> (github: oliveiradan)
2018-12-03 18:55:46 -07:00
Ricardo Dias
088fbff7df
spec: fix cython package version to less than 0.29
Cython version 0.29 removed the support for python subinterpreters,
which completely breaks ceph-mgr funcionality.

See cython repo commit:
7e27c7cd51

Fixes: http://tracker.ceph.com/issues/37472

Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-11-29 15:31:16 +00:00
Matthew Vernon
dd24ddcbf7 debian: correct ceph-common relationship with older radosgw package
Fixes: https://tracker.ceph.com/issues/36741

9fd30b93f7 moved
/etc/bash_completion.d/radosgw-admin from radosgw to ceph-common. This
means that if you try and install a newer ceph-common over an older
radosgw, there's a conflict, and the install fails:

```
Unpacking ceph-common (12.2.8-1xenial) over (10.2.9-0ubuntu0.16.04.1) ...
dpkg: error processing archive ceph-common_12.2.8-1xenial_amd64.deb (--install):
 trying to overwrite '/etc/bash_completion.d/radosgw-admin', which is also in package radosgw 10.2.9-0ubuntu0.16.04.1
```

Per Debian policy (
https://www.debian.org/doc/debian-policy/ch-relationships.html#overwriting-files-in-other-packages
) the correct way to handle a package taking over a file is for a
versioned Replaces and Breaks.

The change went into 12.0.3, so this commit adds Replaces and Breaks
against radosgw less than that version. It should be backported to
Luminous to avoid issues with upgrades from older versions (Jewel and
Kraken).

Signed-off-by: Matthew Vernon <mv3@sanger.ac.uk>
2018-11-09 09:35:35 +00:00
Kefu Chai
cac0f5802a rpm,deb: libradospp1-dev should depend on librados-dev
because librados.hpp `#include`s librados.h

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-08 07:00:24 -08:00
Kefu Chai
70a26ed476 debian: libradospp-dev should depend on libradospp1 not libradospp
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-07 14:05:25 -08:00
Kefu Chai
d5aa8c61fd debian: loosen the Depends of python bindings packages
- python-* packages are using the C APIs which are not changed across
librados2 and librados3.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-07 14:05:25 -08:00
Kefu Chai
286ef1fe35 debian: s/librados2/librados3/
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-02 00:15:31 +08:00
Kefu Chai
d4857fef24 debian: add libradospp* packages
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-11-02 00:15:31 +08:00
Lenz Grimmer
88719afc73
Merge pull request #22833 from rjfd/wip-dashboard-jwt
mgr/dashboard: JWT authentication

Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-10-30 10:50:20 +01:00
Ricardo Dias
2f5e7c3392
mgr/dashboard: backend: JWT based authentication
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-10-29 15:47:14 +00:00
Nathan Cutler
7349218acb build/ops: drop sgdisk build/runtime dependencies
sgdisk was a dependency of ceph-disk, which has been ripped out.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-10-23 07:56:13 +02:00
Thomas Serlin
b012016cd5 debian/control: require fuse for ceph-fuse
This is the Ubuntu equivalent for:

https://github.com/ceph/ceph/pull/17120
http://tracker.ceph.com/issues/21057

Installing "ceph-fuse" should pull in the "fuse" package automatically.

Signed-off-by: Thomas Serlin <tserlin@redhat.com>
2018-08-21 15:55:39 -04:00
Kefu Chai
631647eee0 debian: mark python-ceph-argparse Arch = all
as the python{3,}-ceph-argparse is pure python

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-08-09 20:19:34 +08:00
Kefu Chai
004713eadd tools/cephfs,deb: package cephfs-shell
change `#!/usr/bin/env python3` to `#!/usr/bin/python3` as per
https://www.debian.org/doc/packaging-manuals/python-policy/programs.html#interpreter-directive

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-08-09 20:19:34 +08:00
Kefu Chai
03c7bee4ee deb,rpm: python-cephfs should depend on python-ceph-argparse
python-ceph-argparse is required by ceph_volume_client.py. hence we do
need list it as a dependency of python-cephfs.

Fixes: http://tracker.ceph.com/issues/24919
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 20:53:50 +08:00
Kefu Chai
b35823cbbc deb,rpm: python-cephfs should depend on python-rados
in `cephfs.pyx` we `cimport rados`, and in
LibCephFs.create_with_rados(), Rados.cluster is accesssed without GIL,
so we need to import the rados module for cephfs to ensure that it's
safe to access this attribute without GIL.

dh_python2 and dh_python3 cannot fill ${python:Depends} and
${python3:Depends} with this dependency, so we need to set it
explicitly.

Fixes: http://tracker.ceph.com/issues/24918
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 15:22:16 +08:00
Sage Weil
884a0d24ab Merge PR #22745 into master
* refs/pull/22745/head:
	debian/control: require sudo
	ceph.spec: require sudo
	ceph.spec: install etc/sudoers.d/ceph-osd-smartctl
	debian: install etc/sudoers.d/ceph-osd-smartctl
	sudoers.d/ceph-osd-smartctl: allow user ceph to run smartctl as root

Reviewed-by: Erwan Velu <erwan@redhat.com>
2018-07-06 13:43:15 -05:00
Sage Weil
15732cdfc1 Merge PR #22871 into master
* refs/pull/22871/head:
	deb/rpm: add python-six as build-time and run-time dependency

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
2018-07-06 13:42:38 -05:00
Kefu Chai
af2c91ace6 deb,rpm,do_cmake: switch to cmake3
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-06 13:29:21 +08:00
Sage Weil
6b0a270842 debian/control: require sudo
Signed-off-by: Sage Weil <sage@redhat.com>
2018-07-05 16:28:01 -05:00
Kefu Chai
e53bb2c5a3 deb/rpm: add python-six as build-time and run-time dependency
python-six is used by dashboard's controllers. please note,
${python:Depends} is able to fill the installation dependencies for
debian package. so python-six is not added to Requires of ceph-mgr.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-05 18:42:57 +08:00
Kefu Chai
0e76e87d35
Merge pull request #20133 from smithfarm/wip-redundant-recommends
build/ops: deb: drop redundant ceph-common recommends

Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-07-05 14:45:24 +08:00
haodong tang
a240aef143 msg/async/rdma: add RDMA iWARP protocol support
Signed-off-by: Haodong Tang <haodong.tang@intel.com>
2018-06-20 14:08:20 +08:00
Kefu Chai
67ac7496b7 debian: let ceph-mgr suggests python-influxdb
the influx plugin requires influxdb python module to function, but
influxdb mgr plugin is optional for users who don't use influxdb.
so it's marked "Suggests" at this moment before we use a more flexible
packaging scheme.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-04-23 17:30:40 -04:00
Nathan Cutler
fac2359378
Merge pull request #21356 from smithfarm/wip-23657
rpm,debian: Ensure all ceph-disk runtime dependencies are declared for ceph-base

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Alfredo Deza <adeza@redhat.com>
2018-04-13 15:59:11 +02:00
Kefu Chai
ad79adc550
Merge pull request #21345 from ceph/fix_e2fsprogs
specs: require of e2fsprogs

Reviewed-by: Sébastien Han <seb@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Erwan Velu <erwan@redhat.com>
2018-04-13 15:51:29 +08:00
Casey Bodley
524eed75af debian: add build dependency for lz4
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-04-12 09:35:40 -04:00
Nathan Cutler
acf6423cf6 build/ops: move parted runtime dependency to ceph-base
Since ceph-disk has been moved from "ceph-osd" to "ceph-base", all of
ceph-disk's dependencies should also be moved, provided they are not
needed by anything else.

Fixes: http://tracker.ceph.com/issues/23657
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-04-12 03:28:40 +02:00
Guillaume Abrioux
a991778341 specs: require of e2fsprogs
in ceph/ceph-container we've realized that `e2fsprogs` isn't installed in
centos container image because ceph hasn't a dependency for it.
It has for consequence to fail when deploying a containerized cluster
with dmcrypt when using centos image.

Typical error encountered:

typical error:
```
......
get_dm_uuid: get_dm_uuid /dev/sda uuid path is /sys/dev/block/8:0/dm/uuid
get_dm_uuid: get_dm_uuid /dev/sda uuid path is /sys/dev/block/8:0/dm/uuid
get_dm_uuid: get_dm_uuid /dev/sda5 uuid path is /sys/dev/block/8:5/dm/uuid
populate: Creating lockbox fs on %s: mkfs -t ext4 /dev/sda5
command_check_call: Running command: /usr/sbin/mkfs -t ext4 /dev/sda5
mkfs.ext4: No such file or directory
Traceback (most recent call last):
  File "/usr/sbin/ceph-disk", line 9, in <module>
    load_entry_point('ceph-disk==1.0.0', 'console_scripts', 'ceph-disk')()
......
```

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
2018-04-11 19:22:10 +02:00
Yehuda Sadeh
ada9b94849 rgw: add distro dependencies for liboath
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2018-04-09 07:02:17 -07:00
Nathan Cutler
233fe8338e
Merge pull request #17530 from smithfarm/wip-21264
tools: cleanup: rip out ceph-rest-api

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: John Spray <john.spray@redhat.com>
2018-03-06 15:22:20 +01:00
Nathan Cutler
b7e638f7e4 build/ops: deb: move python-jinja2 dependency to mgr
87399bea83 introduced an explicit dependency on
python-jinja2, but mistakenly as an overall build dependency instead of as a
runtime dependency of ceph-mgr as intended.

Fixes: http://tracker.ceph.com/issues/22457
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-03-05 22:04:34 +01:00
Nathan Cutler
495742f7dd tools: cleanup: rip out ceph-rest-api
Obsoleted by the mgr REST API.

Fixes: http://tracker.ceph.com/issues/21264
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-03-05 22:01:51 +01:00
Ricardo Dias
57f270921f
debian/control: add dashboard_v2 development dependencies
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-05 13:07:14 +00:00
Volker Theile
0281b2cb88
mgr/dashboard_v2: Add command to create/update username/password.
Signed-off-by: Volker Theile <vtheile@suse.com>
2018-03-05 13:06:58 +00:00
Marcus Watts
cb12e1afd5 build/link against curl w/ openssl not nss or gnutls. (debian)
curl + gnutls has some big significant performance hits at least
when doing keystone validation.  nss has long-term memory growth
issues.

Signed-off-by: Marcus Watts <mwatts@redhat.com>
2018-02-28 00:23:55 -05:00
Nathan Cutler
8169164e61 build/ops: deb: drop redundant ceph-common recommends
Since ceph-common is a hard dependency of ceph-base, packages that
require ceph-base do not need to recommend ceph-common.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2018-01-26 13:22:34 +01:00
Kefu Chai
1f21f2f3a3
Merge pull request #19870 from liewegas/wip-strip-ceph-base
debian/rules: strip ceph-base libraries

Reviewed-By: Kefu Chai <kchai@redhat.com>
2018-01-15 11:24:08 +08:00
Kefu Chai
218df657d4
Merge pull request #19529 from thmour/master
ceph-volume: Require lvm2, move to osd package

Reviewed-by: Alfredo Deza <adeza@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-01-10 23:28:52 +08:00
Sage Weil
b5bd43323f debian: add -dbg packages for python-{rados,rgw,rbd,cephfs}
Signed-off-by: Sage Weil <sage@redhat.com>
2018-01-09 10:53:01 -06:00
Theofilos Mouratidis
02bc369e05 ceph-volume: Require lvm2, move to osd package
Fixes: http://tracker.ceph.com/issues/22443

Signed-off-by: Theofilos Mouratidis <t.mour@cern.ch>
2017-12-25 16:52:07 +01:00
John Spray
87399bea83 packaging: explicit jinja2 dependency for dashboard
We were getting this via python-flask, when mgr was
installed on nodes with ceph-mon, but for correctness
in general we should depend on it from ceph-mgr (it
is imported by the dashboard module).

Fixes: http://tracker.ceph.com/issues/22457
Signed-off-by: John Spray <john.spray@redhat.com>
2017-12-19 11:52:29 +00:00
Kefu Chai
809a0ce816 debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move
this is a follow-up of #19328. we need to get this change into 12.2.3.
so better off do the switch somewhere after 12.2.2 which has been
tagged, and before 12.2.3, which is not tagged yet.

please note, this is not targetting master, because i want to make
sure the change number (the <num> in << 12.2.2-<num>) is correct. it
does not hurt if it's not, as long as it is ">> 12.2.2", so the replace
machinery in 12.2.3 works, and it covers the releases where the
ceph-{osdomap,kvstore,monstore}-tool are not move yet. but why don't
make it more right?

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit cdf49ba664)
2017-12-08 14:51:08 +08:00
Sage Weil
9271d52851 debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move
The backport didn't make 12.2.2, but it will be in 12.2.3.

Fixes: http://tracker.ceph.com/issues/22319
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit e0c814266f)
2017-12-08 14:51:08 +08:00
Kefu Chai
b3ceafe7d8 cmake,rpm,deb: update to accommodate SPDK v17.10
* cmake/modules/BuildSPDK.cmake: add lvol
* cmake/modules/BuildDPDK.cmake: add pci and bus_pci
* ceph.spec.in, cmake/modules/BuildSPDK.cmake, debian/control:
  re-introduce libuuid dependency, as 17.07 added lvol. and the latter
  depends on uuid.
* cmake/modules/BuildSPDK.cmake: avoid introducing local variable of
  `iface_libs`.
* cmake/modules/patch-dpdk-conf.sh: disable
  CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES, this option introduces the
  balanced allocation of memory. but it also requires libnuma-dev.
  let's disable it for now.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-29 18:03:23 +08:00
Kefu Chai
22d8dde1d5 rpm,deb: add cunit1 as build dependency
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-17 15:40:00 +08:00
Kefu Chai
ed988fc660 debian: fix package relationships after d3ac8d18
d3ac8d18 moves ceph-client-debug from ceph-test to ceph-base without
updating the package relationships between the two involved packages.
which results in:

dpkg: error processing archive /var/cache/apt/archives/ceph-test_12.2.1-241-g43e027b-1trusty_amd64.deb (--unpack):
 trying to overwrite '/usr/bin/ceph-client-debug', which is also in package ceph-base 10.2.10-14-gcbaddae-1trusty
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-10-23 20:18:15 +08:00
Kefu Chai
50dad805d9 debian: fix package relationships after 40caf6a6
we have issues when running upgrade tests:

dpkg: error processing archive /var/cache/apt/archives/ceph-osd_13.0.0-2201-g6cc0b41-1trusty_amd64.deb (--unpack):
trying to overwrite '/usr/bin/ceph-osdomap-tool', which is also in package ceph-test 10.2.10-14-gcbaddae-1trusty

in 40caf6a6, we moves some tools from ceph-test out into ceph-osd,
ceph-mon and ceph-base respectively. but didn't update the relationships
between these packages accordingly. this causes the upgrade failure.

see https://www.debian.org/doc/debian-policy/#document-ch-relationships
for more details on "Breaks" and "Conflicts".

the reason why the package version to be replaced/conflicted is 12.2.2
is that: i assume that this change will be backported to luminous, and
the next release of it will be 12.2.2 .

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-10-23 20:18:14 +08:00
Sage Weil
6b2458065e deb,rpm: require socat for ceph-test
Used by qa/standalone/mon/mon-bind.sh.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-24 15:44:51 -04: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
James Page
1341de99a0 debian: wrap-and-sort all files
'wrap-and-sort -a -t' debian folder to apply consistent
ordering/formatting to all files.

This makes synchronization of debian package changes
between Ceph packages and Ubuntu packages easier to
manage.

Signed-off-by: James Page <james.page@ubuntu.com>
2017-07-04 17:38:39 +01:00
Boris Ranto
4dc471ed60 restful: Introduce create-self-signed-cert command
This implements a create-self-signed-cert command for the ceph-mgr
restful interface.

It is designed so that it will try to restart the module once the cert
is created.

Signed-off-by: Boris Ranto <branto@redhat.com>
2017-06-21 12:32:49 -04:00
Sage Weil
de026f15f8 ceph.spec,debian: remove auto-generated self-signed mgr restful cert
Signed-off-by: Sage Weil <sage@redhat.com>
2017-06-20 17:25:05 -04:00
Sage Weil
c2e346cf12 Merge pull request #15562 from tchaikov/wip-no-assert.h
common,osdc: remove atomic_t completely

Reviewed-by: Sage Weil <sage@redhat.com>
2017-06-08 20:38:23 -05:00
Sage Weil
0f23f35210 debian/control: Build-Depends on python-pecan
This is needed for make check (so that restful mgr module can load).

Signed-off-by: Sage Weil <sage@redhat.com>
2017-06-08 17:45:47 -04: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
Sage Weil
ba32343ed7 Merge pull request #15513 from Fabian-Gruenbichler/fixmgrdesc
debian: ceph-mgr: fix package description

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: John Spray <john.spray@redhat.com>
2017-06-06 15:31:22 -05:00
Fabian Grünbichler
90c1a82fc1 ceph-mgr: fix package description
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-06-06 15:21:55 +02:00
Kefu Chai
4c5064e7de debian,rpm: add jq dependency to ceph-test
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-06-02 13:02:52 -04:00
Sage Weil
2984e5a120 Merge pull request #14457 from ceph/wip-rest-flask
ceph-mgr: Implement new pecan-based rest api
2017-05-31 17:48:43 -05:00
Nathan Cutler
69e8beede8 build/ops: drop libfcgi build dependency
Follow-up on https://github.com/ceph/ceph/pull/15070 and https://github.com/ceph/ceph/pull/15098

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-05-25 11:30:14 +02:00
Boris Ranto
92fa210aaa restful: Generate cert/key in post scripts
This is the simplest way to generate the keys and probably the least
likely to cause trouble in the future.

Signed-off-by: Boris Ranto <branto@redhat.com>
2017-05-22 19:21:23 +02:00
Boris Ranto
f59e9bf0bb restful: Use fixed cert/pkey files
This allows users to create their own certificates that are signed by a
CA. If the keys are not present then a self-signed certificate will be
created and distributed amongst all the mgr nodes.

It also allows us to get rid of the pyOpenSSL dependency.

Signed-off-by: Boris Ranto <branto@redhat.com>
2017-05-22 19:20:37 +02:00
Boris Ranto
5ed2631b09 ceph-mgr: Implement new pecan-based rest api
The new rest API uses pecan for the restful functionality and simplifies
the code significantly. It should be mostly equivalent in functionality
to the django-based rest API. The api is self-documenting via /doc
endpoint.

Signed-off-by: Boris Ranto <branto@redhat.com>
2017-05-22 19:18:58 +02:00
Dan Mick
bd6f2d9210 ceph.spec.in, debian/control: build/runtime dependency for cherrypy
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-05-18 22:09:08 -07: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
7f72100be5 Merge pull request #14793 from dmick/wip-prio-and-daemonperf
ceph: perfcounter priorities and daemonperf updates to use them
2017-05-05 17:41:55 -05:00
Yuri Weinstein
1cce4c7f68 Merge pull request #14723 from neha-ojha/objclass-sdk
osd: objclass sdk

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-05-03 09:28:59 -07:00
Dan Mick
9e3d7d9fc1 ceph.spec.in, debian/control: add dep for python-prettytable
mgr/pybind/fsstatus already required this, but ceph.in does now.
Add as a build dependency as well to handle tests.

Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-04-27 17:01:14 -07:00
Neha Ojha
b7215b025a objclass-sdk: create SDK for Ceph object classes
Creates an installable version of "src/include/rados/objclass.h" that allows
object classes to be built outside of the Ceph tree. cls_sdk is an example
of such an object class.

Signed-off-by: Neha Ojha <nojha@redhat.com>
2017-04-27 13:05:53 -07:00
Kefu Chai
cd4dbaea3a debian: package crypto plugins only on amd64
currently, only plugin based on isa-l is installed. archs other than
amd64 will not have this directory or the plugin(s) residing in it.
hence dh_install will fail when trying to copy nonexistence file/dir.

* debian/ceph-common.install: chmod +x, and only install crypto on amd64
  so dh_install can filter the install list using dh-exec
* debian/control: depends on dh-exec now. dh-exec v0.13 introduces support
  for filtering based on architecture. see dh-exec's changelog for more
  details. but trusty only offers dh-exec v0.12. so do not require ">=
  0.13) at this moment.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-04-27 15:14:16 +08:00
DanielBar-On
0aeabb2b51 msg/async/rdma: compile with rdma as default
Issue: 992583
Issue: 992580

Change-Id: I24128b87294d3083c44c934f7d4bed554dd1f8a4
Signed-off-by: DanielBar-On <danielbo@mellanox.com>
2017-03-09 14:20:36 +02:00
Sage Weil
4e734ca4d9 debian/control: add ceph-base-dbg
Signed-off-by: Sage Weil <sage@redhat.com>
2017-03-05 14:38:12 -05:00
Nathan Cutler
769b695465 build/ops: add psmisc dependency to ceph-base (deb and rpm)
Fixes: http://tracker.ceph.com/issues/19129
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-03-02 12:42:34 +01:00
Kefu Chai
0d43b76268 debian: drop boost build dependencies
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-02-19 20:05:52 +08:00
Nathan Cutler
9bd91dc5d9 Merge pull request #13338 from kshtsk/add-bc-to-deps
ceph.spec.in, debian/control: Add bc to build dependencies

Reviewed-by: Dan Mick <dan.mick@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
2017-02-10 10:28:10 +01:00
Kyr Shatskyy
3ff4be6d68 ceph.spec.in, debian/control: Add bc to build dependencies
The bc is missing for ceph-helpers.sh

Fixes: http://tracker.ceph.com/issues/18876
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
2017-02-10 00:43:53 +01:00
Kefu Chai
2c7958ff7a debian: remove xml2 from ceph-test's Depends
as we are not using any of the binaries offered by xml2. and ceph.spec
does not reference xml2 either.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-01-20 17:56:28 +08:00
Casey Bodley
96923c726c deb: update python-rgw dependencies to librgw2
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-11-09 17:33:13 -05:00
Sage Weil
ffc3dd6e9a debian: add python-rgw package
Signed-off-by: Sage Weil <sage@redhat.com>
2016-11-09 12:22:46 -05:00
John Spray
f80c7a8f20 Merge pull request #11647 from ceph/wip-jlayton-cephfs
libcephfs client API overhaul and update

Reviewed-by: John Spray <john.spray@redhat.com>
2016-11-07 21:07:40 +01:00
Yuri Weinstein
a7dae73800 Merge pull request #11365 from badone/wip-lsb_release-remove
common: Remove the runtime dependency on lsb_release

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Ken Dreyer (Red Hat) <kdreyer@redhat.com>
2016-10-31 15:29:25 -07:00
Jeff Layton
c078dc0daa dpkg: libcephfs1 -> libcephfs2 package rename
Signed-off-by: Jeff Layton <jlayton@redhat.com>
2016-10-25 13:06:29 -04:00
Nathan Cutler
26f0ebd1d4 build/ops: deb: add python dependencies where needed
this reverts 48f4576 and f140a8c

Fixes: http://tracker.ceph.com/issues/17579
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-10-19 13:43:07 +02:00
Nathan Cutler
fcdef1e9a8 build/ops: deb: put depends on separate lines
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-10-19 13:43:07 +02:00
Brad Hubbard
8b1a57fd34 common: Remove the runtime dependency on lsb_release
With modern releases we should be able to make do with the call to
os_release_parse only which uses /etc/os-release which should be available on
most (all?) releases we currently support. this then allows us to remove the
runtime dependency which pulls in several other packages and would be nice to
avoid.

Fixes: http://tracker.ceph.com/issues/17425
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2016-10-07 14:54:06 +10:00
John Spray
042b6b4454 packaging: add debian packaging for ceph-mgr
...at least, try to!  This is a copy-paste of the ceph-mds
packaging with a search and replace mds to mgr.

Signed-off-by: John Spray <john.spray@redhat.com>
2016-09-29 17:27:17 +01:00
John Spray
88977572f9 packaging: add boost-python dependency
Although ceph-mgr isn't packaged yet, builders
use these files to cue installation of dependencies.

Signed-off-by: John Spray <john.spray@redhat.com>
2016-09-29 17:27:05 +01:00
Brad Hubbard
7e71cd2c81 Remove dependency on sdparm/hdparm
The code requiring a dependency on hdparm has been removed so we can remove it
as a dependency.

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2016-09-14 21:33:36 +10:00
Kefu Chai
2e3b23a7f4 debian: drop python-argparse dependency
and bump up the dependency of python version to 2.7.
py2.6 support was only necessary for older (now unsupported) distro
versions.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-08-19 10:43:51 +08:00
Oleh Prypin
d91d89b718 debian: Add packages for Python 3 bindings
Signed-off-by: Oleh Prypin <oleh@pryp.in>
2016-08-11 16:36:57 +03:00
Nathan Cutler
df14dbf639 deb: merge ceph-fs-common into ceph-common
Fixes: http://tracker.ceph.com/issues/16808
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-07-26 12:45:31 +02:00
Kefu Chai
f11acf2b15 debian: use python:Depends for ceph-{common,base,osd}'s deps
* ceph-base: use ${python:Depends} instead of listing the python
  dependencies manually, dh_python2 will scan the requirements
  of ceph-detect-init. and fill the subst var for us.
* ceph-common: add ${python:Depends}, as it packages ceph,
  and ceph-brag client.
* ceph-osd: it packages ceph-disk, so should add ${python:Depends}
  as its dependencies.

dh_python2 will figure them out.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-07-22 15:02:12 +08:00
Kefu Chai
7db7f236b3 debian: depends on python-all-dev instead of python-dev
* debian/control: Build-Depends: s/python-dev/python-all-dev/, per
    https://wiki.debian.org/Python/FAQ#Build_dependencies

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-07-22 15:02:12 +08:00
Kefu Chai
48f4576de1 debian: remove ${shlibs:Depends} from python-* packages
* debian/control:
  as we have listed the linked libraries in Depends section, for example,
  python-rados depends on librados. and we don't need `dpkg-shlibdeps` to
  help figure out shared library substvar dependencies for us. by removing
  them, we can silence the warnings of
```
warning: dpkg-shlibdeps: package could avoid a useless dependency if
debian/python-rados/usr/lib/python2.7/dist-packages/rados.x86_64-linux-gnu.so
was not linked against libpthread.so.0 (it uses none of the library's
symbols)
```
  -lpthread is introduced by `python-config --ldflags` but it turns out we
  are not using any symbols from pthread in the extension directly. and
  pthread is included in glibc. so this does not added any extra
  dependency to python-* pacakges. but it's desirable to have less
  warnings.
* debian/rules: exclude python-* packages from dh_shlibdeps, as we will
  not use it to prepare the shlib deps substvars for these packages any
  more.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-07-22 15:02:12 +08:00
Kefu Chai
c1c6cfc49c debian: bump compat to 9
dh_auto_configure set -DCMAKE_BUILD_TYPE=None so the default does not
take effect at all. this is on purpose, see [1].

and dpkg-buildflags is able to produce the suggested compiling flags by
debian policy. dh_* can pass these flags to cmake only if it works at
compat>=9, see [2].

and we are safe to move to compat 9, as jewel's supported debian based
distro is jessie (with debhelper 9.20150101), ubuntu trusty (with
debhelper 9.20131227ubuntu1)

---
[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=701233#35
[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653916

Fixes: http://tracker.ceph.com/issues/16744
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-07-21 02:02:58 +08:00
Kefu Chai
a6e9379231 debian/rules: build deb with cmake
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-29 22:26:24 +08:00
Kefu Chai
457ddea9c8 debian/rules: package in a more debhelper way
this helps to keep the build rule simpler, and easier to customize

* -j$(NUMJOBS) is taken care of by 'dh --parallel'
* use 'autoreconf' dh add-on to autoconf cleanup
* add dh-autoreconf to Build-Depends
* bump debhelper compatibility level to 8, as jewel's supported
  debian based distro is jessie (with debhelper 9.20150101),
  ubuntu trusty (with debhelper 9.20131227ubuntu1)

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-29 16:12:24 +08:00
Kefu Chai
f369f4d585 debian: move libcephfs-jni to section "java"
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-18 23:55:00 +08:00
Kefu Chai
62d4aab325 debian: remove X-Python-Version section
it's obsolete and can be removed now,
see
https://www.debian.org/doc/packaging-manuals/python-policy/ch-module_packages.html#s-specifying_versions

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-18 23:55:00 +08:00
Kefu Chai
2454bda3f3 debian: add ${shlibs:Depends} to binary packages' Depends
rationale
* this fixes:
  warning: dpkg-gencontrol: package python-rbd: unused substitution
  variable ${shlibs:Depends}
* and to comply to debian policy. see
  https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#s-dpkg-shlibdeps

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-18 23:54:59 +08:00
Ken Dreyer
115349680b packaging: move parted requirement to -osd subpkg
Prior to this change, ceph-base required the "parted" package, which
meant that any installation of ceph-osd, ceph-mon, or ceph-mds would
pull in the parted package.

Move the parted dependency to ceph-osd, since ceph-disk is the only
thing that uses parted.

The advantage of this change is that Mon and MDS systems will not need
to install the parted package.

Fixes: http://tracker.ceph.com/issues/16095

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-05-31 17:51:55 -06:00
Ken Dreyer
4353eb2721 packaging: drop python-flask dependency from radosgw
The PowerDNS integration code itself is not packaged at this point, so
remove the python-flask dependency from the radosgw package.

Maybe the PowerDNS integration bits could live in a separate
sub-package, eventually.

Fixes: http://tracker.ceph.com/issues/16032
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-05-25 23:28:09 -06:00
Sage Weil
266ccccccf debian,rpm: add jq build dependency
Needed since db517ba917.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-05-06 13:44:16 +02:00
Sage Weil
89154d1e01 debian/control: dh_systemd_start is in the dh-systemd package
Fixes: http://tracker.ceph.com/issues/15573
Signed-off-by: Sage Weil <sage@redhat.com>
2016-04-28 09:13:50 -04:00
Nathan Cutler
f27cda03b7 deb: make ceph-base and radosgw recommend time-daemon
References: http://tracker.ceph.com/issues/15419

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-04-25 22:16:15 +02:00
Dan Mick
fa05d802c6 debian/control: try installing virtualenv first, if it exists
Debian Jessie (at least) now has the virtualenv command in
package 'virtualenv', which depends on python3-virtualenv, and
that's how you get the virtualenv command there.  Earlier
Debian-based releases still use python-virtualenv.  Jessie's
virtualenv command still creates a python2 venv by default.

This will require a followup fix for install-deps.sh
to handle the | correctly, because currently it sends
the string to apt-get, which treats it as a regular expression
alternation of the two package names, so will try to install both.

The problem occurs when packages are installed without Recommended
packages (because jessie's virtualenv package currently Recommends
python-virtualenv); this is the case under pbuilder, and also using
'mk-build-deps --install', and I suspect under other automated
package-building tools.

Note that Build-Requires processing is not specified to
perform the searches in left-to-right order, so even this is
a tenuous workaround.  We probably need distro-specific
debian/ directories.

Signed-off-by: Dan Mick <dan.mick@redhat.com>
2016-03-23 17:38:12 -07:00
Loic Dachary
eb583cbbbf build/ops: in jessie virtualenv is in package virtualenv
The python scripts are not yet compatible with python3, yet it is the
default on jessie. Force the creation of the virtualenv to use python2.7
instead. The wheelhouse is already explicitly populated for both python3
and python2.7 by install-deps.sh, regardless of the default interpreter.

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-03-23 19:56:11 +01:00
Nathan Cutler
c4364b13b7 packaging: align radosgw package description
First, make the Debian package description mention that RGW aims to
implement the Swift API.

Second, replace the RPM package description with the Debian one, both for
consistency and because the Debian one is better.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-03-19 22:43:53 +01:00
Sage Weil
5b18de23b5 Merge remote-tracking branch 'gh/wip-strict-debian-deps' 2016-03-17 17:53:23 -04:00
Yehuda Sadeh
5077d729cb Merge remote-tracking branch 'origin/master' into wip-rgw-ldap 2016-03-12 15:17:03 -08:00
Matt Benjamin
de8367bc27 rgw: require openldap library client headers
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-03-12 13:02:58 -08:00
Sage Weil
41cf56062b Merge remote-tracking branch 'gh/jewel' 2016-03-12 09:03:06 -05:00
Nathan Cutler
a230a3839d debian: make infernalis -> jewel upgrade work
Attempts to install jewel ceph-common, ceph-mon, ceph-osd, and ceph-base
package over infernalis ceph package fail due to files existing in both.

See comment #4 in the tracker issue for a deeper analysis.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-03-12 00:22:07 +01:00
Sage Weil
57c6d3b67a Merge branch 'debian-stretch-dep-fix' of git://github.com/rldleblanc/ceph
Reviewed-by: Sage Weil <sage@redhat.com>
# Conflicts:
#	debian/control
2016-03-11 11:14:18 -05:00
Erwan Velu
7d48d21a53 packaging: Adding btrfs build require
When doing a 'make check', 'qa/workunits/ceph-helpers.sh' does expect the 'btrfs'
command to be available. If not, that make many tests failing.

Signed-off-by: Erwan Velu <erwan@redhat.com>
2016-03-07 20:27:06 +01:00
Ken Dreyer
11b1cdc649 debian: tighten sub-package version dependencies
Prior to this change, users could possibly install some ceph
sub-packages with differing versions. Make each sub-package explicitly
depend on a particular version of its dependencies.

I've purposly excluded ceph-test's dependencies for now (see
http://tracker.ceph.com/issues/10989 for background.)

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-03-04 07:57:36 -07:00
Sage Weil
2786f0bf11 Merge remote-tracking branch 'gh/jewel' 2016-03-02 09:22:28 -05:00
Nathan Cutler
b87f4efb56 packaging: lsb_release build and runtime dependency
The lsb_release executable is being run in multiple places, not least in
src/common/util.cc, which calls it via shell in the collect_sys_info() code
path.

This patch addresses this issue on SUSE- and Debian-derivatives, as well
as reinstating the dependency for RHEL/Fedora after it was dropped in
1560057226.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-03-01 15:14:46 +01:00
Robert LeBlanc
b4f19352bc Python-argparse is a virtual package which stretch wants you to pick
a real package to satisfy the dependency.

Signed-off-by: Robert LeBlanc <robert.leblanc@endurance.com>
2016-02-27 17:16:18 +00:00
Nathan Cutler
cba211dfa8 packaging: pkg_resources.py runtime dependency
ceph-detect-init uses pkg_resources.py

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-27 14:59:54 +01:00
Nathan Cutler
1a0bb0f687 packaging: move python-flask runtime dependency to ceph-mon, radosgw
Flask is used by MON (in the Ceph REST API) and by RGW (powerdns).
Therefore, it only needs to be in the ceph-mon and ceph-radosgw packages.

Also, this commit encloses the specification of the python-flask runtime
dependency in distro-conditional blocks to account for a minor difference
in the package name between RHEL and SUSE.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-27 14:59:54 +01:00
Ali Maredia
d4dd0f495b debian: remove ceph-dbg package and any traces of it
Signed-off-by: Ali Maredia <amaredia@redhat.com>
2016-02-26 13:17:25 -05:00
Ken Dreyer
3fc7fdba91 debian: remove ceph-base's dependency on -mon and -osd
The ceph-base package contains files shared between the -mon, -osd, and
-mds. In other words, the MON, OSD, and MDS servers depend on ceph-base,
but ceph-base should not depend on the leaf packages.

Reported-by: Kefu Chai <kchai@redhat.com>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-02-26 10:51:39 -07:00
Sage Weil
aa92f9dff0 rgw: link against system openssl (instead of dlopen at runtime)
Signed-off-by: Sage Weil <sage@redhat.com>
2016-02-25 11:44:10 -08:00
Ali Maredia
0cbe3dea69 debian/rpm: split mon/osd/mds server packages
Split up the "ceph" package into four new packages:

  1. ceph-mon
  2. ceph-osd
  3. ceph-mds (already done on Debian)
  4. ceph-base (files shared among multiple servers)

and then:

  5. Make "ceph" into a metapackage that depends on both -mon and -osd
    (and -mds, for RPMs).

To describe the outcome of this change another way:

  For RPMs:
  - "ceph-{mon,osd,mds}" Require: ceph-base.
  - "ceph" will become a metapackage that Requires: ceph-{mon,osd,mds}.

  For DEBs:
  - "ceph-{mon,osd,mds}" will Depends: ceph-base.
  - "ceph" will become a metapackage that Depends: ceph-{mon,osd}.
  - "ceph" will continue to Recommends: ceph-mds

New users should "yum install ceph-mon" or "yum install ceph-osd" (or
"apt-get install ceph-mon", etc) in order to install the exact daemons
that they need.

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

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-02-24 16:47:34 -05:00
Matt Benjamin
85e4febb17 librgw: fix new Debian control entries
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 13:07:28 -05:00
Matt Benjamin
de0f86691b librgw: add debian and rpm packaging
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 13:07:24 -05:00
Sage Weil
e211b5b278 Merge pull request #7533 from Cdiscount/master
debian: include cpio in build-requiers

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:45:17 -05:00
Rémi BUISSON
6666300084 debian: fix build-depends
Signed-off-by: Rémi BUISSON <remi.buisson@cdiscount.com>
2016-02-09 14:41:51 +01:00
Josh Durgin
8f0166728b packaging: add an rbd-mirror package
Depend on ceph-common for /etc/ceph. Startup scripts will be added later.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-02-04 00:10:16 -08:00
Marcel Lauhoff
f88fcf032f debian: Add build dep 'libboost-iostreams-dev'
Required by graylog logging backend

Signed-off-by: Marcel Lauhoff <ml@irq0.org>
2016-01-29 15:32:47 +01:00
Kefu Chai
f5da159457 makefile: remove dependency on libedit
turns out we are not using it anymore

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-01-20 00:35:50 +08:00
Jason Dillaman
a290d34ebd Merge remote-tracking branch 'upstream/jewel' 2016-01-14 16:21:05 -05:00
Jason Dillaman
953bdfbccd deb,rpm: add valgrind to build dependencies
Provides necessary support for annotating helgrind
false-positives.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-01-13 09:54:29 -05:00
Josh Durgin
ebdb0a9c30 packaging: add build dependency on python devel package
This is required for building python modules with cython, but for some
reason is not a direct dependency (on debian only a recommends) for
the cython package itself.

Refs: #14059
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-01-12 11:12:30 -08:00
Kefu Chai
0dc0d425ff Revert "Revert "makefiles: remove bz2-dev from dependencies""
This reverts commit 35542eb6ed.
2015-12-23 01:40:54 -08:00
Samuel Just
35542eb6ed Revert "makefiles: remove bz2-dev from dependencies" 2015-12-15 15:12:19 -08:00
Piotr Dałek
a8b5920259 makefiles: remove bz2-dev from dependencies
The only thing that uses bzip2-devel is RocksDB, and it's optional, not
requirement. Drop the bzip2-devel/libbz2-dev dependency entirely, and
let RocksDB use it only if it is already present.

Fixes: #13981
Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
2015-12-15 14:01:51 +01:00
Josh Durgin
701a6626a2 Merge pull request #6768 from marcan/cython
pybind: port the rbd bindings to Cython

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Alfredo Deza <adeza@redhat.com>
2015-12-09 15:45:17 -08:00
Hector Martin
8655cca10b debian/control: make python-rbd depend on minimum librbd version
As the Cython bindings build to a binary module, backwards compatibility with
older librbd ABIs at runtime is not possible, so depend on at least the same
version (or newer).

Signed-off-by: Hector Martin <marcan@marcan.st>
2015-12-02 00:29:55 +09:00
Hector Martin
5113c962ee configure/packaging: introduce Cython dependency
To prepare for the migration of rbd.py to Cython, add Cython as a package
dependency and have the configure script look for it.

Also adds Cython as a dependency for admin/build-doc, and changes the
virtualenv to allow usage of system packages (to avoid having to compile
Cython inside the virtualenv).

With contributions by Josh Durgin <jdurgin@redhat.com>

Signed-off-by: Hector Martin <marcan@marcan.st>
2015-12-02 00:29:54 +09:00
Yunchuan Wen
7bbd54a1e6 add rbd-nbd package
Signed-off-by: Yunchuan Wen <yunchuan.wen@kylin-cloud.com>
2015-11-21 23:26:44 +08:00
Loic Dachary
a0204dc47a build/ops: rbd-replay moved from ceph-test-dbg to ceph-common-dbg
http://tracker.ceph.com/issues/13785 Fixes: #13785

Signed-off-by: Loic Dachary <loic@dachary.org>
2015-11-13 19:11:48 +01:00
Yehuda Sadeh
a5651b867a Revert 0374bb4a2f 2015-11-09 15:24:29 -08:00
Sage Weil
173bfd03c4 rgw: link against system openssl (instead of dlopen at runtime)
Signed-off-by: Sage Weil <sage@redhat.com>
2015-10-29 01:06:36 -04:00
Sage Weil
036d36f4ff debian/control: python-setuptools is a build dependency
cd ./ceph-detect-init ; python setup.py build
Traceback (most recent call last):
  File "setup.py", line 23, in <module>
    from setuptools import setup
ImportError: No module named setuptools

Signed-off-by: Sage Weil <sage@redhat.com>
2015-10-13 08:37:40 -04:00
Ken Dreyer
96486fd6f2 packaging: move rbd-replay* to ceph-common
The rbd-replay* utilities are useful for Ceph users with RBD clients.
Currently the rbd-replay* utilities ship in the "ceph-test" package, and
we intend this ceph-test package for Ceph developers and contributors,
not normal users.

Move the rbd-replay* utilities to "ceph-common".

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

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-09-15 14:01:18 -06:00
Sage Weil
322ad808cd debian/control: build requires cmake
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-03 15:01:34 -04:00
Sage Weil
f69498f320 debian/control: build-requires libboost-regex-dev
Signed-off-by: Sage Weil <sage@redhat.com>
2015-09-03 14:59:37 -04:00
Sage Weil
dbcaa54485 uuid: use boost::random:random_device
The boost mt code uses uninitialized memory for extra randomness,
which is a bad idea in general but more importantly makes valgrind
unhappy.  Use /dev/urandom instead.

Unfortunately this introduces a link time dependency.. meh!

Fixes: #12736
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-24 14:51:47 -04:00
Loic Dachary
d2d540c165 build/ops: add uuid-runtime to debian/control
uuid-runtime was incorrectly removed by
62bfc7a1ab, restore it.

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

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-08-20 16:19:00 +02:00
Rohan Mars
62bfc7a1ab moved to use boost uuid implementation, based on commit 4fe89a7b14
Signed-off-by: Rohan Mars <code@rohanmars.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2015-08-19 06:46:17 -04:00
Ken Dreyer
af336313fe Merge pull request #5344 from trhoden/update_debain_maintainer
debian: Update maintainers and uploaders

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-08-10 17:02:03 -06:00
Sage Weil
bbe84578bf remove rest-bench
This is a weak tool; users should look to cosbench or others instead.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-07-30 13:21:36 -04:00
Travis Rhoden
6f54c61bcf debian: Update maintainers and uploaders
Signed-off-by: Travis Rhoden <trhoden@redhat.com>
2015-07-24 14:00:50 -07:00
Ken Dreyer
c74a2f86a1 packaging: RGW depends on /etc/mime.types
If the mimecap RPM or mime-support DEB is not installed, then the
/etc/mime.types file is not present on the system. RGW attempts to read
this file during startup, and if the file is not present, RGW logs an
error:

  ext_mime_map_init(): failed to open file=/etc/mime.types ret=-2

Make the radosgw package depend on the mailcap/mime-support packages so
that /etc/mime.types is always available on RGW systems.

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

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-07-15 09:14:15 -06:00
Nathan Cutler
8a56c48259 packaging: add find and which dependencies
The postrotate script in src/logrotate.conf uses the which and find utilities
to do its work. Although logrotate itself is only a Recommends, I think which
and find are so ubiquitous that it makes sense to have them as hard
dependencies.

Also, I checked and the package names which and findutils are the same on all
the RPM distros we are currently targeting in the spec file.

In Debian, find is also in a package called findutils while the package
containing 'which' is called debianutils.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-09 21:59:39 +02:00
Ken Dreyer
6a6d82d92a Merge pull request #5076 from SUSE/wip-logrotate-hard-dependency
packaging: make logrotate a hard dependency across all distros

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>

 Conflicts:
	debian/control
2015-07-09 13:40:23 -06:00
Nathan Cutler
05424a803b logrotate.conf: fixes for systemd
Before this patch, the command 'logrotate -f /etc/logrotate.d/ceph'
was generating an error "Failed to reload ceph.target: Job type reload is not
applicable for unit ceph.target".

Before we issue systemctl reload, check that there is at least
one active ceph-* service. (The hyphen is significant.)

Since we use grep, make the grep package a dependency.

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

Signed-off-by: Tim Serong <tserong@suse.com>
Signed-off-by: Lars Marowsky-Bree <lmb@suse.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-26 19:43:44 +02:00
Nathan Cutler
0734cd1ec3 packaging: make logrotate a hard dependency across all distros
Given ceph's reputation for voluminous logs, it makes sense for
logrotate to be a hard dependency for all distros.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-25 16:55:10 +02:00
Loic Dachary
d2cc2b184b tests: use get_pg from ceph-helpers.sh
The semantic and interface of get_pg are the same, that avoids
duplication and the ceph-helpers.sh version is tested and documented.

Make the ceph-test package dependent on xmlstarlet because it is
needed by ceph-helpers.sh.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-06-01 01:11:28 +02:00
Loic Dachary
6f11fbf41f debian: ceph-dbg steals ceph-objectstore-tool from ceph-test-dbg
When ceph-objectstore-tool was moved from ceph-test to
ceph by 61cf5da0b5, the ceph package in
debian/control was updated accordingly, as recommended by
https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces

The same must be done for the ceph-dbg package because
/usr/lib/debug/usr/bin/ceph-objectstore-too is no longer in
ceph-test-dbg.

Although the change was merged may 6th, 2015
8f23382064, teuthology jobs were not
always failing because packages were not systematically upgraded during
the installation. The missing dependencies that were responsible for
this upgrade problem were fixed by
f898ec1e4e on may 18th, 2015 and all
upgrade tests relying on ceph-*-dbg packages started to fail
systematically after this date.

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

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-28 15:50:02 +02:00
Sage Weil
c6f62f518f Merge remote-tracking branch 'gh/next' 2015-05-27 17:25:28 -04:00
Ken Dreyer
110608e5bd debian: move ceph_argparse into ceph-common
Prior to this commit, if a user installed the "ceph-common" Debian
package without installing "ceph", then /usr/bin/ceph would crash
because it was missing the ceph_argparse library.

Ship the ceph_argparse library in "ceph-common" instead of "ceph". (This
was the intention of the original commit that moved argparse to "ceph",
2a23eac549)

http://tracker.ceph.com/issues/11388 Refs: #11388

Reported-by: Jens Rosenboom <j.rosenboom@x-ion.de>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-05-20 11:29:04 -06:00
Ken Dreyer
f898ec1e4e debian: set rest-bench-dbg ceph-test-dbg dependencies
Debian's debug packages ought to depend on their respective binary
packages. This was the case for many of our ceph packages, but it was
not the case for ceph-test-dbg or rest-bench-dbg.

Add the dependencies on the relevant binary packages, pinned to
"= ${binary:Version}" per convention.

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

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-05-18 11:03:38 -06:00
Ken Dreyer
61cf5da0b5 packaging: mv ceph-objectstore-tool to main ceph pkg
This change ensures that the ceph-objectstore-tool utility is present on
all OSDs.  This makes it easier for users to run this tool to do manual
debugging/recovery in some scenarios.

http://tracker.ceph.com/issues/11376 Refs: #11376

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-04-30 15:53:22 -06:00
Kefu Chai
301fe6cbf2 doc: generate man pages in man/Makefile
* move rst files from doc/man/8 into man/8
* extract man_pages setting for sphinx from doc/conf.py to man/conf.py
* generate all man pages in `make install`
* add python-sphinx to Build-Depends
* check for sphinx-build in `configure`
* run changed rst files through sphinx-build in `make check`

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-03-24 12:36:41 +08:00
Ken Dreyer
8a05092880 debian: move /var/lib/ceph/mds to ceph-mds package
On Debian, ceph-mds was split out into its own package in
9d6013e0db, but the /var/lib/ceph/mds
directory was not moved along with the rest of the mds pieces.

The /var/lib/ceph/mds directory is only necessary if a user has
installed ceph-mds. Move it to the ceph-mds subpackage.

http://tracker.ceph.com/issues/10587 Refs: #10587

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-16 10:11:43 -06:00
Loic Dachary
147b1db43f deb: add zlib1g-dev to Build-Depends for Debian/jessie
The zlib1g-dev is installed indirectly for Ubuntu 12.04 or Ubuntu 14.04
but it is only suggested in Debian/jessie. Adding it to the
Build-depends is redundant and harmless for Ubuntu and resolves the
missing dependency for Debian.

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

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-09 15:51:53 +01:00