change the entry version: this is 22.0.0, no longer a snapshot
Nova drivers:
Antelope:
change the entry version: this is 27.0.0, no longer a snapshot
build infrastructure:
note the documentation URLs in the project metadata
install the kolla_rebuild module and the kolla-rebuild executable,
also updating the requirements files
documentation:
fix a couple of duplicate words as spotted by the spellintian tool
Additions
Cinder drivers:
Bobcat:
recognize 23.0.0 and add the StorPool updates
Nova drivers:
Bobcat:
recognize 28.0.0, 28.0.1, and a couple of snapshots
Antelope:
recognize some more upstream snapshots
Zed:
recognize a couple of snapshots
Yoga:
recognize 25.2.1
os-brick:
add it as a new component
Bobcat:
recognize 6.4.0 and add the StorPool updates
Antelope:
recognize 6.2.0 and add the StorPool updates
Zed:
recognize a snapshot and add the StorPool updates
Yoga:
recognize 5.2.2 (both upstream and the Ubuntu Cloud Archive version)
and add the StorPool updates
documentation:
hacking:
add a couple of words about the MkDocs-based documentation
add a brief section about adding a detect-only component entry
kolla-rebuild:
handle containers that need more than one component updated
(e.g. with Nova we also need to update the os-brick drivers)
use the canonical 2023.1 name for Antelope and 2023.2 for Bobcat
but still recognize "antelope" and "bobcat" as aliases
add the -d / --topdir option to specify the path to
the storpool-openstack-integration directory so that kolla-rebuild
may be invoked directly from a virtual environment
Other changes
testing infrastructure:
update the Tox configuration file to the 4.x format
documentation:
kolla: update the documentation for using a virtual environment
use MkDocs 1.5 and mkdocstrings 0.24 with no changes
sp-osi:
update the bundled copy of sp-variant to version 3.4.2
kolla-rebuild:
catch up with the changes in the changelog formatting
rename "component" to the more specific "container"
correct the requirements path in the pyproject.toml file
correct the sp-osi requirements, only leave the ones that are
relevant to sp_osi itself
use the canonical names for the cfg-diag and sp-variant libraries
sp-osi:
catch more exceptions when parsing the components file
various minor fixes and refactoring as suggested by ruff
Additions
documentation:
convert the CHANGES.md, HACKING.md, and README.md files
into a MkDocs-based documentation site within the docs/ directory
add a brief overview blurb to the documentation main page
sp-openstack:
include a simplified version of the utf8-locale library to
make reading commands output a bit more reliable
kolla-rebuild:
new tool for rebuilding the upstream Kolla container images
(the cinder-volume and nova-compute ones) to support the StorPool
Cinder backend
testing infrastructure:
add a Python unit test suite
add separate environments for running the command-line tools
other than sp-openstack itself
run ruff 0.0.260 with most of its checks enabled and satisfied
run ruff's isort emulation in a separate Tox environment
Other changes
Drop the drivers for OpenStack releases earlier than Victoria;
the Kilo through Queens drivers are of historical value only at
this point, and they were not described in the components file or
handled by the new sp-openstack tool anyway
Switch to SPDX license identifiers
documentation:
README: split this long file into several documentation sections
configure: drop some outdated information
hacking: minor updates:
running the full test suite is not optional
refer to tox-stages instead of tox-delay
temporarily comment out the Nox parts
sp-openstack:
sort the import section, fold typing into the main group
chroot-test:
turn this file into a full-fledged Python module (not installed,
only used for running the program itself)
simplify the file structure using deferred type annotations
various minor fixes and refactoring as suggested by ruff
sort the import section, fold typing into the main group
add a fix for always detaching Glance image volumes after conversions
implement the "revert a volume to a snapshot" Cinder feature
Wallaby:
add a fix for always detaching Glance image volumes after conversions
implement the "revert a volume to a snapshot" Cinder feature
drop the copy_image_to_volume() and copy_volume_to_image() methods
fix retyping a volume to another StorPool template
add iSCSI attach support
add multipath support when attaching a volume via iSCSI
Xena:
implement the "revert a volume to a snapshot" Cinder feature
drop the copy_image_to_volume() and copy_volume_to_image() methods
fix retyping a volume to another StorPool template
add multipath support when attaching a volume via iSCSI
recognize the 19.1.1 upstream and Ubuntu cloud archive version
Yoga:
implement the "revert a volume to a snapshot" Cinder feature
drop the copy_image_to_volume() and copy_volume_to_image() methods
fix retyping a volume to another StorPool template
add multipath support when attaching a volume via iSCSI
Nova drivers:
Wallaby:
recognize the 23.2.2 upstream and Ubuntu cloud archive version
Xena:
recognize the 24.2.0 upstream and Ubuntu cloud archive version
Yoga:
recognize the 25.1.0 upstream and Ubuntu cloud archive version
documentation:
add the "our Cinder driver supports trim/discard operations" flag to
the Cinder backend configuration example
sp-openstack:
convert an error object to a string before passing it to sys.exit()
build infrastructure:
add setuptools infrastructure for use with setuptools version 61 or later
add the py.typed marker file
testing infrastructure:
drop the "flake8 + hacking" test environment
add version constraints to the dependencies in all test environments
add the "validate" test environment to make sure the components.json file
remains sane
when validating the components.json file, make sure each outdated version
has exactly one non-outdated version in the same component and branch to
update to
add Nox test definitions
move the lists of test environment dependencies to separate files to
help Nox and Tox use the same ones
do not build diagnostic messages unless we need to (use lambdas in diag calls)
reimplement the sp-openstack tool in Python 3.6 or higher
let sp-openstack use the dpkg-divert tool on Debian/Ubuntu systems
(unless the -D / --no-divert command-line option is specified) to
make sure the local changes are not lost if the OpenStack packages are
upgraded
add the "uninstall" command to the sp-openstack tool
detect the Xena release of OpenStack
add some StorPool driver fixes for the OpenStack Victoria, Wallaby, and
Xena releases:
drop _attach_volume(), _detach_volume(), and backup_volume()
reimplement create_cloned_volume() in a much more efficient way
add the "groups" command to the sp-openstack tool to only check, create,
and set up the "spopenstack" group and the service accounts' membership,
as well as the /var/spool/storpool-spopenstack/ directory
detect the Rocky, Stein, Train, Victoria, and Wallaby releases of OpenStack
Add the Ocata Cinder volume driver and Nova attachment driver.
Add the Newton and Ocata os-brick connector driver.
Add the capability to make different changes to the same file for
different OpenStack releases.
Remove the "probably unaligned" warnings from the documentation of
the "storpool volume list" and "storpool volume status" checks, since
the StorPool CLI tool aligns the output in recent versions.
Let the documentation use the "openstack" client tool where possible.
Allow the owner and group of the /var/spool/openstack-storpool/
shared state directory to be overridden using the -u and -g
options of the sp-openstack tool.