Metadata-Version: 2.4
Name: jobbergate-agent
Version: 5.10.0
Summary: Jobbergate Agent
Project-URL: Repository, https://github.com/omnivector-solutions/jobbergate
Project-URL: Bug Tracker, https://github.com/omnivector-solutions/jobbergate/issues
Project-URL: Changelog, https://github.com/omnivector-solutions/jobbergate/blob/main/jobbergate-agent/CHANGELOG.rst
Author-email: Omnivector Solutions <info@omnivector.solutions>
License: MIT
License-File: LICENSE
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.10
Requires-Dist: apscheduler==3.11.2
Requires-Dist: auto-name-enum>=3.0.0
Requires-Dist: certifi>=2024.0.0
Requires-Dist: influxdb>=5.3.2
Requires-Dist: jobbergate-core==5.10.0
Requires-Dist: ldap3>=2.9.1
Requires-Dist: msgpack>=1.1.2
Requires-Dist: numba>=0.63.1
Requires-Dist: pluggy>=1.6.0
Requires-Dist: pydantic-settings>=2.12.0
Requires-Dist: pydantic[email]>=2.12.5
Requires-Dist: python-dotenv>=1.2.1
Requires-Dist: sentry-sdk>=2.47.0
Requires-Dist: types-ldap3>=2.9.13.14
Description-Content-Type: text/markdown

# Jobbergate-agent

## Install the package

To install the package from Pypi simply run `pip install jobbergate-agent`.

## Setup parameters

1. Setup dependencies

    Dependencies and environment are managed in the project by [uv](https://docs.astral.sh/uv/). To initiate the development environment run:

    ```bash
    make install
    ```

2. Setup `.env` parameters

    ```bash
    JOBBERGATE_AGENT_BASE_API_URL="<base-api-url>"
    JOBBERGATE_AGENT_X_SLURM_USER_NAME="<sbatch-user-name>"
    JOBBERGATE_AGENT_SENTRY_DSN="<sentry-dsn-key>"
    JOBBERGATE_AGENT_OIDC_DOMAIN="<OIDC-domain>"
    JOBBERGATE_AGENT_OIDC_CLIENT_ID="<OIDC-app-client-id>"
    JOBBERGATE_AGENT_OIDC_CLIENT_SECRET="<OIDC-app-client-secret>"
    ```

    **Note**: `JOBBERGATE_AGENT_SENTRY_DSN` is optional. If you do not pass it the agent understands Sentry will not be used.

## Local usage example

1. Run app

    ```bash
    jg-run
    ```

    **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`.
