Coverage for manila/services/api.py: 100%

13 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2026-02-18 22:19 +0000

1# Licensed under the Apache License, Version 2.0 (the "License"); you may 

2# not use this file except in compliance with the License. You may obtain 

3# a copy of the License at 

4# 

5# http://www.apache.org/licenses/LICENSE-2.0 

6# 

7# Unless required by applicable law or agreed to in writing, software 

8# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 

9# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 

10# License for the specific language governing permissions and limitations 

11# under the License. 

12 

13from oslo_config import cfg 

14 

15from webob import exc 

16 

17from manila.db import base 

18from manila.share import rpcapi as share_rpcapi 

19 

20CONF = cfg.CONF 

21 

22 

23class API(base.Base): 

24 """API for handling service actions.""" 

25 

26 def __init__(self): 

27 super(API, self).__init__() 

28 self.share_rpcapi = share_rpcapi.ShareAPI() 

29 

30 def ensure_shares(self, context, service, host): 

31 """Start the ensure shares in a given host.""" 

32 

33 if service['state'] != "up": 

34 raise exc.HTTPConflict( 

35 "The service must have its state set to 'up' prior to running " 

36 "ensure shares.") 

37 

38 self.share_rpcapi.ensure_driver_resources(context, host)