def find_cloud_by_name(cloud_name: str, sdk: Optional["AnyscaleSDK"] = None) -> Optional[str]: sdk = sdk or get_anyscale_sdk() cloud_id = None logger.info(f"Looking up cloud with name `{cloud_name}`. ") paging_token = None while not cloud_id: result = sdk.search_clouds(clouds_query=dict( paging=dict(count=50, paging_token=paging_token))) paging_token = result.metadata.next_paging_token for res in result.results: if res.name == cloud_name: cloud_id = res.id logger.info( f"Found cloud with name `{cloud_name}` as `{cloud_id}`") break if not paging_token or cloud_id or not len(result.results): break return cloud_id
def __init__( self, test_name: str, project_id: str, sdk: Optional["AnyscaleSDK"] = None, smoke_test: bool = False, ): self.sdk = sdk or get_anyscale_sdk() self.test_name = test_name self.smoke_test = smoke_test self.project_id = project_id self.project_name = get_project_name(self.project_id, self.sdk) self.cluster_name = ( f"{test_name}{'-smoke-test' if smoke_test else ''}_{int(time.time())}" ) self.cluster_id = None self.cluster_env = None self.cluster_env_name = None self.cluster_env_id = None self.cluster_env_build_id = None self.cluster_compute = None self.cluster_compute_name = None self.cluster_compute_id = None self.autosuspend_minutes = DEFAULT_AUTOSUSPEND_MINS
def setUp(self) -> None: self.sdk = get_anyscale_sdk() self.cluster_env = TEST_CLUSTER_ENV self.cluster_compute = TEST_CLUSTER_COMPUTE self.cluster_manager = FullClusterManager( project_id=UNIT_TEST_PROJECT_ID, sdk=self.sdk, test_name=f"unit_test__{self.__class__.__name__}__endToEnd", )
def __init__( self, cluster_manager: ClusterManager, file_manager: FileManager, working_dir: str, sdk: Optional["AnyscaleSDK"] = None, ): super(SDKRunner, self).__init__( cluster_manager=cluster_manager, file_manager=file_manager, working_dir=working_dir, ) self.sdk = sdk or get_anyscale_sdk() self.last_command_scd_id = None
def __init__( self, test_name: str, project_id: str, sdk: Optional[AnyscaleSDK] = None ): self.sdk = sdk or get_anyscale_sdk() self.test_name = test_name self.project_id = project_id self.project_name = get_project_name(self.project_id, self.sdk) self.cluster_name = f"{test_name}_{int(time.time())}" self.cluster_id = None self.cluster_env = None self.cluster_env_name = None self.cluster_env_id = None self.cluster_env_build_id = None self.cluster_compute = None self.cluster_compute_name = None self.cluster_compute_id = None self.autosuspend_minutes = DEFAULT_AUTOSUSPEND_MINS
def get_cluster_name(cluster_id: str, sdk: Optional["AnyscaleSDK"] = None) -> str: sdk = sdk or get_anyscale_sdk() result = sdk.get_cluster(cluster_id) return result.result.name
def get_project_name(project_id: str, sdk: Optional["AnyscaleSDK"] = None) -> str: sdk = sdk or get_anyscale_sdk() result = sdk.get_project(project_id) return result.result.name