Commit Graph

907 Commits

Author SHA1 Message Date
Takashi Kajinami 04e053c5cb Retire PowerVMStacker SIG: Remove Project Content
Depends-on: https://review.opendev.org/c/openstack/project-config/+/909535
Change-Id: Icb1894348ef7b1602a3181dad3162df6d6ad53af
2024-02-20 22:52:00 +09:00
Zuul 6ea1819963 Merge "Support : Images" 2019-10-10 07:42:59 +00:00
VedaAnnayappa 1fe310f4be Fixing Unit Test Issues
Updating to 1.1.23 version of pypowervm and Fixing UT issues accordingly

Change-Id: I7291077407c818c712fb5c98952a15020191a2cc
2019-10-09 04:07:56 +00:00
VedaAnnayappa 1df8253920 Support : Images
Added image type capability flag support to be in sync with the
openstack-nova

Change-Id: I0d617c67e2918749225ecb8184df88dfd2a68ed2
2019-07-23 14:44:35 -04:00
Divya K Konoor 81b9b497c7 Add Debug Log
Adding debug log statment to sync out-of-tree driver with
in-tree as per https://github.com/openstack/nova/commit/
8545ba2af7476e0884b5e7fb90965bef92d605bc#diff-
5dc5ac3c2bf8010333f1752a1e70ce18

Change-Id: Ia2247b11539070127e509335905351e1695c43d2
2019-06-13 05:21:21 -04:00
amansi26 98630ef89e Fixing UT failure.
Change-Id: Ia733c160da57ab07149c48a3b886505c5c557d7c
2019-06-13 01:00:22 -04:00
Zuul 1c9073a653 Merge "Remove "supports_recreate" from capabilities" 2019-04-03 13:52:39 +00:00
Zuul 4f7ee03014 Merge "Share snapshot image membership with instance owner" 2019-04-03 13:22:00 +00:00
srividr2 7a8516ffb5 Remove "supports_recreate" from capabilities
The changeset to close bug 1821891 added the
field "supports_evacuate" in the driver
capabilities without removing "supports_recreate",
which was the old field for the same.

Change-Id: If93ed659dfcbe7dc2820e6110c5878adaf0de158
Closes-Bug: #1822853
2019-04-03 02:53:28 -04:00
srividr2 2819a9cc62 Add supports_evacuate=True to capabilities
Currently nova-powervm driver is not supporting
evacuate. And so Virtual Machine evacuate fails
with the exception InstanceEvacuateNotSupported.
So add supports_evacuate=True to capabilities.

Change-Id: I20a9a805831a8816fd847a2559fd65665dc67a78
Closes-Bug: #1821891
2019-03-29 16:23:10 +00:00
Divya K Konoor d95e180302 Add requested_size to extend_volume
Nova has changed the interface of the compute driver
extend_volume method [1] adding a new parameter namely
requested_size. This patch updates the signature of the
PowerVMDriver extend_volume method to match the change.

[1] https://review.openstack.org/#/c/613039/

Change-Id: I9df280bba8eb663dbe631a741f8d6f728b3b8f87
2019-03-22 10:24:23 -05:00
Eric Fried b3e195041d Add use_cache kwarg to get_info
Nova has changed the interface of the ComputeDriver.get_info method [1],
adding a use_cache kwarg. The change preserves backward compatibility,
but that's removed in Stein [2]. This patch changes the signature of
PowerVMDriver.get_info to match.

[1] https://review.openstack.org/#/c/636699/
[2] https://review.openstack.org/#/c/640043/

Depends-On: https://review.openstack.org/636699
Change-Id: Id5b00f1805b150c825070d79531be85092dce1a5
2019-03-01 09:36:23 -06:00
Matt Rabe b3f9b9a5c2 Add the device_id parameter to discover_hdisk
LUA recovery, the job that tells the VIOS to discover a specific
hdisk, may find multiple disks at the same ITL. Without the device ID
LUA recovery will return an error when this happens.

For most volume backed storages the device ID is the base 64 encoded
value of the pg83 identifier. This change enables the passing of the
deviceID to discover_hdisk to avoid the multiple hdisks at the same
ITL error. It also bumps the pypowervm version for the device_id
support in discover_hdisk.

Change-Id: I86c273bf1d1c5753ce68ab51f6922c323d720cb2
2019-02-01 11:58:15 -05:00
Matthew Edmonds 5a342bd309 Share snapshot image membership with instance owner
Stop overwriting the is_public image metadata field so that nova
can handle this. For more information, see [1].

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-January/001726.html

Change-Id: If5c08dd28b61de8fad66d3ba9ec858aaa2fa8287
Depends-On: https://review.openstack.org/630769
Closes-Bug: #1675791
2019-01-16 12:43:11 -05:00
lijunjie 2000340c4a Fix the misspelling of "except"
Change-Id: I9298c5c9271e35a855eae8920e6c58f9c6c5ed45
2019-01-04 18:16:47 +08:00
Zuul aea15e6d20 Merge "Use tempfile for powervm config drive" 2018-11-01 17:06:47 +00:00
Eric Fried bfec94277f PowerVM upt parity for reshaper, DISK_GB reserved
bp reshape-provider-tree patch introduced the 'allocations' kwarg [1]
and another patch provided a ComputeDriver helper method for calculating
the reserved value for the DISK_GB resource from config [2].  This
brings PowerVM's update_provider_tree method up to scratch with those
changes.

[1] Ic062446e5c620c89aec3065b34bcdc6bf5966275
[2] I72c83a95dabd581998470edb9543079acb6536a5

Change-Id: I89ad36f19672368a1f795e1f29c5af6368ccfeec
2018-11-01 09:28:25 -05:00
Matthew Edmonds 54e501481d Use tempfile for powervm config drive
There are potential security issues with using predictable temp
directories or files, so use python's tempfile module to do this
safely.

Change-Id: I5e23933af71180da1d55950fcf49e39b0b800ef5
Closes-Bug: #1771538
2018-10-31 10:51:27 -04:00
arunmani f7c7051ee9 Fix message handling with VirtualInterfacePlugException class usage
When a VNIC attach fails, the actual error message thrown from the
platform gets swallowed in the console showing only the generic
message in the exception class. This is due to the formatting
string passed to the exception class, though the
VirtualInterfacePlugException class definition doesn't accept one.

Change-Id: I18be7fc2284387d2f4d492ca68de6091f4bb8b66
Closes-Bug: #1796072
2018-10-05 07:11:57 +00:00
Matt Rabe 362b705c16 Support secure_boot extra_spec in _format_flavor
This change enables the nova-powervm driver to accept the
'powervm:secure_boot' extra_spec and pass it down to pypowervm to
build the LPAR wrapper with.

Change-Id: I080065795778adee86c6cb37bcbf700a440d73b9
2018-09-18 11:07:49 -04:00
Matthew Edmonds b9338ee261 Use uuidsentinel from oslo.utils
A recent nova change [1] removing uuidsentinel (which is now found
in oslo.utils) broke our UTs. This changes our code to use
oslo.utils, fixing the issue.

[1] 8e1ca5bf34f924b9a23ddbcf31ae727a7dcacb20

Change-Id: Ic314f975c4206a73d2ddd3608181cddc43604f59
2018-09-12 14:01:23 -04:00
Abhinav Shrivastava f81f39d34b iSCSI: Clean up source VIOS on migration
Whenever a VM migrated from one host to another
the source VIOS had hdisk remaining after LPM.
The current change makes sure that VIOS hdisks
get cleaned up after migration.

Change-Id: I3c085a872abbaf6e6e91b2496314a06ce8e7ba58
2018-08-20 14:54:06 -04:00
Eric Fried dcc2bfa1c1 PowerVM: update_provider_tree() (compatible)
Implement the update_provider_tree ComputeDriver method in the
PowerVMDriver.

In this patch, we *just* implement it to be backward compatible with how
the resource tracker populates the compute node resource provider
inventory based on get_available_resource. Future patches will bring
sanity to such values as allocation_ratio, min_unit, and reserved.
Future patches (as part of larger efforts) will also handle providers
and/or inventories for SR-IOV, devices, etc.

Change-Id: I78ee21165e6654c1f0b3725632f9acae2f437888
2018-08-15 16:22:03 +00:00
Zuul 9b518d8c99 Merge "Use the new loop backstore type for fileio" 2018-08-03 13:41:10 +00:00
Zuul 87e7517cc2 Merge "Remove unused InstanceInfo class" 2018-07-23 13:34:04 +00:00
Zuul 55de622661 Merge "iSCSI volume detach with no UDID" 2018-07-19 17:49:03 +00:00
Matthew Edmonds a92fb59ab7 Remove unused InstanceInfo class
We switched to using nova's InstanceInfo class a while ago [1] but
failed to remove our now-unused subclass. This cleans that up.

[1] a4e0721c6b

Change-Id: I214175f61796578e87aed82caa16828aa1c6cebc
2018-07-18 11:55:09 -04:00
Chhavi Agarwal 44671813c2 iSCSI volume detach with no UDID
fixes the issue to preserve the UDID information in BDM during
the live migration.

Closes-Bug: 1778939
Change-Id: I81aee924093ebcbf1e43ec8c7e330b7d4a973420
2018-07-18 10:39:34 -04:00
Taylor Jakobson 7add56d035 Add support for rbd user
Read the rbd_user from the [powervm] section in the conf file.
Use the rbd_user when creating an rbd object. This user id will be
used when trying to connect to the rbd cluster.

Change-Id: I4548eff8afa85e63a8ca40d819298dccffe63e26
2018-07-02 22:04:39 +00:00
esberglu 066369594e vSCSI In-tree Backports
This contains backports for minor code changes made during in-tree
driver vSCSI development [1].

[1] https://review.openstack.org/#/c/526094/

Change-Id: I60788e8756df2dfec5f0a407ca149a8ea3cedd53
2018-06-26 17:31:52 -05:00
esberglu edae7d1168 Localdisk In-tree Backports
This contains backports for code changes made during in-tree driver
localdisk development [1].

- Uses uuidsentinel for uuids
- Reworks localdisk capacity UT
- Other minor cleanup

[1] https://review.openstack.org/#/c/549300/

Change-Id: I04bdc32fdca3fbd3cf59ef47776d3cc6d4e9bc60
2018-06-26 17:24:28 -05:00
esberglu 5b70f32b74 DiskAdapter Parent Class In-tree Backports
This contains backports for code changes made during in-tree driver
DiskAdapter parent class development [1].

- Forces subclasses to implement capacity methods
- Marks abstract methods/properties in the parent class
- Introduces a fake disk adapter to allow testing with abstract methods
  and properties.

[1] https://review.openstack.org/#/c/549053/

Change-Id: I1f8ebe64571c009020be7f3888167e3450d2fd4d
2018-06-26 17:24:26 -05:00
esberglu e3b112dc93 Snapshot In-tree Backports
This contains backports for code changes made during in-tree driver
instance snapshot development [1].

- Renames boot_disk_path_for_instance() to get_bootdisk_path() for
  clarity
- Makes disk_match_func() private and static
- Renames instance_disk_iter() to _get_bootdisk_iter() and remove
  unnecessary parameters.
- Other minor cleanup

[1] https://review.openstack.org/#/c/543023/

Change-Id: I8f2eef1063b7e40c0cd71fc4adb04cbf6d35ece1
2018-06-26 17:12:15 -05:00
Zuul bfb8962fcc Merge "iSCSI Live Migration Support" 2018-06-11 21:24:03 +00:00
Chhavi Agarwal ba17efd947 iSCSI Live Migration Support
Implement the interfaces needed to support live migration.

Change-Id: I38cb9ccbae311e0e5edcef4a2d4464d45ef3db39
2018-06-11 10:38:16 -04:00
Matthew Edmonds 23bffd275d Remove unused volume_adapter conf
The [powervm]volume_adapter conf setting has not been used since
ebee3eae88 was merged during ocata
development. This removes the unused remnants.

Change-Id: I0c5c1afce6528115754adaa93edf21ee2126a621
2018-06-06 14:06:59 -04:00
Zuul a30388da7c Merge "Remove powervm localdisk conf options" 2018-05-23 18:31:31 +00:00
esberglu 1291aa9d26 Remove powervm localdisk conf options
This removes the disk_driver and volume_group_name configuration
options from nova-powervm. The options are now located in nova [1].

[1] https://review.openstack.org/#/c/549300/

Change-Id: I73af6218d05de2de4a824d6cb027451d7f4038c9
2018-05-20 18:11:00 -05:00
Taylor Jakobson b86a9480c3 Use the new loop backstore type for fileio
Use the new loop backstore type when mapping fileio volumes. The
compute node will mount the file as a loop device and map that to
the VM.
This is to increase performance.

Change-Id: Ic75890265aa033e906bc038dabc55cf36cfc547e
2018-05-14 15:53:40 -05:00
Zuul 0036c9984e Merge "Refactor _vol_drv_iter to use bdm.is_volume" 2018-05-11 16:55:35 +00:00
Matthew Edmonds ef77fbfa8c Handle errors getting iSCSI initiators
pypowervm may raise a JobRequestFailed exception during iSCSI
initiator discovery on older VIOS that do not have the iscsiadm
commands built in. This adds handling for that exception so that
get_volume_connector doesn't blow up.

Closes-Bug: #1770466
Change-Id: I16beff6a5014f028181a167ecb28952190fac223
2018-05-10 13:56:49 -04:00
Zuul 8429cc6185 Merge "Fix boot volume connectivity type discovery" 2018-05-09 21:53:26 +00:00
Zuul df59df8fb5 Merge "Sanitize the config drive UUID" 2018-05-09 20:55:02 +00:00
Eric Fried 5d438733eb Sanitize the config drive UUID
When cloud-init processes an instance to determine
if it is first boot or not, it compares the config
drive UUID with the VM UUID.  This change makes those
values the same now for a given VM / config drive pair.

Change-Id: I128a0bc886b020d67241c67a874cf8d06e791b57
2018-05-08 14:15:15 -05:00
Taylor Jakobson 21f54185c6 Properly set vios_ids when discovering initiator
If vios_ids were not passed to discover_initiator, they get set to
a list of vioses instead of a list of the ids.

Change-Id: If4e2329022f4fb9b81c7b64238defc256bc00f66
Closes-bug: 1769919
2018-05-08 12:24:47 -05:00
Eric Fried db6a646cd5 Refactor _vol_drv_iter to use bdm.is_volume
In [1] it was pointed out [2] that the way we were attempting to
determine whether a BDM was a volume wasn't correct.  The right way is
to consult its is_volume property.  But that property didn't exist until
[3].  Since that's now merged, this change set refactors to use that
property.

In the process, we remove the unused 'context' parameter from
_vol_drv_iter.

[1] https://review.openstack.org/#/c/526094/
[2] https://review.openstack.org/#/c/526094/45/nova/virt/powervm/driver.py@559
[3] https://review.openstack.org/#/c/564017/

Change-Id: I9f33a85cfd2e76d72bb6664eb247bdbf49b14079
2018-05-08 08:27:34 -05:00
Eric Fried af31c9f977 Fix boot volume connectivity type discovery
Per the referenced bug, there was a code path whereby the boot volume
connectivity type could be unset, resulting in an exception.  In fixing
this, I discovered that we were looking for `driver_volume_type` in the
wrong place: it should be in connection_info and we were looking for it
under connection_info['data'].  I preserved the bogus code path in case
it's actually somehow legit, but added a path to the correct location.

We had no direct test for this stuff, so I added that too.

Change-Id: I78e55b3d8096d4013afd0abe1e42c32dc9697871
Closes-Bug: #1769648
2018-05-07 10:47:31 -05:00
Matthew Edmonds 3b95db9dea update translations for queens
Update translations for the Queens release.

Note: this is being cherry-picked from stable/queens to master
instead of the other way around. The translations were actually done
based on queens, so that is where they were originally merged. In
hindsight, they should also be merged in master so that it has the
latest translations as well, so we should have followed the normal
process of merging in master first, but too late for that now.

Change-Id: I0622d237a53114929d56cfb46bbb7d60887099d6
(cherry picked from commit e62fae699d)
2018-04-19 08:52:54 -04:00
Chhavi Agarwal 742c9d06db Miscellaneous iSCSI improvements
This commit has changes for below 3 items.

1) It adds _get_iscsi_conn_props to process connection_info data for
   iSCSI properties.
2) It removes the target_name when creating scsi mapping because that's
   now being handled correctly at the platform level.
3) It adds more testing around 'CHAP' auth_method.

Change-Id: Ib6deef7b15bdb73a23f5edb5ec3fb6cbc9fe4e93
2018-04-17 21:18:00 +05:30
Chhavi Agarwal 390347afc6 Return iSCSI Initiator for VIOSes
Adding the get_iscsi_initiators method in iscsi volume adapter
to discover all iSCSI initiators for active VIOSes and return
the first initiator from the sorted collection of initiators.

Change-Id: Ic842bd49e0a3dc6e4f4a3bf14409ca2f70369a26
2018-04-17 19:40:22 +05:30