Skip to main content

ophix-conf-client

Python client for ophix-confs configuration servers.

Provides a CLI for operators and an importable library for automation scripts and Tier 2 clients. Fetches named configuration snippets (YAML, JSON, XML, INI, TOML, .env, raw) verbatim from the server.


Installation

pip install ophix-conf-client venv-cmds

venv-cmds is optional but recommended — it provides venv-cmds list to discover all commands available in the venv and venv-cmds check_updates to check for new releases.


Quick start

# Bootstrap in one step
conf-client quickstart https://confserver.internal my-client

# Fetch a configuration (raw content printed to stdout)
conf-client fetch nginx_upstream

# Fetch with format info header
conf-client fetch nginx_upstream --format-info

# Import a configuration file
conf-client import --input-file nginx.conf --name nginx_upstream --format raw

# Import with format inferred from extension
conf-client import --input-file app_config.yaml --name app_config

# Check all configurations mapped in .conf.env
conf-client check --all

# Diagnose config and connectivity
conf-client doctor

Configuration

Settings are stored in .conf.env (mode 600).

Variable Purpose
CONFSERVER_URL Base URL of the configuration server
CONFSERVER_API_TOKEN 64-char hex API token (set by register)
CONFSERVER_CA_CERT Path to CA certificate (set by download ca-cert)

Additional keys in .conf.env are treated as configuration name mappings used by check --all — each key maps an environment variable name to a configuration name on the server.


CLI reference

conf-client quickstart <server_url> <client_name> [--deployment-ref ...]
conf-client fetch {--name <n>|--var <VAR>} [--output-file <path>] [--format-info]
conf-client register <name> [deployment_ref]
conf-client update [--deployment-ref ...]
conf-client set {server|ca-cert|token} <value>
conf-client download ca-cert
conf-client import --input-file <file> [--name <n>] [--var <VAR>] [--format <fmt>] [--overwrite]
conf-client check {--all|--var <VAR>|--name <name>} [--verbose]
conf-client info
conf-client rotate-token
conf-client doctor

fetch

Usage What happens
--name <n> Fetches the configuration named <n> directly
--var <VAR> Reads the configuration name from <VAR> in .conf.env, then fetches it

--output-file <path> writes the content directly to a file instead of stdout. Parent directories are created automatically. Use - as the path for explicit stdout. When writing to a file, --format-info prints format and timestamp to stdout separately rather than embedding them in the file.

import

Usage What happens
--name <n> only Imports configuration named <n>. No .conf.env changes.
--var <VAR> only Reads the configuration name from <VAR> in .conf.env. Fails if not set.
--name <n> --var <VAR> Imports <n> and writes <VAR>=<n> to .conf.env. Fails if <VAR> is already mapped to a different name.

Add --overwrite to update an existing configuration.


Python API — Tier 2 clients

from conf_client.core import get_config

# Reads config name from the named env var, fetches from server,
# returns raw content string. Calls sys.exit(1) on failure.
nginx_conf = get_config("NGINX_CONFIG_NAME")

# Write directly to file
with open("/etc/nginx/conf.d/upstream.conf", "w") as f:
    f.write(nginx_conf)

Full CRUD:

from conf_client.core import (
    fetch_config,    # returns (content, format_name, updated_at)
    create_config,
    update_config,
    delete_config,
)

fetch_config returns a (content, format_name, updated_at) tuple rather than a dict, since the content is raw text. The format name and timestamp come from response headers. get_config returns the raw content string directly.


Server

This client connects to ophix-confs.

Metadata

Release files for ophix-conf-client 2026.10.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ophix-conf-client 2026.10.6.1
File Size Uploaded
ophix_conf_client-2026.10.6.1.tar.gz 10.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ophix-conf-client 2026.10.6.1
File Interpreter ABI Platform
ophix_conf_client-2026.10.6.1-py3-none-any.whl Python 3 none any Details

Total release size: 20.8 kB

Release files / ophix_conf_client-2026.10.6.1.tar.gz

Download URL ophix_conf_client-2026.10.6.1.tar.gz
Size 10.7 kB
Tags Source
SHA-256 checksum
How to use checksums
2b2bfa29ff6d8b0f607993de99330392d560ba6f60a90d264ad8d3901f65530e
BLAKE2b-256 checksum
How to use checksums
e7b8387786f2a231b1093f7de52b21007c8454784338391383887e745ba0c5cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release files / ophix_conf_client-2026.10.6.1-py3-none-any.whl

Download URL ophix_conf_client-2026.10.6.1-py3-none-any.whl
Size 10.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c5248804042d46766a7302ed0e37b9d8fbae852426a5206c439576140b794610
BLAKE2b-256 checksum
How to use checksums
9b11d1ac0f8243965bce8c064e60b506ea11b599643d310f5c029f5181c41323
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release history Release notifications | RSS feed

This release

2026.10.6.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page