CHANGES
=======

3.0.8
-----

* Use file locks in connectors
* multipath/iscsi: iSCSI connections are not reinitiated after reboot

3.0.7
-----

* Avoid unhandled exceptions during connecting to iSCSI portals
* multipath/iscsi: remove devices from multipath monitoring
* Drop lower-constraints job

3.0.6
-----

* iSCSI: Fix flushing after multipath cfg change

3.0.5
-----

* ScaleIO: More connection info backward compatibility
* FC: Fix not flushing on detach
* Improve error handling on target query
* Add oslo.context dependency
* Adjust lower-constraints

3.0.4
-----

* New fix for rbd connector to work with ceph octopus

3.0.3
-----

* rbd: Warn if ceph udev rules are not configured
* Leverage the iSCSI mpath to get the WWN
* iSCSI detect multipath DM with no WWN
* Add release note for scaleio connector upgrade
* ScaleIO: Connection info backward compatibility
* Improve WWN detection
* prepend platform info to by-path string
* rbd: Support 'rbd showmapped' output from ceph 13.2.0+

3.0.2
-----

* Remove VxFlex OS credentials from connection\_properties
* rbd: Correct local\_attach disconnect test and showmapped arguments
* Fix hacking min version to 3.0.1
* Update TOX/UPPER\_CONSTRAINTS\_FILE for stable/ussuri
* Update .gitreview for stable/ussuri

3.0.1
-----

* Add release note for ussuri cycle release
* rbd: Use showmapped to find the root RBD device during disconnect\_volume
* doc/source/conf.py is not executable
* Ussuri contrib docs community goal

3.0.0
-----

* connectors/nvme: Wait until nvme device shows up in kernel
* Skip cryptsetup password quality checking
* Drop requirements for unsupported python versions
* Raise hacking version to 2.0.0
* Read mounts from /proc/mounts instead of running mount
* Remove Sheepdog connector
* Port the os-bricks jobs to Zuul v3

2.11.0
------

* StorPool: wait for the device to be resized
* Remove Python 2.7 support from testing and gates
* iscsi: Add \_get\_device\_link retry when waiting for /dev/disk/by-id/ to populate
* StorPool: parse the output of \`blockdev\` correctly
* Fix tox 'bindep' environment
* Split connector list by platform
* FC improve logging
* Update FC connection\_properties examples
* Fix FC scan too broad
* nvmeof: Fix broken UTs
* Remove VxFlexOS connector external dependencies
* Switch to Ussuri jobs
* Add linuxscsi get\_device\_info unit test
* nvmeof: Use subnqn to disconnect a volume
* Update the constraints url
* Require oslo.privsep 1.32.0
* Update master for stable/train
* Blacklist eventlet 0.25.0
* Change PDF file name

2.10.0
------

* encryptors: Introduce support for LUKS2
* Rename nvme to nvmeof
* Add pdf documentation build in tox
* Fix param in s390x platform
* encryptors: Deprecate the CryptsetupEncryptor
* Blacklist sphinx 2.1.0 (autodoc bug)
* Fix bad argument to iscsiadm in iSCSI discovery
* Bump the openstackdocstheme extension to 1.20
* Delete redundant code
* Sync Sphinx requirement

2.9.1
-----

* luks: Explicitly use the luks1 type to ensure LUKS v1 is used
* iSCSI single path: Don't fail if there's no WWN
* Add Python 3 Train unit tests
* Make NFS already mounted message debug level
* Check path alive before get scsi wwn
* linuxscsi: Stop waiting for multipath devices during extend\_volume
* luks: Default to LUKS v1 when formatting volumes
* FC: Ignore some HBAs from map for single WWNN

2.9.0
-----

* Provide setting to ignore lvm descriptor leak warnings
* Ignore pep8 W503/W504
* Replace git.openstack.org URLs with opendev.org URLs
* OpenDev Migration Patch
* Add generate\_connector\_list
* Fix invalid escape sequence warnings
* Update master for stable/stein

2.8.1
-----

* Fix ScaleIO KeyError after upgrade
* Revert "rename ScaleIO connector to VxFlex OS"
* Revert "Fix VxFlexOs KeyError after upgrade"
* Revert "Verify WWN of connected iSCSI devices if passed"
* Remove trailing newline character in UUID
* Fix VxFlexOs KeyError after upgrade
* Remove py35 from setup.cfg

2.8.0
-----

* Drop py35 jobs
* add python 3.7 unit test job
* Fix get keyring content failed when ceph auth disabled
* rename ScaleIO connector to VxFlex OS
* Py3: Fix invalid escape sequencees
* Fix FC case sensitive scanning
* Make sure looping calls are properly mocked
* Add slowest test output to end of test run
* Handle None value 'inititator\_target\_map'
* Don't warn on missing dmidecode
* iSCSI: log exception if portals not found
* VMware: Detach backing vmdk during disconnect
* Verify WWN of connected iSCSI devices if passed
* Add missing params in NoOpEncryptor
* Update hacking version
* Add retry to \`nvme connect\` in nvme connector

2.7.0
-----

* Support RSD scenario of nvme connector
* Remove time checks from test\_custom\_execute\_timeout\_\* tests
* Fix create ceph conf failed when cephx disable
* Tests: Fix PrivRootwrapTestCase failure
* Change openstack-dev to openstack-discuss
* Fix NFS "already mounted" detection
* Windows SMBFS: fix using share subdirs

2.6.2
-----

* removing older python version 3.4 from setup.cfg
* Context manager to handle shared\_targets
* Fix a spelling mistake
* Fix a spelling mistake
* Retry executing command "nvme list" when fail
* Remove unused connection properties
* Improve VolumePathsNotFound message details

2.6.1
-----

* Add LIO barbican tests to .zuul.yaml
* Succeed on iSCSI detach when path just went down
* Remove meanless debug log

2.6.0
-----

* 'iscsiadm -m session' failure handling
* The validation of iscsi session should be case insensitive
* Improve docstrings
* Optimize FC device checking
* Ignore volume disconnect if it is not connected
* Fix spelling mistakes
* Cleanup Zuul config file
* add lib-forward-testing-python3 test job
* add python 3.6 unit test job
* switch documentation job to new PTI
* import zuul job settings from project-config
* Improve detection of multipathd running
* Improve iSCSI device detection speed
* Replace assertRaisesRegexp with assertRaisesRegex
* Add staticmethod decorator in InitiatorConnector
* Modify the verification in RBDConnector
* Fix multipath disconnect with path failure
* Tests: Add unit tests for nfs mount race
* Update reno for stable/rocky

2.5.3
-----

* FC Allow for multipath volumes with different LUNs
* Windows SMBFS: avoid mounting local shares by default
* Remove testrepository
* RemoteFS: don't fail in do\_mount if already mounted
* Add release note link in README

2.5.2
-----

* Handle multiple errors in multipath -l parsing

2.5.1
-----

* fix tox python3 overrides
* Switch to using stestr
* FC fix for scanning only connected HBA's

2.5.0
-----

* Trivial: Update pypi url to new url
* adding sheepdog connector for PPC64
* Fix FC: Only scan connected HBAs
* add lower-constraints job
* Include "nqn." in subsystem name
* add a getter for connector mapping
* uncap eventlet
* Fix bindep for multipath
* Updated from global requirements

2.4.0
-----

* Accept ISCSI\_ERR\_NO\_OBJS\_FOUND from iscsiadm
* Incorporate the connection\_properties input for PPC64
* Adding support to extend attached ScaleIO volumes
* Windows iSCSI: ensure disks are claimed by MPIO
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Windows FC: fix disk scan issues
* Enable hacking-extensions H204, H205
* Updated from global requirements
* Update reno for stable/queens
* s390x fc: Fix device path for Ubuntu with ds8k

2.3.0
-----

* adding iSER connector for PPC64
* adding VERITAS\_HYPERSCALE connector for PPC64
* Updated from global requirements
* adding VZSTORAGE connector for PPC64
* Updated from global requirements
* Update supported transports for iscsi connector
* Remove the unnecessary pv\_list assign during LVM object init

2.2.0
-----

* Remove requirement on oslo.serialization
* Cleanup test-requirements
* Updated from global requirements
* Windows SMBFS: allow mounting vhd/x images
* Windows: fix connectors 'disconnect\_volume' signature
* Avoid tox\_install.sh for constraints support
* Recover node.startup values after discovering
* Add the StorPool brick connector

2.1.1
-----

* set vg\_thin\_pool\_size to float type
* Fix a typographical error in a release notes entry

2.1.0
-----

* Make close on cryptsetup volumes idempotent
* Make close on luks volumes idempotent
* Remove setting of version/release from releasenotes
* Adding NVMEoF for initiator CLI
* Updated from global requirements
* Fixing FC scanning
* Updated from global requirements
* Always set ignoreskipactivation on snapshot creation

2.0.0
-----

* Enable Python hash randomization for tests
* Remove legacy connector constants
* Add .stestr.conf configuration
* Fix \_remove\_scsi\_symlinks\_no\_links test
* Protect against race within os.path.realpath
* rescan fails for hba missing target wwn
* Updated from global requirements
* Updated from global requirements
* Fix vmware migrate available volume bug
* FC PPC64 device discovery issue
* Add attribute 'name' to class RBDVolume
* Updated from global requirements
* Updated from global requirements
* Fix iSCSI volume attachment over RDMA transport
* doc: Restructure docs for doc-migration
* doc: Remove cruft from conf.py
* doc: Switch from oslosphinx to openstackdocstheme
* Update reno for stable/pike
* Fix ISCSIConnector.\_get\_potential\_volume\_paths logic
* FC connector logs number of attempts incorrectly
* Enable some off-by-default checks
* Update and replace http with https for doc links
* Get the right portal from output of iscsiadm command
* Update and optimize documentation links
* Updated from global requirements
* Add client connect exception unit test for rbd

1.15.1
------

* Don't obscure logs on iSCSI sendtargets failure
* Return WWN in multipath\_id
* Return symlinks for encrypted volumes

1.15.0
------

* Revert "Don't use ignoreskipactivation for thin LVM"
* Don't use ignoreskipactivation for thin LVM
* Fix iSCSI cleanup fix on discovery backends
* Fix manual scan for discovery type backends
* Fix ceph incremental backup fail
* Updated from global requirements

1.14.0
------

* iSCSI multipath: improve logging on connect
* Fix iSCSI cleanup issue when using discovery
* Updated from global requirements
* Add open-iscsi manual scan support
* Refactor iSCSI connect
* Fix slow test\_connect\_volume\_device\_not\_valid test
* Add libssl to bindep
* Refactor iSCSI disconnect
* Updated from global requirements
* Force LUN\_ID to an int

1.13.1
------

* Fix supported connectors for Power platform
* Removed invalid comments in tox.ini [flake8]
* Stop ignoring H904 hacking rule in tox
* Stop ignoring H405 hacking rule in tox
* Stop ignoring E265 pycodestyle rule in tox
* Stop ignoring E123 and E125 pycodestyle rules
* Update hacking version to align with Cinder
* Fixed the veritas connector path
* Change code to be more Pythonic

1.13.0
------

* Return correct device path from Veritas connector
* Prevent rbd map again if it's already mapped
* Check host device alive before multipath id discovery
* Updated from global requirements
* Changed way of providing RBD keyring from keyring\_path to client token
* encryptors: Delay removal of legacy provider names
* Change log level on \_get\_hba\_channel\_scsi\_target
* Veritas os-brick connector should use privsep
* Adding support for FibreChannelConnector for PPC64
* Updated from global requirements

1.12.0
------

* Fixed generated temp file problem for RBD backend
* Replace random uuid with fake uuid in unit tests
* Updated from global requirements
* Mask logging of connection info for iSCSI connector
* Include identity information in rbd commands
* os-brick connector for Veritas HyperScale
* Move vzstorage related code out of RemoteFsClient
* Updated from global requirements
* RBD: consider a custom keyring in connection info
* Add Ocata release notes page
* Using assertIsNone(x) instead of assertEqual(None, x)
* Remove log translations
* Updated from global requirements
* Fix iSCSI multipath rescan
* Retry multipath flush when map is in use
* Fix multipath flush when using friendly names
* Fix unittest run on s390x host

1.11.0
------

* Updated from global requirements
* Encryptors: Fix compat with Nova encryptors for Ocata
* Add Python 3.5 classifier and venv

1.10.0
------

* Fix a wrong indentation
* s390 FC device path fix for Ubuntu

1.9.0
-----

* Updated from global requirements
* encryptors: Introduce encryption provider constants
* Add debug to tox environment
* Windows connectors: add device\_scan\_interval arg
* Add curl to bindep
* Removes unnecessary utf-8 encoding
* Replace assertDictMatch with assertDictEqual
* Add Constraints support and missing bindep.txt dependencies
* Move castellan to test-reqs
* Fix import method to follow community guideline
* Remove the duplicate calls to rescan
* Code cleanup in initiator/linuxfc.py
* Updated from global requirements
* linuxfc: log path when HBA not found
* RBD: ensure temporary config gets deleted
* os-brick: Add bindep support
* Show team and repo badges on README
* Updated from global requirements
* Add developer docs url in README.rst(trivial)
* encryptors: Workaround mangled passphrases
* encryptors: Mock os\_brick.executor correctly
* RBD: enclose ipv6 addresses in square brackets
* Updated from global requirements
* Mask passwords in utils.trace for func params

1.8.0
-----

* Updated from global requirements
* Raise specific exception for an invalid protocol connector
* Updated from global requirements
* Multipath device keeps old size when extending volume
* Updated from global requirements
* Delete deprecated Hacking in tox.ini

1.7.0
-----

* Delete  MANIFEST.in in os-brick
* Drop py33 support
* Windows remotefs: create mountpoints at the expected location
* linuxrbd: remove obsolete comment on close()
* Enable release notes translation
* Detect if Fibre Channel support exists
* Close connection to ceph after cinder bakcup
* Updated from global requirements
* Updated from global requirements
* Replace 'assertTrue(a not in b)' with 'assertNotIn(a, b)'
* s390x iscsi support enablement
* Docstrings should not start with a space
* Use assertEqual() instead of assertDictEqual()
* Stop calling multipath -r when attaching/detaching iSCSI volumes
* DISCO: Log init message as debug
* Change warning to info logging for connected volume rescans
* standardize release note page ordering
* Mock time.sleep for test\_lv\_deactivate\_timeout test
* Update reno for stable/newton
* Change assertTrue(isinstance()) with optimal assert
* Remove self.\_\_dict\_\_ for formatting strings
* Create connector aliases to the new connectors refactor
* TrivialFix: Remove logging import unused

1.6.0
-----

* Fix cmd execution stderr, stdout unicode errors
* Mask out passwords when tracing
* RBD: Fix typo in rados timeout assignment
* Fixes with customized ceph cluster name
* Add retries to iSCSI connect\_volume
* Add connector for GPFS volumes
* Add missing %s in print message
* Fix linuxrbd to work with Python 3
* Add tracing unit tests
* Wrong param makes exception message throws inaccurate
* Fix the typo in the file
* Add connector for vmdk volumes
* Fix iSCSI discovery with ISER transport
* RemoteFsClient extend Executor
* Add Windows Fibre Channel connector
* Add Windows SMBFS connector
* Fix FC multipath cleanup
* Fix weak test\_vzstorage\_with\_mds\_list
* Fix the mocking mess
* Fix FC multipath rescan
* Update the home-page info with the developer documentation
* Splitting Out Connectors from connector.py
* Remove race condition from lvextend

1.5.0
-----

* Updated from global requirements
* Mock write and read operations to filesystem
* Local attach feature in RBD connector
* Remove useless info logging in check\_valid\_device
* ScaleIO to get volume name from connection properties
* Add ignore for . directories
* Upgrade tox to 2.0
* Add trace facility
* Fix string interpolation to delayed to be handled by the logging code
* Replace assertEqual(None, \*) with assertIsNone in tests
* Fix wrong path used in iscsi "multipath -l"
* Updated from global requirements
* Remove unused LOG to keep code clean
* Fix multipath iSCSI encrypted volume attach failure
* Updated from global requirements
* release note for windows iSCSI
* Add Windows iSCSI connector
* Make code line length less than 79 characters
* Updated from global requirements
* Replace ip with portal to express more accurately
* Fix argument order for assertEqual to (expected, observed)
* Add fast8 to quickly test pep8 changes
* Make RBDImageMetadata and RBDVolumeIOWrapper re-usable

1.4.0
-----

* Copy encryptors from Nova to os-brick
* Disconnect multipath iscsi may logout session
* Add support for processutils.execute
* Updated from global requirements
* Mock time.sleep in ISCSIConnectorTestCase
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Ensure that the base connector is platform independent
* Updated from global requirements
* os-brick refactor get\_connector\_properties
* Handle exception case with only target\_portals
* Retire ISERConnector from documentation
* LVM: Create thin pool with 100%FREE
* Fix coverage generation
* Trivial rootwrap -> privsep replacement
* Updated from global requirements
* Updated from global requirements

1.3.0
-----

* LVM: Call supports\_thin\_provisioning as static
* Add pylint tox env
* Don't use oslo-incubator stuff
* Update reno for stable/mitaka
* Replace \_get\_multipath\_device\_name with \_discover\_mpath\_device
* Fixes get\_all\_available\_volumes return value
* Updated from global requirements
* Fix Scality SOFS support
* Actually run the RemoteFSClient unit tests
* Mock time.sleep() in 3 unit tests

1.1.0
-----

* Fix setting the multipath\_id
* Updated from global requirements
* Add sheepdog support
* Include multipath -ll output in failed to parse warning

1.0.0
-----

* Fix iSCSI Multipath
* Add missing release notes
* Lun id's > 255 should be converted to hex
* Updated from global requirements
* Fix output returned from get\_all\_available\_volumes
* Raise exception in find\_multipath\_device
* Updated from global requirements
* Remove multipath -l logic from ISCSI connector
* Add vzstorage protocol for remotefs connections
* Add reno for release notes management
* Fix get\_device\_size with newlines
* Updated from global requirements

0.8.0
-----

* Add connector for ITRI DISCO cinder driver
* os-brick add extend\_volume API
* os-brick add cinder local\_dev lvm code
* Revert "Use assertTrue/False instead of assertEqual(T/F)"
* Fix another unit test failure
* Use assertTrue/False instead of assertEqual(T/F)
* Actually log the command used in \_run\_iscsiadm
* Updated from global requirements
* remove python 2.6 trove classifier

0.7.0
-----

* DRBD connector class
* Updated from global requirements
* Deprecated tox -downloadcache option removed
* ScaleIO could connect wrong volume to VM
* Allow RBDClient to be used from a with-statement
* Updated from global requirements
* Remove brackets from portal
* Minor documentation fixes for the method parameters

0.6.0
-----

* Add requests to project requirements
* Add quobyte protocol for remotefs connections
* Correct a log message
* Brick add param documentation to connectors
* Updated from global requirements
* Multipath Device Action Being Parsed as Name
* Fix iopsLimit parameter in ScaleIO connector
* Parse FCoE sysfs device paths
* Add new Connector APIs for path validation
* Updated from global requirements
* Fix test\_connect\_volume when skip is bypassed
* Fetch and return SCSI WWN
* Update minimum tox version to 1.8
* Updated from global requirements
* Wait for FC multipath devices to become writable
* Check RBDConnector.disconnect\_volume device\_info argument
* Updated from global requirements
* Fix silent iSCSI login failures
* Change os-brick to use ostestr
* Updated from global requirements
* Fix iSCSI multipath cleanup
* Removed use of deprecated LOG.warn
* Fix typo in vgc-cluster command in rootwrap file

0.5.0
-----

* Change ignore-errors to ignore\_errors
* Updated from global requirements
* Add fancy pypi version and download images
* iSCSI fix misleading Log warning on connect fail
* Fix missing value types for log message
* Log a message when can’t find multipath device
* Removed unused dependency: discover
* Use 'device' instead of 'volume\_path'

0.4.0
-----

* Add support for --interface option in iscsiadm
* FC Stop calling multipath command line
* Updated from global requirements
* Add rootwrap filters
* Handle FC LUN IDs greater 255 correctly on s390x architectures
* Fix incorrect comments in FibreChannelConnector
* Adding CHAP discovery logic to os-brick
* Updated from global requirements
* Remove the iSCSI rescan during disconnect
* Remotefs: add ScalityFS support
* Updated from global requirements
* Updated from global requirements
* Change SCSI device removal backoff rate
* Changed connector protocols to use constants
* Updated from global requirements
* Fix race in check and access of /dev/disk/by-path/
* Updated from global requirements

0.3.2
-----

* remotefs: add virtuozzo storage support
* Perform port\_rescan on s390x platforms
* FC discover existing devices for removal

0.3.1
-----

* Use pbr's automatically generated changelog

0.3.0
-----

* Updated from global requirements
* Updated from global requirements
* Update changelog to 0.3.0 being latest
* Fix mock==1.1.0 break unit tests
* Cleanup Python 3 changes
* Prep for 0.2.1 release
* Add connector driver for the ScaleIO cinder driver
* Added ABCMeta class to the InitiatorConnector
* Remove unused oslo incubator files
* update os-brick to pass python3 tests
* Updated from global requirements
* FC Eliminate the need to return devices list
* Switch to oslo.service
* Add RBD connector
* Add HGST Solutions connector
* Support host type specific block volume attachment
* Updated from global requirements
* optimize multipath call to identify IQN
* Updated from global requirements
* Trivial exception parameter name fix for Huawei
* Fix connecting unnecessary iSCSI sessions issue
* Fix disconnecting necessary iSCSI sessions issue
* Add retry to iSCSI delete
* Updated from global requirements
* Add missing connectors to factory test
* Fix local connector test case inheritance

0.2.0
-----

* Allow overriding the host field
* Assign the platform after declaration
* Added a unit test for masking iscsiadm passwords
* Preparing for the 0.1.1 release
* ISCSI be careful parsing iscsiadm output
* Updated from global requirements
* Drop use of 'oslo' namespace package

0.1.0
-----

* Update README to work with release tools
* Brick: Fix race in removing iSCSI device
* Update os-brick requirements
* Mask passwords with iscsiadm commands
* Sync latest \_i18n module for os\_brick
* Use oslo\_log instead of openstack.common.log
* Sync loopingcall from oslo-incubator for os-brick
* Fix wrong command for \_rescan\_multipath
* Fix multipath device discovery when UFN is enabled
* Use six.text\_type instead of unicode
* Fix missing translations for log messages
* Remove error messages from multipath command output before parsing
* Remove mocks after each unit test finished
* Correct project name in .gitreview
* Adjust os-brick to support FCP on System z systems
* Use target\_portals/iqns/luns for alternative target information
* Fix comments style according to Hacking rules
* Update the documentation for os-brick
* Failover to alternative iSCSI portals on login failure
* Remove some unused exceptions from Cinder
* Brick os-brick up to par with cinder brick
* renamed the project to os-brick
* Created the Brick library from Cinder
