Deploy patches (minor fixes) for OpenStack

Registered by Mike Scherbakov

Design Document


Defense speech:

Patches to OpenStack components should be deployable through a single action by an administrator after downloading the patch(es).

For Fuel, once the patch(es) have downloaded, the install should be launched from within Fuel itself. Information about the environment should be available without further user input, so few to no questions should be required for install.

The following requirements apply:
Downtime should be limited to restarting the service/executable with the new patched version.
An administrator must be able to identify that the products have been patched based on a new version (string). This version string should be visible through Fuel’s UI.
An ability to rollback the patch if a catastrophic event is caused by the patch is desirable.

Feature Lead: Dmitry Ilyin (Library Part)
Mandatory Design Reviewers: Dmitry Ilyin
Developers: Igor Kalnitskiy, Dmitry Ilyin, Ekaterina Pimenova
QA: Tatyana Leontovich

Blueprint information

Vladimir Kuklin
Dmitry Ilyin
Dmitry Ilyin
Series goal:
Accepted for 5.1.x
Milestone target:
milestone icon 5.1
Started by
Vladimir Kuklin
Completed by
Dmitry Pyzhov

Related branches


Gerrit topic:,topic:bp/patch-openstack,n,z

Addressed by:
    Null-override yum/apt providers and package type (puppet 3.4.2)
Also addressed by:

Addressed by:
    Ensure packages state change notifies related services

Addressed by:
    Add package providers and version lookup

Addressed by:
    Ensure 'latest' is replaced to 'present' for OS packages

Addressed by:
    Cobbler part of Openstack patching process

Addressed by:
    Cobbler part of Openstack patching process.

Gerrit topic:,topic:bug/1348130,n,z

Addressed by:
    Support custom package repositories for different fuel versions

Addressed by:
    Cobbler part of Openstack patching process.


Work Items

Work items:
Hacked overrided apt/yum providers with rollbacks for puppet: DONE
Wrapped overrided package type and specs for puppet: DONE
Ensure notifies Package<||>~>Service<||> in modules: DONE
Versions.yaml fixtures: INPROGRESS
Update repos management in manifests: DONE
Nailgun part of the Update process: DONE
CI deployment using fixtures: INPROGRESS

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.