from gso.products.product_types.device \
    import DeviceBlock
from gso import settings
import requests


def provision_node(
        node_subscription_params: DeviceBlock,
        dry_run: bool = False):
    oss = settings.load_oss_params()
    pp_params = oss.PROVISIONING_PROXY
    assert pp_params
    r = requests.get(
        f'https://{pp_params.api_base}'
        f'/api/version',
        params=node_subscription_params.dict())
    r.raise_for_status()