2 # -*- coding: utf-8 -*-
3 # Licensed under the Apache License, Version 2.0 (the "License"); you may
4 # not use this file except in compliance with the License. You may obtain
5 # a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 # License for the specific language governing permissions and limitations
16 # @author: David Blaisonneau <david.blaisonneau@orange.com>
17 # @author: Arnaud Morin <arnaud1.morin@orange.com>
19 from opensteak.foreman_objects.objects import ForemanObjects
20 from opensteak.foreman_objects.item import ForemanItem
21 from pprint import pprint as pp
24 class PuppetClasses(ForemanObjects):
26 OperatingSystems class
28 objName = 'puppetclasses'
29 payloadObj = 'puppetclass'
31 def list(self, limit=20):
33 Get the list of all objects
35 @param key: The targeted object
36 @param limit: The limit of items to return
37 @return RETURN: A ForemanItem list
39 puppetClassList = list()
40 for v in self.api.list(self.objName, limit=limit).values():
41 puppetClassList.extend(v)
42 return list(map(lambda x:
43 ForemanItem(self.api, x['id'],
44 self.objName, self.payloadObj,