Commit Graph

1252 Commits

Author SHA1 Message Date
Kefu Chai
d5932cb8de rpm: BuildRequires fmt-devel on el8
it's included in EPEL8 now.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-05-09 01:54:55 +08:00
J. Eric Ivancich
9d5e9c3031 doc/rgw: add docs for rgw-orphan-list and ceph-diff-sorted
Add man pages and documentation for both tools.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2020-05-04 13:33:56 -04:00
J. Eric Ivancich
e396064d9a rgw: add rgw-orphan-list tool & radosgw-admin bucket radoslist ...
Adds a `radosgw-admin` subcommand and walks the associated bucket
indices and manifests to generate the list of rados objects that
represent the rgw objects in the bucket(s).

Also adds a tool named `rgw-orphan-list`, which uses the radoslist
subcommand, that produces a list in a local file of what appear to be
rgw orphans.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2020-05-04 13:20:08 -04:00
Kefu Chai
f0a4fc14f0
Merge pull request #34090 from trociny/wip-ceph-erasure-code-tool
tools/erasure-code: new tool to encode/decode files

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2020-04-27 11:37:00 +08:00
Sebastian Wagner
9f13c126f6 doc/man: add cephadm
Fixes: https://tracker.ceph.com/issues/44971

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2020-04-23 13:01:02 +02:00
Mykola Golub
56aaaf8a97 test/erasure-code: remove ceph_erasure_code
Its functionality is moved to ceph-erasure-code-tool.

Signed-off-by: Mykola Golub <mgolub@suse.com>
2020-04-13 18:25:09 +01:00
Mykola Golub
53c75eebbd rpm,deb: add ceph-erasure-code-tool to ceph-osd package
Signed-off-by: Mykola Golub <mgolub@suse.com>
2020-04-13 18:25:09 +01:00
Kefu Chai
9748350a79
Merge pull request #34381 from rhcs-dashboard/fix-44721-master
rpm: add python3-saml as install dependency

Reviewed-by: Kefu Chai <kchai@redhat.com>
2020-04-08 15:25:22 +08:00
Ernesto Puerta
d8d3b33633
rpm: add python3-saml as install dependency
`python.*-saml` is required for Ceph-Dashboard SSO support (optional
feature).

Fixes: https://tracker.ceph.com/issues/44721
Signed-off-by: Ernesto Puerta <epuertat@redhat.com>
2020-04-07 18:06:26 +02:00
Nathan Cutler
853ff61805 ceph.spec.in: remove extra tokens at end of %endif directive
RPM 4.15.1 warns: extra tokens at the end of %endif directive

Heed the warning.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2020-04-06 23:00:43 +02:00
Nathan Cutler
48c79c1102 ceph.spec.in: version an Obsoletes
RPM 4.15.1 warns: It's not recommended to have unversioned Obsoletes.

Heed the warning.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2020-04-06 23:00:23 +02:00
Casey Bodley
c89b59428e rgw: remove unused librgw_admin_user
unused and not worth the effort to maintain

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2020-03-25 14:12:55 -04:00
Sage Weil
f1b516d1bf ceph.spec: put prometheus alerts in vendor-neutral location
Signed-off-by: Sage Weil <sage@redhat.com>
2020-03-23 20:13:18 -05:00
Kefu Chai
293e8bdf6c ceph.spec.in: add build deps for Debug build of seastar
it's a regression introduced by
6158bcfdef, which dropped the change to
make Sanitizers optional

since we've switched from xenial to bionic. there is no need to disable
this anymore. we ran into an issue caused by the ancient linker shipped
by xenial before.

Fixes: https://tracker.ceph.com/issues/44658
Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-03-18 11:02:23 +08:00
Sage Weil
603383605f Merge PR #33885 into master
* refs/pull/33885/head:
	Merge pull request #33848 from mchangir/octopus-tests-remove-suprious-whitespace
	Merge PR #33746 into octopus
	Merge PR #33830 into octopus
	Merge PR #33732 into octopus
	Merge PR #33620 into octopus
	Merge pull request #33876 from tchaikov/octopus-cephadm-mypy
	cephadm: add "assert foo is not None" for mypy check
	Merge pull request #33067 from tspmelo/wip-rbd-delete-with-snapshot
	cephadm: add grafana adopt
	Merge PR #33771 into octopus
	Merge PR #33850 into octopus
	Merge PR #33853 into octopus
	Merge PR #33857 into octopus
	Merge PR #32990 into octopus
	Merge PR #33713 into octopus
	Merge PR #33838 into octopus
	qa/tasks/cephadm: no default mon|mgr|crash service specs
	qa/suites/rados/cephadm/upgrade: upgrade start point that supports the no-spec option
	Merge PR #33832 into octopus
	cephadm: bootstrap: wait for mgr to restart after enabling a module
	mgr: add 'mgr_status' tell command
	Merge pull request #33839 from rhcs-dashboard/44538-fix-rgw-grafana-get-put-latencies
	Merge pull request #33743 from votdev/issue_43869_fix_qa_test
	cephadm: create initial mon and mgr service specs too
	cephadm: no need to pregenerate a crash key for the bootstrap host
	mgr/cephadm: do not complain when we don't have enough hosts
	mgr/cephadm: remove orphan daemons
	mgr/cephadm: report size=0 for fabricated ServiceDescription
	mgr/cephadm: safety check to prevent removing all mon|mgr daemons
	mgr/cephadm: prevent scaling mon|mgr below count=1
	mgr/cephadm: do not remove daemons from remove_service
	Merge pull request #33805 from tchaikov/wip-44500
	spec: Podman (temporarily) requires apparmor-abstractions on suse
	mgr/cephadm: Make sure we don't co-locate the same daemon
	monitoring: fix RGW grafana chart 'Average GET/PUT Latencies'
	tests: remove spurious whitespace
	mgr/cephadm: fix service list filtering
	Merge PR #33825 into octopus
	Merge PR #33811 into octopus
	Revert "Merge pull request #33673 from cbodley/wip-denc-enum"
	mgr/cephadm: fix upgrade order
	Merge PR #33801 into octopus
	Merge PR #33822 into octopus
	cephadm: bootstrap: tolerate error return from -h
	Merge PR #33809 into octopus
	Merge PR #32678 into octopus
	cephadm: use `sh` instead of `bash` during enter
	ceph.in: only shut down rados on clean exit
	common/ceph_timer: Pass reference to waited time on stack
	common/ceph_timer: Add test
	common/ceph_timer: Use unique_function, allowing noncopyable events
	common/ceph_timer: Couple cleanups
	common/ceph_timer: Fix namespaces
	common/ceph_timer: Add missing includes
	common/ceph_timer.h: Don't indent contents of a namespace
	mgr/dashboard: Crush rule modal
	mgr/dashboard: Preserve rule selection on pool type change
	mgr/dashboard: Crush rule is only send during replicated pool creation
	mgr/dashboard: Explicit returns in pool form
	mgr/dashboard: Removes fork join in pool form
	mgr/dashboard: Hide ECP actions during ec pool edit
	mgr/dashboard: Pool form erasure/replicated boolean
	mgr/dashboard: Change pool info API endpoint
	mgr/dashboard: Moves ECP info endpoint to UI-API
	mgr/cephadm: add _remove_osds_bg back to main loop
	mgr/cephadm/osd: update removal report immediately
	qa/tasks/ceph_manager: use StringIO for capturing COT output
	qa/standalone/scrub/osd-scrub-repair: force osdmap prop to osds
	qa/standalone/scrub/osd-scrub-test: wait longer for update
	qa/tasks/ceph_manager: capture stderr for COT
	qa/suites/rados/ceph: drop opensuse for now
	mon/MonClient: send logs to mon on separate schedule than pings
	mgr/dashboard: Fix missing ImageSpec usage
	mgr/dashboard: Allow removing RBD with snapshots
	mgr/dashboard: Refactor and cleanup tasks.mgr.dashboard.test_user
	mgr/dashboard: support multiple DriveGroups when creating OSDs
	mon/MonClient: send logs to mon even if we have no keelalive2
	cephadm: flag dashboard user to change password

Reviewed-by: Sebastian Wagner <swagner@suse.com>
2020-03-11 17:38:59 -05:00
Sebastian Wagner
070e5c3e35 spec: Podman (temporarily) requires apparmor-abstractions on suse
`apparmor-abstractions` contains a profile that is required to run podman containers.

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

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2020-03-10 13:57:25 +01:00
Nathan Cutler
fd7cb3dae5 rpm: drop "is_opensuse" conditional in SUSE-specific bcond block
Until now, "ocf" and "libradosstriper" were disabled on SLE, but not
openSUSE.

Leaving them enabled for openSUSE makes it appear as if these features
are expected to do something useful on SUSE.

Dropping the "is_opensuse" conditional has the desirable side effect of
streamlining the SUSE bcond block, and in the spirit of "and that's not
all", we take the opportunity to put the bconds in alphabetical order
for comforting cosmetic effect.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2020-03-06 10:26:44 +01:00
Mykola Golub
62620fc7d3 rpm,deb: fix python dateutil module dependency
(needed for mgr/rbd_support)

Signed-off-by: Mykola Golub <mgolub@suse.com>
2020-02-28 16:29:26 +00:00
Jason Dillaman
d5b155df9b
Merge pull request #33389 from trociny/wip-43619
rbd: schedule for running trash purge operations

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2020-02-27 18:21:14 -05:00
Patrick Seidensal
c0c7f7dacc rpm,deb: poke Python OpenSSL dependencies
to ceph-mgr-modules-core package.

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

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
2020-02-26 15:48:57 +01:00
Mykola Golub
19e5af1433 mgr/rbd_support: use dateutil parser intead of datetime fromisoformat
fromisoformat is available since python 3.7 only.

Signed-off-by: Mykola Golub <mgolub@suse.com>
2020-02-25 09:52:22 +00:00
Kefu Chai
659b09a04d
Merge pull request #33435 from tchaikov/wip-viva-la-module
deb,rpm,doc: s/plugin/module/

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
2020-02-21 19:38:33 +08:00
Kefu Chai
44df72357c rpm,deb: s/plugin/module/
Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-02-20 22:15:54 +08:00
Kefu Chai
589626464d rpm,deb: package always-enabled plugins in a separated package
ceph-mgr depends on it in the sense that these plugins are
a hard dependency of ceph-mgr. like cmake depends on cmake-data,
even if the later cannot function on its own without the former.

the reason why we need a separated package is that mgr modules
are written in python, and should be arch independent. this change
helps the downstream to understand this and help to minimize the
divergence between upstream and downstream, because distros like
debian and its derivatives encourage splitting architecture independent
data into its own package.
see
https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html#architecture-independent-data

also, the python related runtime dependencies are also moved into
ceph-mgr-modules-core.

if a python dependency is shared by another ceph-mgr-* package and
ceph-mgr-modules-core. it's only added to ceph-mgr-modules-core for
simplicity and consistency. as the name of dependency might vary
on different distros, so it's tedious and error-prone to repeat
these conditons and checks.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-02-20 22:00:37 +08:00
Kefu Chai
6cfd31cdbb ceph.spec.in: update to adapt to el7
make sure ceph-mgr installs on el7

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-02-20 21:49:05 +08:00
Sage Weil
151f88d7f9 Merge PR #32677 into master
* refs/pull/32677/head:
	build/ops: make/install osd_support package
	mgr/osd_support: move docs to docs/mgr/osd_support.rst
	mgr/osd_support: new module for osd utility calls

Reviewed-by: Neha Ojha <nojha@redhat.com>
2020-02-19 14:50:40 -06:00
Joshua Schmid
acc05bf06d
build/ops: make/install osd_support package
Signed-off-by: Joshua Schmid <jschmid@suse.de>
2020-02-19 10:33:26 +01:00
Sebastian Wagner
932fd0bb61 spec: ceph-mgr: add missing python3-pyyaml
Remove stray req from the -k8events package, since the base ceph-mgr now
requires it.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2020-02-18 20:03:57 -06:00
Sebastian Wagner
36a5890fb7 debian,spec: Rename orchestrator_cli to orchestrator
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2020-02-17 10:24:01 +01:00
Kiefer Chang
02d56cf7b0
ceph.spec.in: fix python coverage dependency for non-rhel distros
The coverage package under openSUSE (and other distros) are named as
python{major_version}-coverage (without minor version).

Fixes: https://tracker.ceph.com/issues/44164
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
2020-02-17 12:12:26 +08:00
Sage Weil
c42668c47a Merge PR #32775 into master
* refs/pull/32775/head:
	ceph.spec.in: fix python3 dependencies in centos7

Reviewed-by: Kefu Chai <kchai@redhat.com>
2020-02-15 08:37:41 -06:00
Nathan Cutler
6dbe449efe
Merge pull request #32805 from smithfarm/wip-cmake-logging
rpm: add cmake_verbose_logging switch

Reviewed-by: David Disseldorp <ddiss@suse.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
2020-02-13 20:00:27 +01:00
Nathan Cutler
5e98d22380 rpm: add cmake_verbose_logging switch
This switch sets CMAKE_VERBOSE_MAKEFILE and causes the CMakeOutput.log
and CMakeError.log files to be dumped after cmake execution finishes.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2020-02-13 15:13:24 +01:00
Sebastian Wagner
615381659c cmake: Integrate Rook client generation
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2020-02-13 11:33:55 +01:00
Sage Weil
070df40773 Merge PR #33229 into master
* refs/pull/33229/head:
	rpm: define weak_deps for el8

Reviewed-by: Sage Weil <sage@redhat.com>
2020-02-12 08:28:51 -06:00
Kefu Chai
5c70f36111 rpm: define weak_deps for el8
RHEL/CentOS 8 comes with rpm 4.14, see
https://centos.pkgs.org/8/centos-baseos-x86_64/rpm-4.14.2-25.el8.x86_64.rpm.html
and
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/packaging_and_distributing_software/new-features-in-rhel-8_packaging-and-distributing-software

and since "Recommends" was introduced by rpm 4.12, see
https://fedoraproject.org/wiki/Changes/RPM-4.12 .
so we are able to use "Recommends" in el8 as well.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-02-12 12:28:35 +08:00
Sage Weil
b16f19efe7 ceph.spec: Recommend (but do not require) podman
1- Strictly speaking, docker is okay too.
2- We don't want podman (or docker) installed inside the container image,
but we do need the cephadm package.

Fixes: https://tracker.ceph.com/issues/44065
Signed-off-by: Sage Weil <sage@redhat.com>
2020-02-11 19:51:23 -06:00
liushi
ebf6cd15a6 ceph.spec.in: fix python3 dependencies in centos7
Fixes: https://tracker.ceph.com/issues/43737
Signed-off-by: liushi <liu.shi@navercorp.com>
2020-02-11 15:10:55 +08:00
Sage Weil
2e3ed251a6 mgr/deepsea: remove
Signed-off-by: Sage Weil <sage@redhat.com>
2020-02-09 09:45:36 -06:00
Sage Weil
01c36d9db7 mgr/ansible: remove
Signed-off-by: Sage Weil <sage@redhat.com>
2020-02-07 09:45:12 -06:00
Greg Farnum
1adda08a4b rpm: fix up a specfile syntax error
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2020-02-04 09:10:17 -08:00
Dominique Leuenberger
110135cd16
ceph.spec.in: Use pkgconfig() style BuildRequires for udev/libudev-devel
pkgconfig() is cross-distro and allows to 'not having to care' for distro specific
packaging names. On openSUSE/SUSE distros, for udev/libudev, we gain the
benefit of being able to use -mini flavors which are sooner in the build queues.

Signed-off-by: Dominique Leuenberger <dimstar@opensuse.org>
2020-01-28 14:13:04 +01:00
Alfonso Martínez
e5fa448229 ceph.spec.in: fix 'make check' deps for centos8
When running 'FOR_MAKE_CHECK=1 ./install-deps.sh' in CentOS 8
these dependencies were not being installed.
Missing dependencies are provided by
https://copr.fedorainfracloud.org/coprs/ktdreyer/ceph-el8/

Signed-off-by: Alfonso Martínez <almartin@redhat.com>
2020-01-23 11:16:27 +01:00
Boris Ranto
f4cf78dc56 rpm: Relax the selinux policy version for centos builds
We are currently running into issues when installing the test builds
produced on centos 8 as these might have older selinux-policy-base
version than is available to the rhel 8 nodes.

We still want the builds produced on RHEL 8 to use the proper version
condition so the %{?centos} macro should help us achieve that, here.

Signed-off-by: Boris Ranto <branto@redhat.com>
2020-01-17 15:24:46 +01:00
Kefu Chai
567a94e63d ceph.spec.in: package .pyc files on el7
* package .pyc files on el7
  per
  https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_byte_compiling

  it's required to package .pyc files

* use python3 to bytecompile .py files on el7

  per
  https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation#Status_quo,
  `brp-python-bytecompile` script bytecompile .py files automatically, the
  .py files under interpreter-specific directories, such as `/usr/lib/python3.6/`,
  are compiled using the appropriate compiler. but the mgr modules are
  located under `/usr/share/ceph/mgr/`. they are compiled using
  `${__python}`, which is still python2 in RHEL/CentOS 7. since we've
  dropped the support of python2 in octopus. we should either stop
  bytecompiling the .py source files or start using python3 to compile
  them. otherwise python2 will fail to compile source files using python3
  specific syntax like:

```
Compiling /home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos7/DIST/centos7/MACHINE_SIZE/huge/release/15.0.0-9242-g400d98b/rpm/el7/BUILDROOT/ceph-15.0.0-9242.g400d98b.el7.x86_64/usr/share/ceph/mgr/telemetry/module.py
...
  File "/usr/share/ceph/mgr/telemetry/module.py", line 387
    anon_devid = f"{devid.rsplit('_', 1)[0]}_{uuid.uuid1()}"
                                                           ^
SyntaxError: invalid syntax

error: Bad exit status from /var/tmp/rpm-tmp.4oRsox (%install)
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-01-13 11:09:37 +08:00
Nathan Cutler
0988cb0d2f
Merge pull request #32331 from smithfarm/wip-spec-drop-vim-header
rpm: drop vim-specific header

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
Reviewed-by: Mykola Golub <mgolub@suse.com>
2020-01-08 14:51:33 +01:00
Kefu Chai
dfd90da59c
Merge pull request #32412 from tchaikov/wip-spec-more-deps-for-el8
ceph.spec.in: re-enable "make check" deps for el8

Reviewed-by: Alfredo Deza <adeza@redhat.com>
2020-01-07 22:53:14 +08:00
Daniel Gryniewicz
2ee55c2cf7
Merge pull request #32404 from kalebskeithley/master
rgw: build radosgw daemon as a shared lib + small executable
2020-01-07 08:05:21 -05:00
Kefu Chai
2a27084e1d ceph.spec.in: re-enable "make check" deps for el8
this change partially reverts e92cb7a0. as these packages are now
available in AppStream, BaseOS or PowerTools in el8, in this change,
they are re-enabled.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-12-26 14:03:08 +08:00
Sage Weil
5ec92e79a2 Merge PR #32232 into master
* refs/pull/32232/head:
	qa: no need to exclude ceph-mgr-diskprediction-cloud from package list to be installed
	qa/packages: do not install ceph-mgr-diskprediction-cloud by default
	ceph.spec.in: add runtime deps for mgr-diskprediction-cloud

Reviewed-by: Sage Weil <sage@redhat.com>
2019-12-24 08:17:35 -06:00