osc-tui
Description (╯°□°)╯︵ ┻━┻
Designed to be a POC of a Outscale's Cockpit inside the terminal using curses.
The officially supported python version is currently 3.
The code is currently a bit dirty... Maybe big changes are coming!
To refresh any table, press [F5].
Feel free to suggest oher architectures, libs...
The src/ folder contains the project's sources.
The tests/ folder contain some crappy code used to test API calls or any other things...
Options
--help: show help--profile [PROFILE]: auto-choose the profile, and skip selection screen, just list all profiles if no profile pass as argument--mode MODE: jump directly to a mode (like Vms, Images, Security...)--ascii-logo: use ascii logo, instead of UTF one.
Costum Rules
osc-tui support some very simple "costum rule" store in ~/.osc/osc-tui-rules.json
Examples:
{
"Val de heim": {
"mode": "SECURITY-RULES",
"ports": [2456, 2457],
"protocols": ["udp", "tcp"]
},
"Mie raft": {
"mode": "SECURITY-RULES",
"ports": [25565],
"protocols": ["udp", "tcp"]
},
"ssh ips": {
"mode": "SECURITY-RULES",
"ips": ["41.41.41.41", "43.43.43.43"],
"ports": [25565],
"protocols": ["udp", "tcp"]
}
}
Will add 3 options Val de heim, Mie raft and ssh ips to the SECURITY-RULES menu.
when Val de heim or Mie raft menu are click, osc-tui will ask for an IP, and allow each protocols for each ports describe in "ports" and in "protocols"
with ssh ips is click osc-tui will automatically open the port 25565 for udp and tcp for "41.41.41.41" and "43.43.43.43" IPs.
Installation
You can either use pip on macos/windows/linux, the appimage in release, or the AUR on Arch Linux
Running the client.
If installed:
osc-tui
If not installed (for devs):
Move to the osc-tui folder, then run:
python3 -m venv envsource env/bin/activateto activate the virtual env.pip install -e .- then just call
osc-tui
Then you can deactivate the virtual env:
deactivate
Packaging the app with pip (BETA, WIP).
build and install the package:
python3 setup.py build install
Distributions Package
Arch Linux
yay -Sy osc-tui-git # you can replace yay by any AUR helper, like paru
Contributing
Just a few rules:
- Format correctly your code (you can do
autopep8 --in-place --aggressive --aggressive osc_tui/*.py). - Add external dependencies as less as possible.
Release plan:
Release are time base, up to now, we had no release plan, from now on, we will release a new version every 3 month, if there is any commits.
if a major security issue happen, we'll backport the patch and create an update of old version with an updated revision.
when release a new version:
- update VERSION in osc_tui/main.py and setup.py
- update automatic_release_tag in .github/workflows/make_release_bins.yml (note having to do this is a bug and could be simplify)
- VERSION format is time base, 2 first numbers are for years, 2 next one are for month, and 2 last are for revisions
- push a tag at the current version, a runner should build the appimage.
Metadata
Release files for osc-tui 25.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| osc_tui-25.3.0.tar.gz | 35.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| osc_tui-25.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 85.3 kB
Release files / osc_tui-25.3.0.tar.gz
| Download URL | osc_tui-25.3.0.tar.gz |
|---|---|
| Size | 35.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7f839dc7eeee53c558f21daef56dcf3e62297f27dc86b08d7c4ea0ca940d4cd8
|
|
BLAKE2b-256 checksum How to use checksums |
1b818dbbcaced59b680af6814b189a5d0c5e211fa6e99a1a4af17e2ff902d7c2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|
Release files / osc_tui-25.3.0-py3-none-any.whl
| Download URL | osc_tui-25.3.0-py3-none-any.whl |
|---|---|
| Size | 50.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4365427e40569d4f2246601b9c4910462292e7f5c6a3e8fb5f782445d86ad440
|
|
BLAKE2b-256 checksum How to use checksums |
abb0b64748d60e0dce482d9472da7a11594b1201855dc6030290728f7d18af84
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|