encryptors module forces cert and scheduler services to depend on cinderclient

Bug #1246103 reported by Solly Ross
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Medium
Unassigned
Havana
Fix Released
Medium
Unassigned
Packstack
Invalid
Undecided
Unassigned

Bug Description

When Nova Scheduler is installed via packstack as the only explicitly installed service on a particular node, it will fail to start. This is because it depends on the Python cinderclient library, which is not marked as a dependency in 'nova::scheduler' class in Packstack.

Revision history for this message
Solly Ross (sross-7) wrote :
Changed in packstack:
status: New → Invalid
no longer affects: nova
summary: - Nova Scheduler Fails to Start Due to Missing cinderclient
+ encryptors module forces cert and scheduler services to depend on
+ cinderclient
Changed in nova:
status: New → Confirmed
importance: Undecided → Medium
milestone: none → icehouse-1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/54512
Committed: http://github.com/openstack/nova/commit/a3aeace9afd5c533f040452f33482fdb55d93927
Submitter: Jenkins
Branch: master

commit a3aeace9afd5c533f040452f33482fdb55d93927
Author: Xavier Queralt <email address hidden>
Date: Wed Oct 30 10:28:43 2013 +0100

    Pass volume_api to get_encryption_metadata

    The module encryptors was creating a volume API instance in the module
    scope which caused all the modules importing it to depend on
    cinderclient.

    This was affecting scheduler and cert services which at some point import
    the compute manager module only to access their config options. It makes
    no sense to force scheduler and cert services to require cinderclient.

    This patch makes the callers of get_encryption_metadata to pass the
    volume api object to this method to prevent this dependency.

    Closes-Bug: #1246103
    Change-Id: I9eb4ae3754fa2a5ac646560a62477d6ed672e272

Changed in nova:
status: Confirmed → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (stable/havana)

Fix proposed to branch: stable/havana
Review: https://review.openstack.org/54533

Alan Pevec (apevec)
Changed in nova:
assignee: nobody → Xavier Queralt (xqueralt)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (stable/havana)

Reviewed: https://review.openstack.org/54533
Committed: http://github.com/openstack/nova/commit/ff67b463b139d7b6bb14033c12ab59c5afdde4c2
Submitter: Jenkins
Branch: stable/havana

commit ff67b463b139d7b6bb14033c12ab59c5afdde4c2
Author: Xavier Queralt <email address hidden>
Date: Wed Oct 30 10:28:43 2013 +0100

    Pass volume_api to get_encryption_metadata

    The module encryptors was creating a volume API instance in the module
    scope which caused all the modules importing it to depend on
    cinderclient.

    This was affecting scheduler and cert services which at some point import
    the compute manager module only to access their config options. It makes
    no sense to force scheduler and cert services to require cinderclient.

    This patch makes the callers of get_encryption_metadata to pass the
    volume api object to this method to prevent this dependency.

    Closes-Bug: #1246103
    Change-Id: I9eb4ae3754fa2a5ac646560a62477d6ed672e272
    (cherry picked from commit a3aeace9afd5c533f040452f33482fdb55d93927)

Thierry Carrez (ttx)
Changed in nova:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: icehouse-1 → 2014.1
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.