semvec/pypi-packages huggingface dataset:
sdci 0.6.2
SDCI - Sistema de Deploy Continuo Integrado - Integrated Continuous Deployment System - Sidecar Micro CD
Requires Python: >=3.10
Keywords: continuous-deployment, cd, deployment, server, cli, automation

# 🚀 SDCI - Sistema de Deploy Continuo Integrado

SDCI (Sistema de Deploy Continuo Integrado - Integrated Continuous Deployment System) is a lightweight continuous deployment system consisting of a server and client tool. It allows you to run predefined tasks remotely through a simple command-line interface.

**⚠️ NOTE: This project is currently in ALPHA. A better documentation will be provided soon.**

## ✨ Features

- Server component built with FastAPI
- Command-line client tool for easy task execution
- Token-based authentication
- Real-time task output streaming
- Task status monitoring
- CLI interface to manage tasks

## 🔩 Architecture Diagram
The ideal way to work with this tool is using the following structure:
<img width="431" height="471" alt="workflow_structure drawio" src="https://github.com/user-attachments/assets/8ba902b6-2c52-4159-90b1-b6179a0d1054" />

For safety purposes, the ideal way to handle such workflow is to protect SDCI connection under a Tailscale or any other VPN connection; Also you can add sdci on the internet, but a reverse proxy is strongly recommended (e.g. Traefik or Nginx)

## 📥 Installation

### Requirements

- Python 3.13 or higher

### Installing the client
The recommended approach is by using `pipx`;

```bash
pipx install sdci
```

## 📖 Usage

### Starting the server

Run the server component:

```bash
python -m src.server
```

By default, the server runs on `0.0.0.0:8842`.

## Creating tasks
The server will look up for tasks in the `tasks/` directory where you ran this server. It will look for shell scripts on this folder. The job name is the script name without the `.sh` extension.

### Using the client

The client tool can be used to trigger tasks on the server:

```bash
sdci-cli run --token YOUR_TOKEN SERVER_URL TASK_NAME [PARAMETERS...]
```

Example:

```bash
sdci-cli run --token HAPPY123 http://localhost:8842 job_1 param1 param2 param3
```

### Parameters

- `--token`: Authentication token (required)
- `SERVER_URL`: URL of the SDCI server (required)
- `TASK_NAME`: Name of the task to run (required)
- `PARAMETERS`: Optional parameters to pass to the task


## 👤 Author

- Jonhnatha Trigueiro <joepreludian@gmail.com>
Adame 2.0.1
Adame is a tool to manage docker-applications as part in a Linux-environment.
Requires Python: >=3.10
Keywords: release build management

# Adame

![Development-state](https://img.shields.io/badge/development--state-maintenance%20updates%20only-green)

## Purpose

Adame (pronounced: `ăˈ.dam`) is the abbreviation for "Automatic Docker Application Management Engine". So in short: Adame is a tool to manage applications running in a container as part in a Linux-environment.
The details can be found [here](https://github.com/anionDev/Adame/tree/main/Adame).

## Reference

The Adame-reference can be found [here](./Adame/Other/Reference/ReferenceContent).

## Build

This product requires to use `scbuildcodeunits` implemented/provided by [ScriptCollection](https://github.com/anionDev/ScriptCollection) to build the project.

## Changelog

See the [Changelog-folder](./Other/Resources/Changelog).

## Contribue

Contributions are always welcome.

This product has the contribution-requirements defines by [DefaultOpenSourceContributionProcess](https://projects.aniondev.de/PublicProjects/Common/ProjectTemplates/-/blob/main/Conventions/Contributing/DefaultOpenSourceContributionProcess/DefaultOpenSourceContributionProcess.md).

## Repository-structure

This product uses the [CommonProjectStructure](https://projects.aniondev.de/PublicProjects/Common/ProjectTemplates/-/blob/main/Conventions/RepositoryStructure/CommonProjectStructure/CommonProjectStructure.md) as repository-structure.

## Branching-system

This product follows the [GitFlowSimplified](https://projects.aniondev.de/PublicProjects/Common/ProjectTemplates/-/blob/main/Conventions/BranchingSystem/GitFlowSimplified/GitFlowSimplified.md)-branching-system.

## Versioning

This product follows the [SemVerPractise](https://projects.aniondev.de/PublicProjects/Common/ProjectTemplates/-/blob/main/Conventions/Versioning/SemVerPractise/SemVerPractise.md)-versioning-system.

## License

See [License.txt](./License.txt) for license-information.
novnc 1.3.0
noVNC is a Python-based server that integrates noVNC and websockify to provide a web-based VNC client, enabling remote desktop access via a web browser.
Keywords: python, novnc, vnc, web


# noVNC

**noVNC** is a Python-based wrapper that bundles **websockify** and the **noVNC HTML client** to provide a **web-based VNC viewer**.It enables remote desktop access directly from the browser without requiring a standalone VNC client.

* * *

## ✨ Features

* **Easy Setup** – Start a proxy server in seconds and connect to your VNC server.
* **Web-based Access** – Use any modern browser as a VNC client.
* **Custom Arguments** – Supports both noVNC (`--listen`, `--target`) and all **websockify** options.
* **Secure Connection** – SSL/TLS support with `--ssl-only`, `--cert`, and `--key`.

* * *

## 📦 Requirements

* Python **3.7+**
* A running VNC server (e.g., **TigerVNC**, **TightVNC**, **RealVNC**)

* * *

## 🔧 Installation

    pip install novnc

* * *

## ⚙️ Options

| Option | Description | Default |
| --- | --- | --- |
| `--listen HOST:PORT` | Address and port to listen on for WebSocket + web server | `0.0.0.0:8080` |
| `--target HOST:PORT` | VNC server address and port to connect to | `127.0.0.1:5900` |
| `--web PATH` | Path to noVNC static files (auto-extracted to temp directory) | *(auto set)* |
| `--ssl-only` | Enable **TLS only** | Disabled |
| `--cert FILE` | Path to SSL certificate (PEM) | None |
| `--key FILE` | Path to SSL private key (PEM) | None |

> ✅ Any **websockify** arguments can also be passed through.

* * *

## 🚀 Usage

Start the proxy with your VNC server details:

    novnc --listen 0.0.0.0:8080 --target 127.0.0.1:5900

Then open in your browser:

    http://localhost:8080/vnc.html

* * *

## 🔒 HTTPS / WSS Setup

Generate a self-signed cert (for testing):

    openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem

Run with SSL:

    novnc --listen 0.0.0.0:443 --target 127.0.0.1:5900 --ssl-only --cert cert.pem --key key.pem

Access via:

    https://yourdomain.com/vnc.html

* * *

## 🛠 Troubleshooting

* **Connection refused** → Ensure your VNC server is running and reachable.
* **Black screen** → Verify the VNC server allows connections (sometimes password-protected).
* **Browser SSL warning** → Use a trusted CA (e.g., Let’s Encrypt) instead of self-signed certs.

* * *

## 📜 License

Licensed under the [MIT License](LICENSE).

* * *

## 🙏 Acknowledgments

* [noVNC](https://github.com/novnc/noVNC) – Browser-based VNC client (HTML5 + WebSockets)
* [websockify](https://github.com/novnc/websockify) – WebSockets proxy for any TCP service