Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/z3z1ma/harness-tui
A TUI for interacting with Harness.io
https://github.com/z3z1ma/harness-tui
Last synced: 2 months ago
JSON representation
A TUI for interacting with Harness.io
- Host: GitHub
- URL: https://github.com/z3z1ma/harness-tui
- Owner: z3z1ma
- Created: 2024-05-27T17:41:12.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-06-01T00:39:35.000Z (7 months ago)
- Last Synced: 2024-06-02T01:04:03.841Z (7 months ago)
- Language: Python
- Size: 457 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Harness TUI
A [Textual](https://https://textual.textualize.io/) App that allows you to interact with your [Harness](https://harness.io/) account.
## Installation
### Prerequisites
- Python 3.9 or higher
- [Pipx](https://pipxproject.github.io/pipx/) (optional, but recommended)### Using pipx
The recommended way to install the app is to use [pipx](https://pipxproject.github.io/pipx/). This will install the app in an isolated environment and make it available globally.
```bash
pipx install harness-tui
```### Using pip
You can also install the app using pip. This will install the app in the user's environment.
```bash
# Optionally create a virtual environment for the tool
# python -m venv /opt/harness-tui/.venv
# source /opt/harness-tui/.venv/bin/activate
pip install harness-tui
# echo "export PATH=\$PATH:/opt/harness-tui/.venv/bin" >> ~/.bashrc
```## Development
- Clone the repository
- Run `make install-dev` to create a virtual environment and install the dependencies
- Run `source .venv/bin/activate` to activate the virtual environment### Using direnv
As an alternative to manually activating the virtual environment, you can use [direnv](https://direnv.net/). To do so, follow these steps:
- Install direnv: `brew install direnv`
- Add the following line to your shell configuration file (e.g. `~/.bashrc`, `~/.zshrc`): `eval "$(direnv hook bash)"`
- Create a `.envrc` file in the project root with the following content:```bash
export VIRTUAL_ENV=.venv
dotenv
layout python
```- Run `touch .env` to create the `.env` file
- Run `direnv allow` to allow the `.envrc` fileNow the virtual environment will be activated automatically when you `cd` into the project directory. Furthermore all environment variables defined in the `.env` file will be loaded.
### Developing the app
Refer the textual docs and the harness API docs for most of the information we need to develop the app.
### Running the app
To run the app, you can use the `make run` command. This will start the app in the terminal.
Alternatively, just run the app directly:
```bash
python src/harness_tui/app.py
```### Up to date dependencies
If the requirements file has been updated, you can run `make install-dev` to update the dependencies in the virtual environment.
### Roadmap
We will graduate the project from a requirements txt managed project to a poetry managed project with a pyproject.toml that will allow us to publish the project to PyPi for distribution.