GROS data gathering agent status
================================
[![PyPI](https://img.shields.io/pypi/v/gros-status.svg)](https://pypi.python.org/pypi/gros-status)
[![Build
status](https://github.com/grip-on-software/status-dashboard/actions/workflows/status-tests.yml/badge.svg)](https://github.com/grip-on-software/status-dashboard/actions/workflows/status-tests.yml)
[![Coverage
Status](https://coveralls.io/repos/github/grip-on-software/status-dashboard/badge.svg?branch=master)](https://coveralls.io/github/grip-on-software/status-dashboard?branch=master)
[![Quality Gate
Status](https://sonarcloud.io/api/project_badges/measure?project=grip-on-software_status-dashboard&metric=alert_status)](https://sonarcloud.io/project/overview?id=grip-on-software_status-dashboard)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.12533335.svg)](https://doi.org/10.5281/zenodo.12533335)
This repository contains a Web application that provides an overview of the
data gathering agents and importer jobs, based on log parsing.
## Installation
The latest version of GROS status dashboard and its dependencies can be
installed using `pip install gros-status`.
Another option is to build the module from this repository, which allows using
the most recent development code. Run `make setup` to install the dependencies.
The status dashboard itself may then be installed with `make install`, which
places the package in your current environment. We recommend using a virtual
environment during development.
## Running
Simply start the application using `gros-status`. Use command-line arguments
(displayed with `gros-status --help`) and/or a data-gathering `settings.cfg`
file (specifically the sections `ldap`, `deploy`, `jenkins` and `schedule`
influence this application's behavior - see the [gros-gatherer documentation on
configuration](https://gros.liacs.nl/data-gathering/configuration.html) for
details).
You can also configure the application as a systemd service such that it can
run headless under a separate user, using a virtualenv setup. See the
`gros-status.service` file in this repository for a possible setup.
## Development and testing
To run tests, first install the test dependencies with `make setup_test` which
also installs all dependencies for the server framework. Then `make coverage`
provides test results in the output and in XML versions compatible with, e.g.,
JUnit and SonarQube available in the `test-reports/` directory. If you do not
need XML outputs, then run `make test` to just report on test successes and
failures or `make cover` to also have the terminal report on hits and misses in
statements and branches.
[GitHub Actions](https://github.com/grip-on-software/status-dashboard/actions)
is used to run the unit tests and report on coverage on commits and pull
requests. This includes quality gate scans tracked by
[SonarCloud](https://sonarcloud.io/project/overview?id=grip-on-software_status-dashboard)
and [Coveralls](https://coveralls.io/github/grip-on-software/status-dashboard)
for coverage history.
The Python module conforms to code style and typing standards which can be
checked using Pylint with `make pylint` and mypy with `make mypy`, after
installing the pylint and mypy dependencies using `make setup_analysis`; typing
reports are XML formats compatible with JUnit and SonarQube placed in the
`mypy-report/` directory. To also receive the HTML report, use `make mypy_html`
instead.
We publish releases to [PyPI](https://pypi.org/project/gros-status/) using
`make setup_release` to install dependencies and `make release` which performs
multiple checks: unit tests, typing, lint and version number consistency. The
release files are also published on
[GitHub](https://github.com/grip-on-software/status-dashboard/releases) and
from there are archived on
[Zenodo](https://zenodo.org/doi/10.5281/zenodo.12533334). Noteworthy changes to
the module are added to the [changelog](CHANGELOG.md).
## License
GROS status dashboard is licensed under the Apache 2.0 License.
Raw data
{
"_id": null,
"home_page": null,
"name": "gros-status",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "status dashboard, agent-based, log parser",
"author": null,
"author_email": "Leon Helwerda <l.s.helwerda@liacs.leidenuniv.nl>",
"download_url": "https://files.pythonhosted.org/packages/f8/c8/4f58fe9e02043dcd3a57ff0918d522c82da13128acd88e2696d2cba6d0d7/gros_status-1.0.0.tar.gz",
"platform": null,
"description": "GROS data gathering agent status\n================================\n\n[![PyPI](https://img.shields.io/pypi/v/gros-status.svg)](https://pypi.python.org/pypi/gros-status)\n[![Build \nstatus](https://github.com/grip-on-software/status-dashboard/actions/workflows/status-tests.yml/badge.svg)](https://github.com/grip-on-software/status-dashboard/actions/workflows/status-tests.yml)\n[![Coverage \nStatus](https://coveralls.io/repos/github/grip-on-software/status-dashboard/badge.svg?branch=master)](https://coveralls.io/github/grip-on-software/status-dashboard?branch=master)\n[![Quality Gate\nStatus](https://sonarcloud.io/api/project_badges/measure?project=grip-on-software_status-dashboard&metric=alert_status)](https://sonarcloud.io/project/overview?id=grip-on-software_status-dashboard)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.12533335.svg)](https://doi.org/10.5281/zenodo.12533335)\n\nThis repository contains a Web application that provides an overview of the \ndata gathering agents and importer jobs, based on log parsing.\n\n## Installation\n\nThe latest version of GROS status dashboard and its dependencies can be \ninstalled using `pip install gros-status`.\n\nAnother option is to build the module from this repository, which allows using \nthe most recent development code. Run `make setup` to install the dependencies. \nThe status dashboard itself may then be installed with `make install`, which \nplaces the package in your current environment. We recommend using a virtual \nenvironment during development.\n\n## Running\n\nSimply start the application using `gros-status`. Use command-line arguments \n(displayed with `gros-status --help`) and/or a data-gathering `settings.cfg` \nfile (specifically the sections `ldap`, `deploy`, `jenkins` and `schedule` \ninfluence this application's behavior - see the [gros-gatherer documentation on \nconfiguration](https://gros.liacs.nl/data-gathering/configuration.html) for \ndetails).\n\nYou can also configure the application as a systemd service such that it can \nrun headless under a separate user, using a virtualenv setup. See the \n`gros-status.service` file in this repository for a possible setup.\n\n## Development and testing\n\nTo run tests, first install the test dependencies with `make setup_test` which \nalso installs all dependencies for the server framework. Then `make coverage` \nprovides test results in the output and in XML versions compatible with, e.g., \nJUnit and SonarQube available in the `test-reports/` directory. If you do not \nneed XML outputs, then run `make test` to just report on test successes and \nfailures or `make cover` to also have the terminal report on hits and misses in \nstatements and branches.\n\n[GitHub Actions](https://github.com/grip-on-software/status-dashboard/actions) \nis used to run the unit tests and report on coverage on commits and pull \nrequests. This includes quality gate scans tracked by \n[SonarCloud](https://sonarcloud.io/project/overview?id=grip-on-software_status-dashboard) \nand [Coveralls](https://coveralls.io/github/grip-on-software/status-dashboard) \nfor coverage history.\n\nThe Python module conforms to code style and typing standards which can be \nchecked using Pylint with `make pylint` and mypy with `make mypy`, after \ninstalling the pylint and mypy dependencies using `make setup_analysis`; typing \nreports are XML formats compatible with JUnit and SonarQube placed in the \n`mypy-report/` directory. To also receive the HTML report, use `make mypy_html` \ninstead.\n\nWe publish releases to [PyPI](https://pypi.org/project/gros-status/) using \n`make setup_release` to install dependencies and `make release` which performs \nmultiple checks: unit tests, typing, lint and version number consistency. The \nrelease files are also published on \n[GitHub](https://github.com/grip-on-software/status-dashboard/releases) and \nfrom there are archived on \n[Zenodo](https://zenodo.org/doi/10.5281/zenodo.12533334). Noteworthy changes to \nthe module are added to the [changelog](CHANGELOG.md).\n\n## License\n\nGROS status dashboard is licensed under the Apache 2.0 License.\n",
"bugtrack_url": null,
"license": "Apache 2.0",
"summary": "Grip on Software status dashboard",
"version": "1.0.0",
"project_urls": {
"CI: Coveralls": "https://coveralls.io/github/grip-on-software/status-dashboard?branch=master",
"CI: GitHub Actions": "https://github.com/grip-on-software/status-dashboard/actions",
"CI: SonarCloud": "https://sonarcloud.io/project/overview?id=grip-on-software_status-dashboard",
"Homepage": "https://gros.liacs.nl",
"Issues": "https://github.com/grip-on-software/status-dashboard/issues",
"Pull Requests": "https://github.com/grip-on-software/status-dashboard/pulls",
"PyPI": "https://pypi.python.org/pypi/gros-status",
"Source Code": "https://github.com/grip-on-software/status-dashboard"
},
"split_keywords": [
"status dashboard",
" agent-based",
" log parser"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8459ea23b01caa37e6f63551faeb2c60532bd94ba2824db1ebf8243003463e8d",
"md5": "ceb633c8b583de58acfdca1bf4c008f2",
"sha256": "a4b5dd106e0956f391cbbb0eee41a2e0f2d7ac8702a188145afb4ffd69a44a24"
},
"downloads": -1,
"filename": "gros_status-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ceb633c8b583de58acfdca1bf4c008f2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 19385,
"upload_time": "2024-07-15T13:10:45",
"upload_time_iso_8601": "2024-07-15T13:10:45.869597Z",
"url": "https://files.pythonhosted.org/packages/84/59/ea23b01caa37e6f63551faeb2c60532bd94ba2824db1ebf8243003463e8d/gros_status-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f8c84f58fe9e02043dcd3a57ff0918d522c82da13128acd88e2696d2cba6d0d7",
"md5": "4a4a60433f0bc40f7ff0d92296288fc4",
"sha256": "3363a5ff099af36ffd656651626aaa6598b7baa16c52dcb72f3c9c7a5106ec4a"
},
"downloads": -1,
"filename": "gros_status-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "4a4a60433f0bc40f7ff0d92296288fc4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 16686,
"upload_time": "2024-07-15T13:10:47",
"upload_time_iso_8601": "2024-07-15T13:10:47.906313Z",
"url": "https://files.pythonhosted.org/packages/f8/c8/4f58fe9e02043dcd3a57ff0918d522c82da13128acd88e2696d2cba6d0d7/gros_status-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-15 13:10:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "grip-on-software",
"github_project": "status-dashboard",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "gros-gatherer",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "gros-server",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "Pyro4",
"specs": [
[
"==",
"4.82"
]
]
}
],
"lcname": "gros-status"
}