memory.h was introduced back when the shared_ptrs were still in TR1, but
we've moved to C++17 now. and the C++ clients should be compiled with
a C++11 compatible compiler. so there is no need to have this file anymore.
also replace all references of ceph::shared_ptr and ceph::weak_ptr with
std::shared_ptr and std::weak_ptr accordingly.
Signed-off-by: Kefu Chai <kchai@redhat.com>
* refs/pull/22586/head:
global/signal_handler: one less frame of context
global/signal_handler: write crash dumps to /var/lib/ceph/crash/$uuid/
common/ceph_context: add "assert" and "abort" asok commands
common/assert: record assert info in g_assert_* globals
common: add crash_dir option
common/assert: get rid of duplicate log dump from assert handler
common/BackTrace: add dump()
log: do not discard recent after dumping it
debian,rpm: /var/lib/ceph/crash
* install and package librgw_admin_user.h, so developers can use it to
create rgw user.
* package librgw_admin_user, so user can use it to create rgw user.
Signed-off-by: Kefu Chai <kchai@redhat.com>
This reverts commit 21d941e83b which introduced a
"kludge" to make 32-bit x86 builds work in the openSUSE Build Service (OBS).
The OBS no longer uses i386 in RPM_OPT_FLAGS when the i586 build target is
specified. The current value of RPM_OPT_FLAGS for i586 is:
-fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -O2 -Wall
-D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables
-fasynchronous-unwind-tables -fstack-clash-protection -g
(Side note: we are not currently building Ceph for any 32-bit architectures
in the OBS, and there are no plans to start doing so. That doesn't mean it
won't ever happen, but even if it does, this "kludge" will not be needed.)
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Conflicts:
ceph.spec.in
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>
In Debian "gdisk" is already listed under ceph-base, so this commit is
RPM-only.
sgdisk is only used by ceph-disk (part of "ceph-base"), not by ceph-volume
(part of "ceph-osd")
Fixes: http://tracker.ceph.com/issues/23657
Signed-off-by: Nathan Cutler <ncutler@suse.com>
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>
The license applicable to the files under doc/ was originally declared (in the
top-level file COPYING) to be "Creative Commons Attribution-ShareAlike (CC
BY-SA)" by ed0653b493
This license declaration omitted a version number.
Some time later ef7418421b was merged, mentioning
CC-BY-SA-1.0 as one of the Ceph source code licenses. Although the purpose of that
commit was only to summarize the canonical license information from COPYING, it
unintentionally became the only place in the source code where the doc license
version was specified.
In March 2018, the Debian project warned that CC-BY-SA-1.0 does not meet its
criteria for inclusion in the "free" section of the Debian distribution. (For
that, at least version 3.0 must be used.)
This new commit removes the doc license ambiguity by setting it to CC-BY-SA-3.0
in all places where the license is mentioned.
The exact spelling of the license name is taken from https://spdx.org/licenses/
Fixes: http://tracker.ceph.com/issues/23336
Signed-off-by: Nathan Cutler <ncutler@suse.com>
* Added new CMake flag `WITH_MGR_DASHBOARD_V2_FRONTEND`:
Build the mgr/dashboard_v2 frontend using `npm install && npm run build`
* Set this flag to `OFF` when building packages.
* Removed creation of the frontend from `vstart.sh`
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
build/ops: change WITH_SYSTEMD default to ON
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
The expectation is that _defined_if_python2_absent will be defined
if (and only if) the python2 bcond is not set. Before this patch, if
somebody were to build the package on suse_version 1500 with
--with-python2, the _defined_if_python2_absent would be defined,
which is a bug.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This eliminates several ugly conditional blocks. This commit also does some
cleanup like dropping the ceph-base runtime dependency on "python", which is
implicit in "python-requests".
Signed-off-by: Nathan Cutler <ncutler@suse.com>
The python3-ceph-argparse package is only necessary in environments where
Python 3 might not be available. For distros where Python 3 has become
standard with Python 2 an optional extension (instead of vice versa as
in the current status quo), the files in this package can (and should)
be included in ceph-common directly.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Sometimes the build machine has lots of processor cores and not enough
memory to successfully build Ceph on all of them at once. Calculate
how many parallel build processes we can sustain with the memory we
have and set a lower build parallelism if necessary. Never exceed
the value set by %_smp_mflags even if memory is aplenty.
Credits to Tomáš Chvátal for the original idea and implementation.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Fixes RPMLINT warning "non-standard-group Development/Libraries"
Also, the Group: line is only needed for SUSE so put it in an appropriate
distro conditional.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
With this macro, we can use a single Source0 line for all supported distros.
RH/CentOS/Fedora needs the prefix, while SUSE builds in the OBS use a local
tarball.
Signed-off-by: Nathan Cutler <ncutler@suse.com>