https://github.com/gabrielguarisa/gurun
Task automation framework
https://github.com/gabrielguarisa/gurun
automation framework pipeline task workflow
Last synced: 8 months ago
JSON representation
Task automation framework
- Host: GitHub
- URL: https://github.com/gabrielguarisa/gurun
- Owner: gabrielguarisa
- License: mit
- Created: 2021-12-31T22:55:39.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-21T21:24:15.000Z (over 3 years ago)
- Last Synced: 2025-02-25T13:36:10.612Z (over 1 year ago)
- Topics: automation, framework, pipeline, task, workflow
- Language: Python
- Homepage:
- Size: 84 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gurun
[](https://github.com/psf/black)
[](https://github.com/gabrielguarisa/gurun/blob/master/.pre-commit-config.yaml)
[](https://github.com/gabrielguarisa/gurun/releases)
[](https://github.com/gabrielguarisa/gurun/blob/master/LICENSE)
Task automation framework
## Installation
Full installation:
```bash
pip install gurun[full]
```
Installing only the main framework components:
```bash
pip install gurun
```
You can also install component dependencies separately. Thus, we have the cv (computer vision) version and the gui version:
```bash
pip install gurun[cv]
pip install gurun[gui]
```
### Multiple worspaces
For the multi-workspace system to work, install the following libraries on your operating system.
#### Windows
Install [PSVirtualDesktop](https://github.com/MScholtes/PSVirtualDesktop):
```shell
PS C:\> Install-Module VirtualDesktop
```
#### Linux
Install wmctrl:
```shell
sudo apt-get install -y wmctrl
```
## Examples
- [bombcrypto-bot](https://github.com/gabrielguarisa/bombcrypto-bot) - A bot to automate the bombcrypto game.
## Development
### Setting up a development environment
If you don't have a local development environment, you can follow these steps to set one up.
First, if you have not already, install [poetry](https://python-poetry.org/):
```bash
pip install poetry
```
Now, initialize poetry and [pre-commit](https://pre-commit.com/) hooks:
```bash
make init
```
### Running tests
You can run the tests with:
```bash
make tests
```
This will run the tests with [pytest](https://docs.pytest.org/en/latest/) and show information about the coverage.
### Formatting the code
To format the code, you can use the command:
```bash
make formatting
```
This will run the [isort](https://github.com/PyCQA/isort) and [black](https://github.com/psf/black) commands.
If you want to just check the formatting, use the command:
```bash
make check-formatting
```
### Releasing a new version
To release a new version, you need to follow these steps:
1. Update the version with `poetry version ` and commit the changes. This project follows [Semantic Versioning](http://semver.org/), so the version number should follow the format `..`. Alternatively, you can also use the version as `major` or `minor` or `patch`, and the version number will be automatically incremented.
2. Create a Github release with the new version number.
3. (Optional) Publish the new version to PyPI with `poetry publish --build`.