Argus
Project description
Argus
Description
Argus is a test tracking system intended to provide observability into automated test pipelines which use long-running resources. It allows observation of a test status, its events and its allocated resources. It also allows easy comparison between particular runs of a specific test.
Contributing
Review the Repository Guidelines for project structure, tooling expectations, and pull request practices before submitting changes.
Installation notes
Development
For development setup instructions, see dev-setup.md.
Prerequisites
-
Python >=3.10.0 (system-wide or pyenv)
-
NodeJS >=16 (with npm)
-
Yarn (can be installed globally with
npm -g install yarn) -
nginx
-
uv
From source
Production
Perform the following steps:
Create a user that will be used by uwsgi:
useradd -m -s /bin/bash argus
sudo -iu argus
(Optional) Install pyenv and create a virtualenv for this user:
pyenv install 3.10.0
pyenv virtualenv argus
pyenv activate argus
Clone the project into a directory somewhere where user has full write permissions
git clone https://github.com/scylladb/argus ~/app
cd ~/app
Install project dependencies:
uv sync --all-extras
yarn install
Compile frontend files from /frontend into /public/dist
yarn rollup -c
Create a argus.local.yaml configuration file (used to configure database connection) and a argus_web.yaml (used for webapp secrets) in your application install directory.
cp argus_web.example.yaml argus_web.yaml
cp argus.yaml argus.local.yaml
Open argus.local.yaml and add the database connection information (contact_points, user, password and keyspace name).
Open argus_web.yaml and change the SECRET_KEY value to something secure, like a sha512 digest of random bytes. Fill out GITHUB_* variables with their respective values.
Copy nginx configuration file from docs/configs/argus.nginx.conf to nginx virtual hosts directory:
Ubuntu:
sudo cp docs/configs/argus.nginx.conf /etc/nginx/sites-available/argus
sudo ln -s /etc/nginx/sites-enabled/argus /etc/nginx/sites-available/argus
RHEL/Centos/Alma/Fedora:
sudo cp docs/configs/argus.nginx.conf /etc/nginx/conf.d/argus.conf
Adjust the webhost settings in that file as necessary, particularly listen and server_name directives.
Copy systemd service file from docs/config/argus.service to /etc/systemd/system directory:
sudo cp docs/config/argus.service /etc/systemd/system
Open it and adjust the path to the start_argus.sh script in the ExecStart= directive and the user/group, then reload systemd daemon configuration and enable (and optionally start) the service.
WARNING: start_argus.sh assumes pyenv is installed into ~/.pyenv
sudo systemctl daemon-reload
sudo systemctl enable --now argus.service
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file argus_alm-0.15.12.tar.gz.
File metadata
- Download URL: argus_alm-0.15.12.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d9fd7a02777a8cfd64db82af55ddecc32bd9d24674efc2ab56ef48ee97095e96
|
|
| MD5 |
5b240d417e703ab14ac51e6605a8421f
|
|
| BLAKE2b-256 |
2eaf3df65235bef52f53d7ed1eec5fdb6fa0b68954d2a151c253ee3669fed330
|
Provenance
The following attestation bundles were made for argus_alm-0.15.12.tar.gz:
Publisher:
release.yml on scylladb/argus
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
argus_alm-0.15.12.tar.gz -
Subject digest:
d9fd7a02777a8cfd64db82af55ddecc32bd9d24674efc2ab56ef48ee97095e96 - Sigstore transparency entry: 908403338
- Sigstore integration time:
-
Permalink:
scylladb/argus@11df55d0a2c279a9c5c2a3182a9aecb07fdd0057 -
Branch / Tag:
refs/tags/v0.15.12 - Owner: https://github.com/scylladb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@11df55d0a2c279a9c5c2a3182a9aecb07fdd0057 -
Trigger Event:
push
-
Statement type:
File details
Details for the file argus_alm-0.15.12-py3-none-any.whl.
File metadata
- Download URL: argus_alm-0.15.12-py3-none-any.whl
- Upload date:
- Size: 25.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0c2966ed50b916c54eaa102d349be6860859938157a4007518bd0abe0b488fb1
|
|
| MD5 |
7d2e5997c0451f0bfc2be57340840ff2
|
|
| BLAKE2b-256 |
aad7981106c01621f03a7d73c06fc61acf45e1a63bea14fb5da05f2ff9d2f76c
|
Provenance
The following attestation bundles were made for argus_alm-0.15.12-py3-none-any.whl:
Publisher:
release.yml on scylladb/argus
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
argus_alm-0.15.12-py3-none-any.whl -
Subject digest:
0c2966ed50b916c54eaa102d349be6860859938157a4007518bd0abe0b488fb1 - Sigstore transparency entry: 908403386
- Sigstore integration time:
-
Permalink:
scylladb/argus@11df55d0a2c279a9c5c2a3182a9aecb07fdd0057 -
Branch / Tag:
refs/tags/v0.15.12 - Owner: https://github.com/scylladb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@11df55d0a2c279a9c5c2a3182a9aecb07fdd0057 -
Trigger Event:
push
-
Statement type: