5114 Commits

Author SHA1 Message Date
Goutham Pacha Ravi
db3f3b5c99 [victoria][goal] Native Zuulv3 CI jobs
Replace "legacy" style jobs with native zuulv3
ones built within the manila-tempest-plugin
repository. This refactoring is driven by a
community wide goal to stop relying on devstack-gate,
a deprecated component of the OpenDev CI system [1]

Remove in-tree devstack gate hook script portions
that are no longer necessary; and mark the rest as
deprecated, since third party CI could still be
relying on these hooks.

Replace "manila-tempest-dsvm-mysql-generic",
"manila-tempest-dsvm-postgres-generic-singlebackend",
"manila-tempest-dsvm-generic-no-share-servers" and
"manila-tempest-dsvm-scenario" jobs with
"manila-tempest-plugin-generic" which preserves
coverage for the generic driver, while removing
unnecessary duplication/separation. See commit
message in [2] for more details.

Remove older CentOS and HDFS jobs since they
were not being executed.

Remove "custom" image jobs targeting custom
manila-image-element based builds, the jobs
now originate in the manila-image-elements
repository. [3]

The dummy driver job has been split into two parts
for testing DHSS=True and DHSS=False in separate
jobs. Read more about the motivation in the commit
message for the change that created that job [4]

While some name tags such as "postgres" and
"ipv6-only" have been removed from the job
names, the functionality of the job hasn't
been changed.

This change will not be backported. Instead, new
changes akin to this may directly target older
branches of manila.

[1] https://governance.openstack.org/tc/goals/selected/victoria/native-zuulv3-jobs.html
[2] https://review.opendev.org/726291/
[3] d9d2f16360/zuul.d/manila-image-elements-jobs.yaml (L34-L67)
[4] https://review.opendev.org/740534/
Change-Id: I2be6fc12c787c05c7df68297990fcdca96f57c5d
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-28 14:55:14 -07:00
Zuul
cf5450990b Merge "Zuulv3 native grenade job" 2020-07-28 21:34:25 +00:00
Zuul
8885b0419c Merge "Harden LVM driver deletion paths" 2020-07-28 21:24:18 +00:00
Zuul
58e423edba Merge "[ci] Remove explicit compression of log files" 2020-07-28 19:55:00 +00:00
Goutham Pacha Ravi
e57809fd74 Harden LVM driver deletion paths
During maintenance, administrators may decide
to unmount shares, snapshots or remove them
entirely prior to cleaning up LVM share resources
in manila. The driver should not fail on deletion
of missing resources.

Change-Id: Ieaf37ec10db9a8bdce6bb195b76335fea9b2b52f
Closes-Bug: #1888915
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-28 11:20:29 -07:00
Goutham Pacha Ravi
660355eb86 Zuulv3 native grenade job
The existing "manila-grenade" job relies on
devstack-gate, a deprecated project. The Grenade
project now has a native zuulv3 style job that
we can inherit and run manila's upgrade tests.

Manila's grenade tests are only going to run
API tests, and hence this grenade job doesn't
have to enable nova, cinder, glance, neutron
and swift. However, bug #1887835 prevents
us from disabling nova at the moment,
and nova requires glance, placement and neutron
to be deployed, so we'll be enabling these
services too until that bug is addressed.

Depends-On: Id5a9467247df1d8f0ec6dee3fae842ba673c34ed
Depends-On: Ieaf37ec10db9a8bdce6bb195b76335fea9b2b52f
Change-Id: I1636c612ac2475f7a00c0888ef62daa6c516eef2
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-28 01:07:00 +00:00
Goutham Pacha Ravi
770e57ff31 [ci] Remove explicit compression of log files
Compression is not needed post [1], explicit
compression renders them non-browsable.

This commit applies to legacy style jobs that
will soon be replaced with zuulv3 native jobs;
however, fixing it isn't terrible, and we
can use this fix for stable branches
where zuulv3 native jobs may not come for a
while.

[1] http://lists.openstack.org/pipermail/openstack-discuss/2020-January/011875.html
Co-Authored-By: yatinkarel <ykarel@redhat.com>

Change-Id: Icd4f9dc435a807f6f729e4eb2d4df4b282ec79ac
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-27 12:43:59 -07:00
Goutham Pacha Ravi
a398743264 Fix fallback share group snapshot implementation
When a share driver does not provide the capability
to create share group snapshots, the share manager
iterates over the shares in the group and invokes the
driver method to snapshot the shares. However, the
create and delete routines in this fallback path
did not include some attributes necessary for the
operation in many drivers.

Change-Id: Id5a9467247df1d8f0ec6dee3fae842ba673c34ed
Closes-Bug: #1888905
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-24 16:05:09 -07:00
Goutham Pacha Ravi
8cccb73f46 Add verify-noapi testcase to grenade
Switch to using the LVM driver in the grenade
job that allows us to add a minor data
path test to prove that upgrading manila
has no impact on data path connectivity
to resources created by manila.

Change-Id: I8588e8f988d85dc64e19e7a44a25c3dd0b776892
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-23 14:40:34 -07:00
Tom Barron
c94e1deff1 Update LVM volume extend
- do *not* skip fsck when extending
- have extend resize the filesystem itself
  rather than making a separate execution
  of ``resize2fs``

Closes-bug: #1887694
Change-Id: I67ac549e790322c56d02db4424ec01a5449e6633
2020-07-21 04:47:06 +00:00
Zuul
ece804038f Merge "Update NFS helper restart" 2020-07-21 00:31:15 +00:00
Zuul
4ee6a30a11 Merge "Use assertEqual instead of assertItemsEqual" 2020-07-20 18:24:36 +00:00
Tom Barron
391ec7dffa Update NFS helper restart
Because ``service`` commands are deprecated in favor of
``systemctl` commands, the check to see if the service
command succeeds in the NFS helper used by e.g. the
lvm and generic back ends fails.  The string sought to
indicate an error is never present.

Update the helper to use ``systemctl`` commands instead
and error check for them correctly.

Closes-bug: #1887695
Change-Id: Ibb1c15f997fa60e1ba5bfb7437502d8aa454d35f
2020-07-20 17:45:39 +00:00
shenxindi
ccc4db699a Use assertEqual instead of assertItemsEqual
The assertItemsEqual method has been removed in Python 3.3 [1] but
it was kept alive by unittest2, imported by testtools.

[1] https://bugs.python.org/issue17866

Change-Id: I410a10d4b57f6d84e2cda623f3969cc14ca0d50e
2020-07-20 16:44:50 +08:00
Zuul
88105201c4 Merge "[ci] Re-enable scenario tests for lvm job" 2020-07-18 17:51:08 +00:00
Zuul
0586e43394 Merge "[NetApp] update set_preferred_dc for ontapi 1.150" 2020-07-17 20:01:46 +00:00
Tom Barron
3fc96e3ad8 [ci] Re-enable scenario tests for lvm job
We temporarily disabled scenario tests in
the voting LVM job [1] because of a bug
in which a kernel problem caused a reboot
in the middle of the job when it ran in a
Xen virtualization environment on rax nodes.

The kernel has been updated on those nodes
and the problem has gone away, as evidenced
in various checks jobs in this review, so
let's reenable the scenario tests.
    .
[1] https://review.opendev.org/#/c/740507/
[2] https://launchpad.net/bugs/1886988

Closes-bug: #1886988

Change-Id: I501d0b6537653613a58ea1fe606f6ef66b8b6d38
2020-07-17 18:29:39 +00:00
Maurice Escher
3057d0643e
[NetApp] update set_preferred_dc for ontapi 1.150
ONTAP 9.5 adds vserver cifs domain preferred-dc configuration
validation. The parameter 'skip-config-validation' is mandatory
for 'cifs-domain-preferred-dc-add' now and is set to false,
i.e. an invalid config will raise early.

Change-Id: I5eb97ba1b29ad24b296e12064f81eb93533c6b99
Closes-Bug: 1887643
2020-07-17 10:24:48 +02:00
Goutham Pacha Ravi
9906359829 Add plugin name to devstack/settings
Needed for zuulv3 jobs that use two
devstack plugins that need to be invoked
in a pre-defined order [1]

[1] https://docs.openstack.org/devstack/latest/plugins.html#plugin-interface

Change-Id: I44117debfc5b7cdef6acb706786963ec81f59db7
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-16 15:43:04 -07:00
Zuul
ca53bfa530 Merge "Enforce policy checks getting share-type by name" 2020-07-15 00:19:01 +00:00
Zuul
b2d76bfaf1 Merge "Enable cephfs snapshots" 2020-07-13 11:29:13 +00:00
Goutham Pacha Ravi
b166aa5657 [ci] Temporarily disable scenario tests
On rax nodes, the voting LVM job fails
consistently because the test node is
rebooted midway [1]

While we debug the issue, lets disable
scenario tests for this job, temporarily
while we identify the root cause and fix
the issue.

[1] https://launchpad.net/bugs/1886988

Change-Id: Icd3706d5c73116a8e16166229736ae485bb2b5c0
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-10 09:47:24 -07:00
Goutham Pacha Ravi
aa31a230b3 Add upgrade documentation
This was missing for manila, and is required
for us to apply for the assertion that the
service supports accessible upgrades.

Change-Id: Ib3f4c917bdd22209e6b76e2175e3b4b28f05bdba
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-10 00:47:45 -07:00
Tom Barron
f877deed51 Enforce policy checks getting share-type by name
Policy checks are skipped when looking up a share-type
by name.  This causes share creation attempts that specify
a valid share-type to pass the early API check on share type
even if the share type named is private and not shared with
the user's project.  The share creation fails later, but after
the database record for the share is created.  Although the
operation fails with an ERROR, the share is stuck in CREATING
state.

Fix this issue by checking the user's project in the database
API just as we do for share type lookups by uuid.

Closes-bug: #1885956
Change-Id: If5fe32c155fe0861b3ed86b862335e062796056b
2020-07-09 06:41:41 -04:00
Goutham Pacha Ravi
2d7c464453 Enable cephfs snapshots
The CephFS driver optionally advertised snapshot
support to manila, based on a configuration
option "cephfs_enable_snapshots". Manila does not
provide snapshots by default to users, unless an
administrator chooses to set the "snapshot_support"
extra-spec in the share type they're using. So this
configuration option is really an unnecessary safeguard
at this point.

Moreover, CephFS snapshots are fully supported from
Ceph Nautilus, and with Id847b1b5e6623172f2600afd69e51182067444cb,
manila added a support statement for the Victoria
release that indicates that Nautilus is the minimum
version of ceph supported. So let's default this
option to True, and deprecate this option at the same
time to eliminate this duplicate safeguard.

Partially-implements: bp update-cephfs-drivers
Depends-On: I885ff78586540d01590f98cca2a00d55161dbe04
Change-Id: I1ef42b414f8af0b8f9a912655757ec200a75c309
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-07 22:13:08 -07:00
Goutham Pacha Ravi
03cb8a39ef TrivialFix: Correct cephfs support release note
Change-Id: If91c651437e3f0701f025cf5d62064387d6d71f1
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-07 10:22:37 -07:00
Zuul
763e1ca1a3 Merge "Add Ceph support statement" 2020-07-07 17:17:16 +00:00
Goutham Pacha Ravi
524ad986e3 Add Ceph support statement
The manila discussed cephfs futures
during the Victoria cycle PTG [1]. To support newer
features in ceph, we'll need to start using the
ceph-mgr interface that debuted in Nautilus.

When we start adopting ceph-mgr, we can no longer
support Mimic, Luminous and older releases of Ceph
without maintaining code workarounds and a continuous
integration system to ensure they're not broken.
This takes considerable effort from community members.

We've supported the Luminous release since OpenStack
Queens, and there have been at least
three other major releases of Ceph in the meantime,
let's add a release note and adjust the ceph driver
documentation calling out our support/testing stance.

[1] http://lists.openstack.org/pipermail/openstack-discuss/2020-June/015494.html

Partially-implements: bp update-cephfs-drivers
Change-Id: Id847b1b5e6623172f2600afd69e51182067444cb
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-07-06 17:19:07 -07:00
Maurice Escher
1660385588
[api-ref] fix typo
Change-Id: Ifd5ada2b467994b9b8efca5016a7c746ab704719
2020-07-03 17:30:02 +02:00
Zuul
e9dd26d221 Merge "Fix NFS/CIFS share creation failure issue" 2020-07-01 02:24:20 +00:00
junboli
1982b90c07 Fix NFS/CIFS share creation failure issue
When the image count is over 25, there might not get
manila-service-image, because current manila shares
creation is using novaclient to get image info, but
novaclient can only get 25 images due to pagination
of glance server, So this change is to switch to use
glanceclient instead of novaclient to get image info,
because glanceclient can iter all image info, while
novaclient is rarely maintained with stuff of image
API.

Change-Id: Id1715d0b9cb3a4aeedeb23d9b1d9924a78d18dc6
Closes-Bug: #1741425
2020-06-30 12:46:28 -04:00
Sean McGinnis
23a8fe8633
Make test-setup.sh compatible with mysql8
Starting from mysql version 8 it's not possible to create a user
implictly when using GRANT.

This patch makes the behavior compatible with that.

Change-Id: Id92a73ffc98906f30cadee98650e86d4d080653b
Co-written-by: Riccardo Pittau <elfosardo@gmail.com>
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
2020-06-30 08:12:41 -05:00
Zuul
e24a740210 Merge "[NetApp] Fix HTTPS connection for python 3.7" 2020-06-24 05:13:24 +00:00
Felipe Rodrigues
29622725e4 [NetApp] Fix HTTPS connection for python 3.7
With python3.7, the eventlet is breaking the ssl.py, so the https
is not working. This patch fixes it by changing the request library
(urllib by requests), the new library can be built over the
pyopenssl.py instead of ssl.py.

Closes-Bug: #1878993
Change-Id: I9c0b1f332ead25634f3dc3aebfdc8b51dfbc4178
2020-06-23 12:45:34 +00:00
Goutham Pacha Ravi
34978c6285 [api-ref] Fix HTTP method on the manage API
Should be a POST and not a GET

Change-Id: Id35e80ed9ea8d7bb224805f9c5026d8199ef2b0d
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
2020-06-22 17:52:15 -07:00
Zuul
a48f3bedbd Merge "[NetApp] Fix svm scoped account" 2020-06-18 23:44:05 +00:00
Zuul
ac935f60e9 Merge "add manila-manage service cleanup" 2020-06-18 19:15:48 +00:00
Zuul
852bb473ee Merge "[NetApp] Updating the release note for bugfix 1688620" 2020-06-18 12:34:44 +00:00
Maurice Escher
c8a8494c78
add manila-manage service cleanup
Change-Id: I32307d5349c8ead5c0f7846f245d49f36dc3bf19
Closes-Bug: #1881112
2020-06-18 10:06:54 +02:00
dtapia
a0dd86a987 [NetApp] Updating the release note for bugfix 1688620
This patch update the release note of the bugfix for the bug 1688620
explaining better about the added configuration option and its use.

Related-Bug: #1688620
Change-Id: Idf9730bfc9604f906b10e58f5b767b4030d8f0db
2020-06-16 14:28:36 +00:00
Douglas Viroel
fbcabd2c03 Fix uwsgi path location
After fixing the uwsgi installation from source that was broken[1][2],
Manila jobs started to fail since no uwsgi wasn't found in the
expected path. This fix now uses 'which' command to search for
uwsgi pathnames in the system.

[1] https://bugs.launchpad.net/devstack/+bug/1883468
[2] https://review.opendev.org/#/c/577955/

Related-Bug: #1883468
Closes-Bug: #1883715
Change-Id: I8d8b2fe07d86899c694cb73a81087d25311d30a5
2020-06-16 11:27:22 -03:00
Felipe Rodrigues
6f58af1ae3 [NetApp] Fix svm scoped account
When the NetApp backend starts, it needs to know whether the
`revert_to_snapshot` support exist. So, it was retrieving the
licenses and checking if the `SnapRestore` is included. Using a
scoped account, the backend cannot retrieve that information,
though. So, this patch solves it by sending a fake operation
`revert_to_snapshot` that must fail. Analyzing the given error, it
sets the backend support field.

Closes-Bug: #1882590
Change-Id: Ib71a6cec939288498e48736f129fbfdacaabe9da
2020-06-12 20:33:45 +00:00
Zuul
6651f675e2 Merge "[Unity]: Failed to enabled ACE for share" 2020-06-09 15:52:16 +00:00
Zuul
1845f2c472 Merge " Make volume mount path configurable for ContainerShareDriver" 2020-06-09 14:49:06 +00:00
Zuul
e5f8763e8a Merge "Add documentation for share replica quotas" 2020-06-09 14:13:02 +00:00
Zuul
c3efde77b5 Merge "Use unittest.mock instead of mock" 2020-06-09 06:09:30 +00:00
Zuul
121c6a6013 Merge "[devstack] Allow cephfs daemon port access" 2020-06-09 00:04:41 +00:00
Hervé Beraud
6462e9a129 Use unittest.mock instead of mock
The mock third party library was needed for mock support in py2
runtimes. Since we now only support py36 and later, we can use the
standard lib unittest.mock module instead.

Change-Id: Iac98e1abac61757ff143e33f0094babe42cc2e60
2020-06-09 01:21:20 +02:00
Zuul
bbea70d044 Merge "Update admin guide for share network subnets change" 2020-06-04 17:08:57 +00:00
Zuul
6ea154165b Merge "Add user guide for share network subnets" 2020-06-04 16:56:42 +00:00