/
usr
/
lib
/
python3
/
dist-packages
/
uaclient
/
clouds
/
/usr/lib/python3/dist-packages/uaclient/clouds
mkdir
upload
Name
Size
Mode
Actions
__pycache__/
-
0755
rm
aws.py
5805
0644
edit
dl
rm
azure.py
2915
0644
edit
dl
rm
gcp.py
4392
0644
edit
dl
rm
identity.py
3204
0644
edit
dl
rm
lxd.py
2604
0644
edit
dl
rm
__init__.py
1801
0644
edit
dl
rm
Edit:
/usr/lib/python3/dist-packages/uaclient/clouds/__init__.py
(1801B)
import abc from typing import Any, Dict from uaclient import config, contract class AutoAttachInstance(metaclass=abc.ABCMeta): @property @abc.abstractmethod def is_viable(self) -> bool: """Return True if the machine is a viable AutoAttachCloudInstance.""" pass @abc.abstractmethod def acquire_pro_token(self, cfg: config.UAConfig) -> str: """ Cloud-specific implementation of acquiring the pro token using whatever method suits the platform """ pass @abc.abstractmethod def should_poll_for_pro_license(self) -> bool: """ Cloud-specific checks for whether the daemon should continously poll for Ubuntu Pro licenses. """ pass @abc.abstractmethod def is_pro_license_present(self, *, wait_for_change: bool) -> bool: """ Check for an Ubuntu Pro license """ pass class PublicCloudAutoAttachInstance(AutoAttachInstance, metaclass=abc.ABCMeta): @property @abc.abstractmethod def identity_doc(self) -> Dict[str, Any]: """Return the identity document representing this cloud instance""" pass @property @abc.abstractmethod def cloud_type(self) -> str: """Return a string of the cloud type on which this instance runs""" pass def acquire_pro_token(self, cfg: config.UAConfig) -> str: """ Cloud-specific implementation of acquiring the pro token using whatever method suits the platform """ contract_client = contract.UAContractClient(cfg) token_response = contract_client.get_contract_token_for_cloud_instance( cloud_type=self.cloud_type, data=self.identity_doc ) return token_response["contractToken"]
Save
cmd:
run