# Trainy Skypilot Policy
This is a package that defines the Skypilot policies necessary for running on Trainy clusters. The purpose of the policy is to
- mutate tasks to add the necessary labels/annotations (kueue, networking, etc.) per cloud provider
- set the available k8s clusters to be those that are visible via tailscale in the allowed k8s cluster contexts
For users, they set in `~/.sky/config.yaml`
```bash
admin_policy: trainy.policy.DynamicKubernetesContextsUpdatePolicy
```
and install
```bash
pip install "trainy-skypilot-nightly[kubernetes]"
pip install trainy-policy-nightly
```
[Skypilot Admin Policies](https://skypilot.readthedocs.io/en/latest/cloud-setup/policy.html)
Raw data
{
"_id": null,
"home_page": null,
"name": "trainy-policy-nightly",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Andrew Aikawa",
"author_email": "asai@berkeley.edu",
"download_url": "https://files.pythonhosted.org/packages/db/d6/b91d62b095df4ca22adce1aa622c9008b1e89c3fe4a5d1856ead13b30db4/trainy_policy_nightly-0.1.0.dev20241221104020.tar.gz",
"platform": null,
"description": "# Trainy Skypilot Policy\n\nThis is a package that defines the Skypilot policies necessary for running on Trainy clusters. The purpose of the policy is to \n\n- mutate tasks to add the necessary labels/annotations (kueue, networking, etc.) per cloud provider\n- set the available k8s clusters to be those that are visible via tailscale in the allowed k8s cluster contexts\n\nFor users, they set in `~/.sky/config.yaml`\n\n```bash\nadmin_policy: trainy.policy.DynamicKubernetesContextsUpdatePolicy\n```\n\nand install\n```bash\npip install \"trainy-skypilot-nightly[kubernetes]\"\npip install trainy-policy-nightly\n```\n\n[Skypilot Admin Policies](https://skypilot.readthedocs.io/en/latest/cloud-setup/policy.html)",
"bugtrack_url": null,
"license": null,
"summary": "Trainy Skypilot Policy",
"version": "0.1.0.dev20241221104020",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7bb53be193d1eb95df0dca1236ea9fee84be43530d79ab05589952a7bff63845",
"md5": "b3d73ac6134f687b393ae50c8e5fa911",
"sha256": "e37e9c535c4174f80be0618203d00996fb408feba849e067ab086fddd932633d"
},
"downloads": -1,
"filename": "trainy_policy_nightly-0.1.0.dev20241221104020-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b3d73ac6134f687b393ae50c8e5fa911",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 9977,
"upload_time": "2024-12-21T10:40:22",
"upload_time_iso_8601": "2024-12-21T10:40:22.594494Z",
"url": "https://files.pythonhosted.org/packages/7b/b5/3be193d1eb95df0dca1236ea9fee84be43530d79ab05589952a7bff63845/trainy_policy_nightly-0.1.0.dev20241221104020-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dbd6b91d62b095df4ca22adce1aa622c9008b1e89c3fe4a5d1856ead13b30db4",
"md5": "406e2a7718bdb9c1bbf767861bf0637e",
"sha256": "48ba76a7a8f0f46c1220b32afddd1046e7e605915acfaf247c94d571e10e26e8"
},
"downloads": -1,
"filename": "trainy_policy_nightly-0.1.0.dev20241221104020.tar.gz",
"has_sig": false,
"md5_digest": "406e2a7718bdb9c1bbf767861bf0637e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 6992,
"upload_time": "2024-12-21T10:40:26",
"upload_time_iso_8601": "2024-12-21T10:40:26.023940Z",
"url": "https://files.pythonhosted.org/packages/db/d6/b91d62b095df4ca22adce1aa622c9008b1e89c3fe4a5d1856ead13b30db4/trainy_policy_nightly-0.1.0.dev20241221104020.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-21 10:40:26",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "trainy-policy-nightly"
}