Skip to main content

Predicate Authority Sidecar binary installer (downloads on install)

Project description

predicate-authority-sidecar

Predicate Authority Sidecar binary installer for Python.

This package provides tools to download and run the Predicate Authority sidecar binary.

Installation

pip install predicate-authority-sidecar

Or as an optional dependency of predicate-authority:

pip install "predicate-authority[sidecar]"

Note: Use quotes around predicate-authority[sidecar] to prevent shell glob expansion in zsh.

Important: Manual Download Required

The binary is NOT downloaded automatically during pip install. You must manually trigger the download:

predicate-download-sidecar

Or with a specific version:

predicate-download-sidecar --version v0.3.8

The binary is placed in your platform's data directory:

  • macOS: ~/Library/Application Support/predicate-authority/bin/predicate-authorityd
  • Linux: ~/.local/share/predicate-authority/bin/predicate-authorityd
  • Windows: %LOCALAPPDATA%/predicate-authority/bin/predicate-authorityd.exe

Usage

From Python

from predicate_authority import run_sidecar, get_sidecar_path, is_sidecar_available, download_sidecar

# Download if not available
if not is_sidecar_available():
    download_sidecar()

# Check path
print(get_sidecar_path())

# Run sidecar
process = run_sidecar(port=8787, policy_file="policy.json")

# Later: graceful shutdown
process.terminate()
process.wait()

From Command Line

IMPORTANT: CLI arguments must be placed before the run subcommand.

# Get the binary path
SIDECAR=$(python -c "from predicate_authority import get_sidecar_path; print(get_sidecar_path())")

# Show help
"$SIDECAR" --help

# Start in local mode
"$SIDECAR" \
  --host 127.0.0.1 \
  --port 8787 \
  --mode local_only \
  --policy-file policy.json \
  run

# Using environment variables
export PREDICATE_HOST=127.0.0.1
export PREDICATE_PORT=8787
export PREDICATE_MODE=local_only
export PREDICATE_POLICY_FILE=policy.json
"$SIDECAR" run

# Generate example config
"$SIDECAR" init-config --output config.toml

# Run with config file
"$SIDECAR" --config config.toml run

CLI Reference

GLOBAL OPTIONS (use before 'run'):
  -c, --config <FILE>           Path to TOML config file [env: PREDICATE_CONFIG]
      --host <HOST>             Host to bind to [env: PREDICATE_HOST] [default: 127.0.0.1]
      --port <PORT>             Port to bind to [env: PREDICATE_PORT] [default: 8787]
      --mode <MODE>             local_only or cloud_connected [env: PREDICATE_MODE]
      --policy-file <PATH>      Path to policy JSON [env: PREDICATE_POLICY_FILE]
      --identity-file <PATH>    Path to local identity registry [env: PREDICATE_IDENTITY_FILE]
      --log-level <LEVEL>       trace, debug, info, warn, error [env: PREDICATE_LOG_LEVEL]
      --control-plane-url <URL> Control-plane URL [env: PREDICATE_CONTROL_PLANE_URL]
      --tenant-id <ID>          Tenant ID [env: PREDICATE_TENANT_ID]
      --project-id <ID>         Project ID [env: PREDICATE_PROJECT_ID]
      --predicate-api-key <KEY> API key [env: PREDICATE_API_KEY]
      --sync-enabled            Enable control-plane sync [env: PREDICATE_SYNC_ENABLED]
      --fail-open               Fail open if control-plane unreachable [env: PREDICATE_FAIL_OPEN]

COMMANDS:
  run          Start the daemon (default)
  init-config  Generate example config file
  check-config Validate config file
  version      Show version info

Supported Platforms

Platform Architecture
macOS Apple Silicon (arm64)
macOS Intel (x64)
Linux x64
Linux arm64
Windows x64

License

MIT / Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

predicate_authority_sidecar-0.6.0.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

predicate_authority_sidecar-0.6.0-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

Details for the file predicate_authority_sidecar-0.6.0.tar.gz.

File metadata

File hashes

Hashes for predicate_authority_sidecar-0.6.0.tar.gz
Algorithm Hash digest
SHA256 94262b1a039eb01de09d36184523f382fb4397d479efe4b426b4497f40381418
MD5 d4e5f73c5e1687bae177b51c29558097
BLAKE2b-256 aaeaf455b803deca8b9e5038b3192a06a356e47ccd01b27c56bda73a3228a681

See more details on using hashes here.

File details

Details for the file predicate_authority_sidecar-0.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for predicate_authority_sidecar-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 11734db168aead4fb3891f8b634e729af5b6393de910902e1194572b1a9b6e84
MD5 737dff73b3146f3fdce6651c1650aa81
BLAKE2b-256 ee9ff03990ddad53a44f3cf40b1fdea16b006e7f0ea62a02e4ba9759d92bc06c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page