About The Project
Taskmaster is a job control manager project for 42 school. It allows its users to control a number of processes on operating systems.
Inspired by the Supervisor
Prerequisites
Create a virtual environment using the following command:
-
venv
python3 -m venv venv && source venv/bin/activate
-
pip
pip install -r requirements.txt
or use the devcontainer provided in the repository.
Dependencies
Installation
-
From pypi
pip install 42-taskmaster
-
From source
pip install .
Usage
- Without arguments (load taskmaster.yml from current directory)
taskmaster
- With arguments
taskmaster -f /path/to/config.yml
- Without install
python -m taskmaster.taskmaster
Configuration file
email: # Optionnal
to: ""
smtp_email: ""
smtp_password: ""
smtp_server: "smtp.gmail.com"
smtp_port: 465
services:
- name: sleep
cmd: "sleep 100"
numprocs: 8 # min 1 max 32
umask: 077
workingdir: /tmp
autostart: true
autorestart: unexpected # always, never unexpected
exitcodes:
- 0
- 2
startretries: 3
starttime: 5
stopsignal: USR1
stoptime: 10
env: # Optionnal
test: "test"
stdout: ./taskmaster.yml # Optionnal (if not present don't log)
stderr: /workspaces/42-taskmaster/logs/taskmaster.log # Optionnal
# user: aaaaa # Optionnal (Downgrade privileges)
Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Contributors
Nard Théo - GUI / Configuration
Lafay Timothée - Services management
Release files for 42-taskmaster 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| 42_taskmaster-1.0.2.tar.gz | 21.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 42_taskmaster-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.5 kB
Release files / 42_taskmaster-1.0.2.tar.gz
| Download URL | 42_taskmaster-1.0.2.tar.gz |
|---|---|
| Size | 21.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6b45dbfaeb449c597d5be680a00515c035444e9c3f91a4ffc79327a521015b74
|
|
BLAKE2b-256 checksum How to use checksums |
445cfd28537af3fcb6379d232ec9ddf89380c3c623742e205d1315c2b5c1aa3d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|
Release files / 42_taskmaster-1.0.2-py3-none-any.whl
| Download URL | 42_taskmaster-1.0.2-py3-none-any.whl |
|---|---|
| Size | 22.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e4b393ec98580df2526128bc51c702e0ed546237e6f425b0272461428eabb1f
|
|
BLAKE2b-256 checksum How to use checksums |
30fc38df405951d0cec4bd04fad2d6b38a1344a10a188d8303db0c28bb3ccf34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|