ONEX Infrastructure - Service integration and database infrastructure tools
Project description
ONEX Infrastructure
Production infrastructure services for the ONEX execution layer. Handlers, adapters, and runtime services for PostgreSQL, Kafka, Consul, Vault, and Redis.
What is This?
This repository provides the infrastructure layer for ONEX-based systems. While omnibase_core defines the execution protocol and node archetypes, this package provides:
- Handlers for external services (database, HTTP, messaging)
- Adapters wrapping infrastructure clients
- Event bus abstractions for Kafka/Redpanda
- Runtime services deployable via Docker
Built on omnibase-core ^0.8.0 and omnibase-spi ^0.5.0.
Quick Start
# Clone the repository
git clone https://github.com/OmniNode-ai/omnibase_infra.git
cd omnibase_infra
# Start infrastructure services with Docker
cd docker
cp .env.example .env
# Edit .env - set POSTGRES_PASSWORD (required for Docker fallback)
# Set OMNIBASE_INFRA_DB_URL (required for CLI/scripts; recommended for Docker)
docker compose -f docker-compose.infra.yml up -d
# Verify services are running
docker compose -f docker-compose.infra.yml ps
Docker Services
Self-contained infrastructure via docker-compose.infra.yml:
| Service | Profile | Port | Description |
|---|---|---|---|
| PostgreSQL | default | 5436 | Persistence (always starts) |
| Redpanda | default | 29092 | Event bus (always starts) |
| Valkey | default | 16379 | Caching (always starts) |
| Consul | consul |
28500 | Service discovery (optional) |
| Infisical | secrets |
8880 | Secrets management (optional) |
| Runtime | runtime |
8085 | ONEX runtime services (optional) |
Profiles:
# Infrastructure only (default)
docker compose -f docker-compose.infra.yml up -d
# With service discovery
docker compose -f docker-compose.infra.yml --profile consul up -d
# With secrets management
docker compose -f docker-compose.infra.yml --profile secrets up -d
# Everything
docker compose -f docker-compose.infra.yml --profile full up -d
Configure via .env file - see docker/README.md for details.
Documentation
| I want to... | Go to... |
|---|---|
| Get started quickly | Quick Start Guide |
| Understand the architecture | Architecture Overview |
| Deploy with Docker | Docker Guide |
| See a complete example | Registration Walkthrough |
| Write a contract | Contract Reference |
| Find implementation patterns | Pattern Documentation |
| Read coding standards | CLAUDE.md |
Full documentation: docs/index.md
Repository Structure
src/omnibase_infra/
├── handlers/ # Request/message handlers
├── event_bus/ # Kafka/Redpanda abstractions
├── clients/ # Service clients
├── models/ # Pydantic models
├── nodes/ # ONEX nodes (Effect, Compute, Reducer, Orchestrator)
├── errors/ # Error hierarchy
├── mixins/ # Reusable behaviors
└── enums/ # Centralized enums
Development
# Install dependencies
uv sync
# Run tests
uv run pytest
# Type checking
uv run mypy src/omnibase_infra/
# Format code
uv run ruff format .
uv run ruff check --fix .
Pre-commit Hooks Setup
Run once after cloning:
uv run pre-commit install
uv run pre-commit install --hook-type pre-push
Contributing
See CONTRIBUTING.md for commit conventions and PR guidelines.
License
MIT License - see LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file omnibase_infra-0.10.0.tar.gz.
File metadata
- Download URL: omnibase_infra-0.10.0.tar.gz
- Upload date:
- Size: 5.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.12.12 Darwin/24.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0a020f0602a0332d5843d66afce8ce839f99c9278e9d384b50fe0455f60eda1
|
|
| MD5 |
fe93af77651881b65d64c9c74e40a4e9
|
|
| BLAKE2b-256 |
9f1a5e3e196153dda9429bc67c1d043b40c9f7450d2359d4b2ee302251076c3e
|
File details
Details for the file omnibase_infra-0.10.0-py3-none-any.whl.
File metadata
- Download URL: omnibase_infra-0.10.0-py3-none-any.whl
- Upload date:
- Size: 3.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.12.12 Darwin/24.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a799e11c97c22013f012b98b50d7108bb96e013234ae88e26ba32c950fad703
|
|
| MD5 |
24d7f4ad72045b7c31659f2e89af502e
|
|
| BLAKE2b-256 |
83c15647446591b84e1f9246842c029217727183885ce428b457c7741902e2d5
|