Commit Graph

158 Commits

Author SHA1 Message Date
Alfredo Deza
7ca7b04521 build: add deb rules for ceph-volume systemd service file
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2017-08-04 10:25:57 -04:00
James Page
8d0ebe217c build: execute dh_systemd_{enable,start} after dh_install
Ensure that dh_systemd_* debhelpers are executed after dh_install
has installed the systemd unit and target definitions.

This ensures that targets are enabled by default once installed,
resolving issues with startup of ceph daemons on server reboot.

Fixes: http://tracker.ceph.com/issues/19585
Signed-off-by: James Page <james.page@ubuntu.com>
2017-07-07 17:18:27 +01:00
Fabian Grünbichler
6ce28c406a debian: sync logrotate packaging with downstream
both Ubuntu and Debian put the logrotate script into
ceph-common, to ensure that radosgw logs are rotated as
well.

to prevent duplicate logrotate scripts handling the same log
files, and to minimize the delta between upstream and
downstream packaging, sync this change back upstream.

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

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-06-08 16:12:01 +02:00
Nathan Cutler
25d794d98a build/ops: deb: no rgw Beast frontend on s390x
Signed-off-by: Kefu Chai <kchai@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-05-29 22:47:46 +02:00
Kefu Chai
17ca501fe8 debian: package ceph.logroate properly
see also "man dh_installlogrotate"

Fixes: http://tracker.ceph.com/issues/19390
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-04-18 15:41:15 +08:00
Dan Mick
6a9e81057b debian/rules: invoke cmake with -DBOOST_J
Allow boost build during toplevel cmake from Debian package build
to benefit from multiple processors.  Should speed build a lot
on many-proc machines (say, arm64).  Use argument passed to
debhelper.

Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-03-24 10:53:24 -07:00
John Spray
63ae8579bf Merge pull request #11542 from batrick/systemd-ceph-fuse
systemd: add ceph-fuse service file

Reviewed-by: John Spray <john.spray@redhat.com>
2016-12-14 13:55:33 +00:00
Kefu Chai
b8aaf6978f Merge pull request #12260 from tchaikov/wip-dh-python
debian: apply dh_python to python-rgw also

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-12-05 11:45:16 +08:00
Sage Weil
06321714b2 debian/rules: dump env during build
Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-02 14:05:31 -05:00
Patrick Donnelly
d32d70b783
systemd: add ceph-fuse service file
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-12-01 19:51:37 -05:00
Kefu Chai
c80613f94b debian: apply dh_python to python-rgw also
so the subvar of ${python:Depends} and ${python3:Depends} can be set
properly. also this silences the warnings like

    warning: dpkg-gencontrol: Depends field of package python3-rgw:
unknown substitution variable ${python3:Depends}

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-12-02 00:31:37 +08:00
Bassam Tabbara
c6067f48ec embedded: Add a skeleton libcephd library
libcephd is a library that contains ceph daemon code
that can be statically linked in other applications.

Added MergeStaticLibraries.cmake that can merge static libraries
to form a bigger one. This approach avoids the need to mess with
STATIC libraries all over the code base.

Signed-off-by: Bassam Tabbara <bassam.tabbara@quantum.com>
2016-11-28 23:48:02 -08: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
Owen Synge
d5af77f309 debian/rules:Remove ceph-create-keys for deb packaging
ceph-create-keys should not be started on boot of mons with upstart so should
not exist in the deb.

Signed-off-by: Owen Synge <osynge@suse.com>
2016-11-04 23:04:58 +01: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
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
Kefu Chai
7d7a984846 cmake: make py3 a nice-to-have
python3 is not a hard requirement to build ceph, so make it optional.
add an option named "WITH_PYTHON3" which accepts ON, OFF, or CHECK.

Fixes: http://tracker.ceph.com/issues/17103
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-09-08 21:49:45 +08:00
Kefu Chai
7eac2387c1 debian: should dh_python3 python3-* not python-*
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-08-26 10:50:28 +08:00
Kefu Chai
fe992d6889 Merge pull request #10435 from ceph/wip-debian-rbdmap-service
debian: replace SysV rbdmap with systemd service

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-08-21 18:23:08 +08:00
Kefu Chai
f140a8c2b2 debian: exclude python3* packages in dh_shlibdeps
since we are not using subvar of ${shlibs:Depends} in python3-* packages,
just exclude them in dh_shlibdeps.
this silences warnings like
```
warning: dpkg-gencontrol: package python3-cephfs: unused substitution
variable ${shlibs:Depends}
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-08-19 10:33:13 +08:00
Kefu Chai
49a4bd92f2 debian: enable dh_python3 for python3 packages
so we can use subvars like ${python3:Depends} in debian/control.
this silences the warnings like:
```
warning: dpkg-gencontrol: Depends field of package python3-cephfs:
unknown substitution variable ${python3:Depends}
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-08-19 10:31:43 +08:00
Ken Dreyer
839807118d debian: replace SysV rbdmap with systemd service
Stop shipping /etc/init.d/rbdmap in the Debian packages. Ship the
rbdmap.service systemd unit file instead.

The corresponding change has already been made for RPMs, in
9224ac2ad2.

For Upstart-based systems (eg Ubuntu Trusty), the Debian packages
already contain rbdmap.conf.

(This gets us a tiny bit closer to being able to remove the rbdmap SysV
script from our tree entirely.)

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-08-18 08:54:00 -06: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
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
abe5da0e3a debian: do not run dh-python against non-python packages
some packages do not package python modules or scripts. so override
dh_python2 to exclude them.

this change silences warnings like:
```
warning: dpkg-gencontrol: package ceph-mon: unused substitution
variable ${python:Provides}
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-07-22 14:23:30 +08:00
Loic Dachary
b8a4ca7e4c Merge pull request #9885 from dachary/wip-16351-by-parttypeuuid
udev: always populate /dev/disk/by-parttypeuuid

Reviewed-by: Alexandre Derumier <aderumier@odiso.com>
2016-07-03 13:31:46 +02:00
Daniel Gryniewicz
4cb038c497 debian - set libexec dir to correct value as autotools did
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-07-01 14:12:47 -04:00
Sage Weil
97a9a7eb84 debian/rules: specify sysconf dir explicitly
Signed-off-by: Sage Weil <sage@redhat.com>
2016-06-29 22:26:24 +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
Loic Dachary
35004a628b udev: always populate /dev/disk/by-parttypeuuid
ceph-disk activate-all walks /dev/disk/by-parttypeuuid at boot time. It
is not necessary when udev fires ADD event for each partition and
95-ceph-osd.rules gets a chance to activate a ceph disk or journal.

There are various reasons why udev ADD events may not be fired at
boot (for instance Debian Jessi 8.5 never does it and CentOS 7.2 seems
to be racy in that regard when a LVM root is being used).

Populating /dev/disk/by-parttypeuuid fixes ceph-disk activate-all that
would not work without it. And it guarantees disks are activated at boot
time regardless of wether udev fires ADD events at the right time (or at
all).

The new udev file is a partial resurection of the
60-ceph-partuuid-workaround-rules that was removed by
9f77244b8e. It is given a name that
reflects its new purpose.

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

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-06-23 09:37:05 +02:00
Kefu Chai
e00610a50f debian: add jh_depends for ${java:Depends}
this fixes:
warning: dpkg-gencontrol: Depends field of package libcephfs-java:
unknown substitution variable ${java:Depends}

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-18 23:54:59 +08:00
Kefu Chai
25dfbd09f4 Merge pull request #9476 from ceph/wip-no-unittests-in-deb
packaging: do not package unused unittests in deb

Reviewed-by: Sage Weil <sage@redhat.com>
2016-06-09 01:52:28 +08:00
Kefu Chai
4ba2bb750b debian: do not install *.la files
rationales:
* .la files are worthless
  see http://www.spinics.net/lists/ceph-devel/msg30637.html
* debian does not like it:
  see https://wiki.debian.org/ReleaseGoals/LAFileRemoval
* neither does fedora:
  https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries
* also they are created by libtools, and cmake does not use libtools.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-07 14:08:59 +08:00
Kefu Chai
edeac4baed debian/rules: silence dpkg-shlibdeps warnings
plugins do have unresolved symbols. so exclude them from
dpkg-shlibdeps's scan list. this silences warnings like:

```
dpkg-shlibdeps: warning:
debian/ceph-base/usr/lib/ceph/erasure-code/libec_shec_generic.so.1.0.0
contains an unresolvable reference to symbol
_ZN4ceph6buffer3ptrC1EPNS0_3rawE: it's probably a plugin
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-06-03 15:40:31 +08:00
Alexandre Derumier
13804fafd4 fix deb package /etc/default/ceph location
commit 7384a14f24 have introduce
the /etc/default/ceph file at a wrong location : /etc/default/ceph/ceph
2016-04-28 22:48:52 +02:00
Kefu Chai
f950a0a7f5 debian: install systemd target files
* enable it using dh_systemd_enable
* start the target using dh_systemd_start
* move the dh_installinit, dh_systemd_enable, dh_systemd_start calls
  down, so they can identify the service files if they care about them.

Fixes: http://tracker.ceph.com/issues/15573
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-04-28 10:02:08 +08:00
Sage Weil
9f77244b8e udev: remove 60-ceph-partuuid-workaround-rules
These were added to get /dev/disk/by-partuuid/ symlinks to work on
wheezy.  They are no longer needed for the supported distros (el7+,
jessie+, trusty+), and they apparently break dm by opening devices they
should not.

Fixes: http://tracker.ceph.com/issues/15516
Signed-off-by: Sage Weil <sage@redhat.com>
2016-04-18 09:16:02 -04:00
Sage Weil
9414befb89 debian/rules: include ceph-mds-*.conf upstart files in ceph-mds
These were lost by a typo in 0cbe3dea69

Fixes: http://tracker.ceph.com/issues/15395
Signed-off-by: Sage Weil <sage@redhat.com>
2016-04-06 08:55:49 -04:00
Dan Mick
a29b96ad3a debian/rules: put init-ceph in /etc/init.d/ceph, not ceph-base
When the package name changed from ceph to ceph-base, dh_installinit
started installing the init script into /etc/init.d/ceph-base.  Fix
this by using --name ceph with dh_installinit, which requires
1) naming the .init file ceph-base.ceph.init, and
2) calling dh_installinit separately for each package

Fixes: http://tracker.ceph.com/issues/15329
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2016-03-31 21:13:13 -07:00
Jason Dillaman
f5375dcd1f packaging: added rbd-mirror startup scripts
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-03-18 17:53:06 -04:00
Sage Weil
2786f0bf11 Merge remote-tracking branch 'gh/jewel' 2016-03-02 09:22:28 -05: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
dc54a85664 debian: fix logrotate conf handling
Fixes a failure to build from source; fallout from the server split
change (0cbe3dea69)

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-02-25 10:44:18 -07:00
Ken Dreyer
9a66bf00b2 debian: put libexec files in /usr/lib
SUSE does not allow the use of /usr/libexec, so commit
69291f872e changed the RPM
packaging to put the libexec files into /usr/lib instead. Do the same
thing on Debian.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-02-25 10:44:17 -07: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
de0f86691b librgw: add debian and rpm packaging
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 13:07:24 -05: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
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