# cluster-agent
# Table of contents
- [Project setup](#project-setup)
- [Dependencies](#dependencies)
- [Install the package](#install-the-package)
- [Setup parameters](#setup-parameters)
- [Local usage example](#local-usage-exemple)
## Project Setup
### Dependencies
* python3-venv
## Install the package
To install the package from Pypi simply run `pip install ovs-cluster-agent`.
## Setup parameters
1. Setup dependencies
You can use whenever dependency manager you want to. Just run the command below (and the ones following) on behalf of the manager you prefer.
```bash
make dependencies
```
2. Setup `.env` parameters
```bash
CLUSTER_AGENT_BASE_API_URL="<base-api-url>"
CLUSTER_AGENT_BASE_SLURMRESTD_URL="<slurmrestd-endpoint>"
CLUSTER_AGENT_X_SLURM_USER_NAME="<slurmrestd-user-name>"
CLUSTER_AGENT_SLURMRESTD_JWT_KEY_PATH="/path/to/the/jwt/secret/key"
CLUSTER_AGENT_SLURMRESTD_JWT_KEY_STRING="jwt-secret-key-in-plain-text"
CLUSTER_AGENT_SENTRY_DSN="<sentry-dsn-key>"
CLUSTER_AGENT_OIDC_DOMAIN="<OIDC-domain>"
CLUSTER_AGENT_OIDC_AUDIENCE="<OIDC-audience>"
CLUSTER_AGENT_OIDC_CLIENT_ID="<OIDC-app-client-id>"
CLUSTER_AGENT_OIDC_CLIENT_SECRET="<OIDC-app-client-secret>"
CLUSTER_AGENT_LDAP_HOST="<hostname-for-ldap>"
CLUSTER_AGENT_LDAP_DOMAIN="<LDAP-domain>" # Defaults to match LDAP_HOST
CLUSTER_AGENT_LDAP_USERNAME="<admin-user>"
CLUSTER_AGENT_LDAP_PASSWORD="<admin-password>"
```
NOTE: `CLUSTER_AGENT_SENTRY_DSN` is optional. If you do not pass it the agent understands Sentry will not be used.
NOTE: When both `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_PATH` and `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_STRING` are passed, the agent will completely ignore the `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_PATH` and will prioritize the `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_STRING`. Beware this behaviour.
## Local usage example
1. Run app
```bash
agentrun
```
**Note**: this command assumes you're inside a virtual environment in which the package is installed.
**NOTE**: beware you should care about having the same user name you're using to run the code in the slurmctld node. For example, if `cluster_agent` will run the `make run` command then the slurmctld node also must have a user called `cluster_agent`.
Raw data
{
"_id": null,
"home_page": "https://github.com/omnivector-solutions/ovs-cluster-agent/",
"name": "ovs-cluster-agent",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "armada,hpc",
"author": "omnivector-solutions",
"author_email": "info@omnivector.solutions",
"download_url": "https://files.pythonhosted.org/packages/45/d0/8f25b30adb4bc62e4181c939eafb631566e993bb841e75df3faf53e8014d/ovs-cluster-agent-2.2.3.tar.gz",
"platform": null,
"description": "# cluster-agent\n\n# Table of contents\n\n- [Project setup](#project-setup)\n - [Dependencies](#dependencies)\n- [Install the package](#install-the-package)\n- [Setup parameters](#setup-parameters)\n- [Local usage example](#local-usage-exemple)\n\n## Project Setup\n\n### Dependencies\n\n* python3-venv\n\n## Install the package\n\nTo install the package from Pypi simply run `pip install ovs-cluster-agent`.\n\n## Setup parameters\n\n1. Setup dependencies\n You can use whenever dependency manager you want to. Just run the command below (and the ones following) on behalf of the manager you prefer.\n\n ```bash\n make dependencies\n ```\n\n2. Setup `.env` parameters\n ```bash\n CLUSTER_AGENT_BASE_API_URL=\"<base-api-url>\"\n CLUSTER_AGENT_BASE_SLURMRESTD_URL=\"<slurmrestd-endpoint>\"\n CLUSTER_AGENT_X_SLURM_USER_NAME=\"<slurmrestd-user-name>\"\n CLUSTER_AGENT_SLURMRESTD_JWT_KEY_PATH=\"/path/to/the/jwt/secret/key\"\n CLUSTER_AGENT_SLURMRESTD_JWT_KEY_STRING=\"jwt-secret-key-in-plain-text\"\n CLUSTER_AGENT_SENTRY_DSN=\"<sentry-dsn-key>\"\n CLUSTER_AGENT_OIDC_DOMAIN=\"<OIDC-domain>\"\n CLUSTER_AGENT_OIDC_AUDIENCE=\"<OIDC-audience>\"\n CLUSTER_AGENT_OIDC_CLIENT_ID=\"<OIDC-app-client-id>\"\n CLUSTER_AGENT_OIDC_CLIENT_SECRET=\"<OIDC-app-client-secret>\"\n CLUSTER_AGENT_LDAP_HOST=\"<hostname-for-ldap>\"\n CLUSTER_AGENT_LDAP_DOMAIN=\"<LDAP-domain>\" # Defaults to match LDAP_HOST\n CLUSTER_AGENT_LDAP_USERNAME=\"<admin-user>\"\n CLUSTER_AGENT_LDAP_PASSWORD=\"<admin-password>\"\n ```\n\n NOTE: `CLUSTER_AGENT_SENTRY_DSN` is optional. If you do not pass it the agent understands Sentry will not be used.\n\n NOTE: When both `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_PATH` and `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_STRING` are passed, the agent will completely ignore the `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_PATH` and will prioritize the `CLUSTER_AGENT_SLURMRESTD_JWT_KEY_STRING`. Beware this behaviour.\n\n## Local usage example\n\n1. Run app\n ```bash\n agentrun\n ```\n\n**Note**: this command assumes you're inside a virtual environment in which the package is installed.\n\n**NOTE**: beware you should care about having the same user name you're using to run the code in the slurmctld node. For example, if `cluster_agent` will run the `make run` command then the slurmctld node also must have a user called `cluster_agent`.\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Cluster API data aggregator",
"version": "2.2.3",
"project_urls": {
"Download": "https://github.com/omnivector-solutions/ovs-cluster-agent/dist/cluster-agent-2.2.3tar.gz",
"Homepage": "https://github.com/omnivector-solutions/ovs-cluster-agent/"
},
"split_keywords": [
"armada",
"hpc"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c9e7f317b462bd5bd748f18f538a647d07104330fab2b4c2a8d8090fe3e27217",
"md5": "953f68db6575d25821bbce397e546e4d",
"sha256": "e848c61e44cf9bae06fef1d060e430d5c693f31700259243607dc1394f0a9197"
},
"downloads": -1,
"filename": "ovs_cluster_agent-2.2.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "953f68db6575d25821bbce397e546e4d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 41648,
"upload_time": "2023-07-03T20:51:07",
"upload_time_iso_8601": "2023-07-03T20:51:07.121904Z",
"url": "https://files.pythonhosted.org/packages/c9/e7/f317b462bd5bd748f18f538a647d07104330fab2b4c2a8d8090fe3e27217/ovs_cluster_agent-2.2.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "45d08f25b30adb4bc62e4181c939eafb631566e993bb841e75df3faf53e8014d",
"md5": "3f51b59db5b14273851c3ad5f2a8a46a",
"sha256": "933ce1364a2b06ff9ef74a547d62b4f87e7dc3f41422675e40b402d3f5d18b25"
},
"downloads": -1,
"filename": "ovs-cluster-agent-2.2.3.tar.gz",
"has_sig": false,
"md5_digest": "3f51b59db5b14273851c3ad5f2a8a46a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 30190,
"upload_time": "2023-07-03T20:51:08",
"upload_time_iso_8601": "2023-07-03T20:51:08.641292Z",
"url": "https://files.pythonhosted.org/packages/45/d0/8f25b30adb4bc62e4181c939eafb631566e993bb841e75df3faf53e8014d/ovs-cluster-agent-2.2.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-03 20:51:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "omnivector-solutions",
"github_project": "ovs-cluster-agent",
"github_not_found": true,
"lcname": "ovs-cluster-agent"
}