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 locally (writes ~/.buildifyrc):

buildify-publish config set-base-url https://publish.buildify.cn
printf '%s' 'keyId.secret' | buildify-publish config set-api-key
buildify-publish config show

If you previously used ~/.config/buildify/publish.toml, it is still read until ~/.buildifyrc exists; running any config set-* merges into ~/.buildifyrc.

Config file: ~/.buildifyrc (Unix) or %USERPROFILE%\.buildifyrc (Windows). Precedence: CLI flags → environment → config 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.1.tar.gz (10.7 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.1-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: buildify_publish_cli-1.0.1.tar.gz
  • Upload date:
  • Size: 10.7 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.1.tar.gz
Algorithm Hash digest
SHA256 74d032a033d906ee364086f2e8bfb83cfd30c41680f0c99db6228db5d0b831ce
MD5 3c0fd0c6c9873f92293b3536f6697b30
BLAKE2b-256 eb783c51002b8adc2e07ca3efa7a4aceeb20f18e5e5dfe8272a6e24e6849f743

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for buildify_publish_cli-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ecd39e7bcefe1986abced4e48039fa709d5e554ed0f15d3336e9da1d67365158
MD5 21dfedaf05a4eecbc8efd9816a844368
BLAKE2b-256 6b17dc2dd7eb1ac71db6372ead5b99f57fe877f07d19bf6407242dedd6417506

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