Commit Graph

22 Commits

Author SHA1 Message Date
Anoop C S
09d81f5bb3 micro-osd.sh: Clarify the suspicion around S3 credentials
It's unusual to put any kind of credentials out in open. The set
of credentials defined with `S3_ACCESS_KEY` and `S3_SECRET_KEY`
variables in the script are questionable in its nature. But these
are not real/valid credential values in any form for AWS rather
used for testing the S3 compatible API from Ceph RGW. Therefore
clarify the intention and replace with sample values from official
AWS documentation.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2023-12-08 18:42:13 +00:00
Anoop C S
0ba56a3142 rgw/admin: Add a test for API.GetInfo
Co-authored-by: Anoop C S <anoopcs@cryptolab.net>
Signed-off-by: Sébastien Han <seb@redhat.com>
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2023-11-08 05:01:00 +00:00
Anoop C S
cd007bcbd0 micro-osd.sh: Use ipv4 address for 'mon addr' configuration
'mon addr' config option expects value in the following format[1]:

<ip-addr>:<port>

Extract host ipv4 address and mention it with default 6789 port as
'mon addr' config option value.

[1] https://docs.ceph.com/en/latest/rados/configuration/mon-config-ref/#minimum-configuration

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2023-04-28 13:51:33 +00:00
John Mulligan
6f2a33a012 micro-osd.sh: run a second filesystem on pacific and later
Add a function to bring up a 2nd cephfs file system. Execute it on
ceph versions pacific and later.

While the API exists on nautilus and octopus those versions are already
deprecated in go-ceph. Additionally, the ceph docs for "multifs" state,
"Beginning with the Pacific release, multiple file system support is
stable and ready to use." [1] Therefore we won't bother running our test
automation on anything earlier.

1 - https://docs.ceph.com/en/latest/cephfs/multifs/#multiple-ceph-file-systems

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2023-02-13 10:11:06 -05:00
John Mulligan
0f29fdd510 micro-osd.sh: fix rgw connecting to mon without cephx
See also:
* https://tracker.ceph.com/issues/52103
* https://github.com/ceph/ceph/pull/42718

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-05-02 14:14:25 +00:00
John Mulligan
d01392853c micro-osd.sh: make rgw log location be consistent with every other daemon
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-05-02 14:14:25 +00:00
John Mulligan
61826a4af5 micro-osd.sh: make shellcheck happier
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-05-02 14:14:25 +00:00
John Mulligan
8deb9cf778 micro-osd.sh: break script up into discrete steps
The "CEPH_FEATURES" env var can now be used to exactly control what
steps will be run. If unset the steps will be derived from the
CEPH_VERSION env var.

Best viewed by ignoring whitespace.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-05-02 14:14:25 +00:00
John Mulligan
50f803daa4 micro-osd.sh: set a location for mgr logging
I found this useful when debugging the mock nfs configuration
pool and the nfs mgr module.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-04-06 17:56:33 +00:00
John Mulligan
6febfd6650 micro-osd.sh: set up a cephfs mirroring daemon
This mirroring daemon is required to test the cephfs mirroring calls
that will be added to cephfs/admin.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2021-08-03 07:25:28 +00:00
Sébastien Han
6be8d370cb rgwadmin: add support for RadosGW Admin Ops API
Following this discussion #492

This commit introduces a new package "rgw/admin" which helps you interact
with the [RadosGW Admin Ops API](https://docs.ceph.com/en/latest/radosgw/adminops).
Not all the API capabilities are covered by this commit, but this is a
solid foundation for adding code on top. I'm expecting a few more
iterations to make 100% complete. Also, the RadosGW Admin API is going
to implement new functions soon (like bucket creation). So this library
will live on and keep catching up.

As many unit tests as possible have been added. A new integration test
suite also runs. The "micro-osd.sh" now deploys a RGW and the
integration suite tests on it. Thus the CI should cover it.

Shout out to @QuentinPerez and @IrekFasikhov for their existing
libraries. They were a very good inspiration to get started.

Co-authored-by: Irek Fasikhov <malmyzh@gmail.com>
Co-authored-by: Quentin Perez <qperez42@gmail.com>
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-05-31 17:45:31 +02:00
John Mulligan
8ed302c7a0 entrypoint.sh: add a vim modeline to help set formatting parameters
For better or worse, unlike Go, shell does not have a standard formatting style.
Add a vim modeline that should match the basic current formatting style of the
scripts. This ought to help fellow vim users when editing the scripts.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2021-05-17 14:24:14 +00:00
Sven Anderson
3fb003d886 ci: prepare micro-osd.sh for cross-container connections
Signed-off-by: Sven Anderson <sven@redhat.com>
2021-04-06 08:59:55 -04:00
John Mulligan
7031cabd4a micro osd: remove the use of cephfs fuse mount
Now that none of the tests need an external (fuse) mount of the fs under
test we can eliminate fuse from our ceph setup script.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2021-03-21 06:19:40 +00:00
Sven Anderson
48bff9548a ci: wait before starting ceph-osd
This is another attempt to fix #423.

Signed-off-by: Sven Anderson <sven@redhat.com>
2021-02-04 07:38:38 +00:00
Sven Anderson
134c628df1 ci: run ceph-osd in foreground during mkfs
This is an attempt to fix #423.

Signed-off-by: Sven Anderson <sven@redhat.com>
2021-01-15 14:31:48 +00:00
Sven Anderson
e0982bc6e1 tests: disable disk space check in micro-osd.sh
Signed-off-by: Sven Anderson <sven@redhat.com>
2020-08-04 12:59:38 -04:00
John Mulligan
a9a7137d59 test: update micro-osd.sh to support nautilus
Apparently 'rados mkpool' and 'rados rmpool' no longer function when
using nautilus.
Switch to ceph osd pool subcommands.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-11-04 13:15:30 -05:00
Lincoln Thurlow
ecf9a99249 cephfs: add unmount, release, chmod, chown, etc
This commit adds the following cephfs functions:

* Unmount // Unmounting is necessary to cleanup mounts
* Release // Release destroys the cmount ~ end of transaction
* RemoveDir // inverse of MakeDir
* Chown // change ownership of file or directory
* Chmod // change permissions of file or directory

Tests are included for each function.

In addition to these changes modifications to:

.travis.yml, Dockerfile, and Makefile

were made to accomodate tests to mount the ceph volume.  Tests use
fuse to mount the volume which requires adding:

--device /dev/fuse --cap-add SYS_ADMIN --security-opt \
apparmor:unconfined

to the docker container (alternatively --privileged works but adds
additional permissions).

Changes to README add the above docker changes as well as point
users to the necessary ceph development libraries.
2018-10-11 11:09:16 -07:00
Lincoln Thurlow
b7c7659ec4 go-ceph: add cephfs to docker
* Adds metadata server (mds) for cephfs to Dockerfile
* Enables cephfs tests
2018-10-09 20:56:52 -07:00
Noah Watkins
96b41ea93e ci: change mon id in micro-osd script
Signed-off-by: Noah Watkins <nwatkins@redhat.com>
2018-08-07 18:48:28 -07:00
Noah Watkins
19a37c4565 ci: update to luminous and dockerized setup
Signed-off-by: Noah Watkins <nwatkins@redhat.com>
2018-07-07 13:20:41 -07:00