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.5.6.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.5.6-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for predicate_authority_sidecar-0.5.6.tar.gz
Algorithm Hash digest
SHA256 094ab31b5352ace64283f260a2d79a29546358547dcb6e466b1eb04f2e351589
MD5 c203b46c00fd403c2daa63e822d3a849
BLAKE2b-256 45c778f6e3436fe6f6cc4863ca426302843f560ad5cf30152b98077ae4a2abf4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for predicate_authority_sidecar-0.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 08e04f20972259f6ec4c36265d8ac7a6caea5b9297178426634bc1bd91d6b3fe
MD5 796bcaff0eceef35b47033a62fff8073
BLAKE2b-256 ee438156ebb2873bca406f07ecbfec7471619153d2a96aabf9037bcd57b5f172

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