Skip to main content

CLI for Buildify bundle publish server (machine Bearer auth)

Project description

buildify-publish-cli

Command-line client for the Buildify bundle publish HTTP API. Use it to check health, validate publish keys, query bundle metadata, and upload JAR bundles from your terminal or CI.

Requires: Python 3.10 or newer.

Install

From PyPI:

pip install buildify-publish-cli

Other installers:

pipx install buildify-publish-cli
uv tool install buildify-publish-cli

After install, the command is buildify-publish.

Authentication

The API uses Bearer credentials: Authorization: Bearer <keyId>.<secret>.

Set the full secret (both parts after Bearer) as:

  • Environment variable BUILDIFY_PUBLISH_API_KEY, or
  • buildify-publish config set-api-key (reads from stdin — avoids putting the secret on the command line).

Publish keys are created and rotated in the Buildify console, not through this CLI.

Quick start

export BUILDIFY_PUBLISH_API_KEY='yourKeyId.yourSecret'

buildify-publish health
buildify-publish key test
buildify-publish bundle info --name 'my/group/plugin'
buildify-publish bundle upload \
  --name 'my/group/plugin' \
  --version '1.0.0-SNAPSHOT' \
  --file ./plugin.jar \
  --overwrite

API base URL

Default: https://publish.buildify.cn

Override for self-hosted or other environments:

export BUILDIFY_PUBLISH_BASE_URL='https://your-publish-host.example.com'
# or per invocation:
buildify-publish --base-url 'https://your-publish-host.example.com' health

Persist in ~/.buildifyrctwo separate settings (set either or both; order does not matter):

  • base_url — which publish API host to call (default host above if unset).
  • api_key — your publish credential keyId.secret, unrelated to the URL.
# Set only the API host (skip if the default https://publish.buildify.cn is fine)
buildify-publish config base_url https://publish.buildify.cn

# Set only the key (stdin avoids putting the secret in shell history)
printf '%s' 'keyId.secret' | buildify-publish config set-key api_key

buildify-publish config show

Use config set-key / config set_key with base_url or api_key. For api_key, omit the value or use - to read from stdin.

Shortcuts config set-base-url and config set-api-key update the same two fields.

File: ~/.buildifyrc (Unix) or %USERPROFILE%\.buildifyrc (Windows). Precedence: CLI flags → BUILDIFY_PUBLISH_BASE_URL / BUILDIFY_PUBLISH_API_KEY → file → default base URL.

Built-in reference

Full Markdown reference (commands, env vars, HTTP mapping, exit codes, JSON schema):

buildify-publish help

Same content ships as usage.md inside the package.

Scripting and CI

Machine-readable output (one JSON object per run):

export BUILDIFY_PUBLISH_JSON=1
buildify-publish --json key test

Environment: BUILDIFY_PUBLISH_BASE_URL, BUILDIFY_PUBLISH_API_KEY, BUILDIFY_PUBLISH_JSON, NO_COLOR.

Global flags: --json, --api-key, --base-url, --quiet.

Developing from source

If you have the Git repository checked out:

cd tools/buildify-publish-cli
python3 -m venv .venv && source .venv/bin/activate
pip install -U pip
pip install .

Run without installing into the environment:

python -m buildify_publish --help

License

Same as the upstream project repository unless stated otherwise.

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

buildify_publish_cli-1.0.2.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

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

buildify_publish_cli-1.0.2-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file buildify_publish_cli-1.0.2.tar.gz.

File metadata

  • Download URL: buildify_publish_cli-1.0.2.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for buildify_publish_cli-1.0.2.tar.gz
Algorithm Hash digest
SHA256 77bbc68e8e70a006fbcc4f34c3ec795f73efa16b0fa37597ebc43211b82982b0
MD5 dec985deac40815353c0ef379359c6a1
BLAKE2b-256 c01c2d6836831fcf338a57dfcb412a504a859e5108833e0da5005027dd37be83

See more details on using hashes here.

File details

Details for the file buildify_publish_cli-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for buildify_publish_cli-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0732ae386e55c1f0e6714a6f52994c880812b2f41cec9275d1891abbe0ee2f90
MD5 bae217897d4986e6074a72ad8f66e4b0
BLAKE2b-256 5dc321c3b973f8dc04090f7ba64246c8dba1aaaa65236747f8b1a2f82a765163

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