Metadata-Version: 2.4
Name: extension-ray-jupyterlab-sagemaker-ai
Version: 0.1.1
Summary: SageMaker JupyterLab Ray extension for HyperPod Ray cluster discovery and connection
Home-page: https://aws.amazon.com/sagemaker/
Author: Amazon
License: Apache-2.0
Keywords: Jupyter,JupyterLab,JupyterLab4,Ray,HyperPod
Platform: Linux
Platform: Mac OS X
Platform: Windows
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Framework :: Jupyter
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: jupyterlab<4.6,>=4
Requires-Dist: sagemaker_jupyterlab_extension_common>=0.2.10
Requires-Dist: jsonschema
Requires-Dist: requests
Provides-Extra: dev
Requires-Dist: pytest>=6; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: pytest-asyncio; extra == "dev"
Requires-Dist: pytest_jupyter; extra == "dev"
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: platform
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# SageMaker JupyterLab Ray Extension

A JupyterLab 4 extension for discovering and connecting to Ray clusters running on SageMaker HyperPod (EKS-orchestrated) from within SageMaker Studio.

## Overview

This extension adds a **Ray Clusters** tab to the "Connect to cluster" dialog in the JupyterLab notebook toolbar. Users can:

- Browse RayClusters across every namespace they can access (paginated, with a
  per-namespace fallback when cluster-wide listing is not permitted)
- View cluster status, Ray version, workers, GPUs, vCPUs, and namespace
- Insert a job submission code snippet into the active notebook cell
- Deep-link to cluster details in the HyperPod console

## Data Layer

Ray cluster data is fetched via **Skylens** — AWS's managed Kubernetes API proxy (`eks-proxy.eks.<region>.amazonaws.com`), authenticated with SigV4 using the space execution role. No `kubectl` or kubeconfig required.

> **Note:** The HyperPod default access policies do not grant `ray.io` API access by default. A cluster admin must apply a Kubernetes RBAC `Role`+`RoleBinding` granting `ray.io` read access to the space's execution role.

## Development

```bash
brazil-build release
```

- **This package on its own** (build, unit tests, lint, watch mode, the
  `jp_fetch` test note): see [`DEVELOPING.md`](./DEVELOPING.md).
- **Testing Ray together with the Common and EMR extensions** (the shared
  "Connect to cluster" dialog, end to end): see
  [`../SageMakerStudioJupyterLabExtensionCommon/E2E_TESTING.md`](../SageMakerStudioJupyterLabExtensionCommon/E2E_TESTING.md).
