Hi Kefu, On Thu, Jul 4, 2019 at 5:37 AM kefu chai <tchaikov@xxxxxxxxx> wrote: > > On Thu, Jul 4, 2019 at 1:43 AM Patrick Donnelly <pdonnell@xxxxxxxxxx> wrote: > > > > Not sure who to direct this to so asking here. > > > > Varsha Rao has a PR [1] to add tox testing for the cephfs-shell as > > part of the build testing. Unfortunately it seems this isn't done as > > part of the jenkins build, probably because cephfs-shell is not an > > install target for most platforms due to dependency issues. > > cephfs-shell is currently only a valid target for Ubuntu 18.04+. I see > > that jenkins is using Ubuntu for the build [2] but I'm not immediately > > we use whatever test slaves labeled with trusty or centos7, see > https://github.com/ceph/ceph-build/blob/master/ceph-pull-requests/config/definitions/ceph-pull-requests.yml#L6. > in the "make check" run you referenced, the used slave was labeled > "jessie stretch trusty-pbuilder x86_64 bionic huge rebootable xenial > trusty amd64". > > and it seems all of the trusty slaves are also labeled with xenial, > aside from the arm64 ones. I'm not sure if trusty/xenial will be a problem as cephfs-shell requires a recent version of cmd2, available on bionic. > > sure which flavor. Maybe enabling cephfs-shell builds is just > > something that needs turned on the CMake flags for the jenkins build > > (-DWITH_CEPHFS_SHELL)? > > i think, to test cephfs-shell with tox, in addition to > https://github.com/ceph/ceph/pull/28239, we just need to > > 1. build ceph with -DWITH_PYTHON3=ON, as cephfs-shell is python3 only, > and it uses cephfs's python binding. because both debian/control and > ceph.spec.in require python3 development packages to be installed. so > presumably, all trusty and centos7 slave nodes should be ready for > building cephfs python3 binding, and for testing cephfs-shell. > 2. add the runtime dependencies of cephfs-shell to debian/control and > ceph.spec.in as part of the "make check" dependencies, please search > "with make_check" in ceph.spec.in and search "# Make-Check" in > debian/control for examples. > > there are two places we can add the -DWITH_PYTHON3=ON option, > > - https://github.com/ceph/ceph-build/blob/master/ceph-pull-requests/config/definitions/ceph-pull-requests.yml#L56 > - https://github.com/ceph/ceph/blob/master/run-make-check.sh > > i'd recommend to add this option in run-make-check.sh. That helps a lot; thanks Kefu! I do wonder though if we need to add the cephfs-shell dependencies. If we're currently just doing code linting with flake8, is it really necessary? -- Patrick Donnelly, Ph.D. He / Him / His Senior Software Engineer Red Hat Sunnyvale, CA GPG: 19F28A586F808C2402351B93C3301A3E258DD79D _______________________________________________ Dev mailing list -- dev@xxxxxxx To unsubscribe send an email to dev-leave@xxxxxxx