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 ~/.buildifyrc — two 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 credentialkeyId.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
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 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77bbc68e8e70a006fbcc4f34c3ec795f73efa16b0fa37597ebc43211b82982b0
|
|
| MD5 |
dec985deac40815353c0ef379359c6a1
|
|
| BLAKE2b-256 |
c01c2d6836831fcf338a57dfcb412a504a859e5108833e0da5005027dd37be83
|
File details
Details for the file buildify_publish_cli-1.0.2-py3-none-any.whl.
File metadata
- Download URL: buildify_publish_cli-1.0.2-py3-none-any.whl
- Upload date:
- Size: 12.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0732ae386e55c1f0e6714a6f52994c880812b2f41cec9275d1891abbe0ee2f90
|
|
| MD5 |
bae217897d4986e6074a72ad8f66e4b0
|
|
| BLAKE2b-256 |
5dc321c3b973f8dc04090f7ba64246c8dba1aaaa65236747f8b1a2f82a765163
|