2021-11-20 18:31:25 -05:00
|
|
|
from typing import Dict
|
|
|
|
|
2021-11-19 22:16:05 -05:00
|
|
|
from zope.interface import Interface
|
|
|
|
|
|
|
|
from .IUser import IUser
|
|
|
|
|
|
|
|
|
|
|
|
class ICloudService(Interface):
|
|
|
|
"""Performs operations on the CSC Cloud."""
|
|
|
|
|
|
|
|
def create_account(user: IUser):
|
|
|
|
"""
|
|
|
|
Activate an LDAP account in CloudStack for the given user.
|
|
|
|
"""
|
2021-11-20 18:31:25 -05:00
|
|
|
|
|
|
|
def purge_accounts() -> Dict:
|
|
|
|
"""
|
|
|
|
Delete CloudStack accounts which correspond to expired CSC accounts.
|
|
|
|
A warning message will be emailed to users one week before their
|
|
|
|
cloud account is deleted.
|
|
|
|
Another message will be emailed to the users after their cloud account
|
|
|
|
has been deleted.
|
|
|
|
"""
|