Skip to main content

Full Bore CLI tool

Project description

fullbore-cli

Full Bore CLI — a command-line tool to simplify internal infrastructure operations like server access, config management, and deployments.


Features

  • 🔎 List available servers from a shared config file
  • 🔐 One-command SSH access to internal machines
  • 🚀 Redeploy services via Git and Docker with one command
  • ⚙️ Easily customizable and extensible with new commands

Installation

pip install fullbore-cli

Usage

List all configured servers:

fbcli list-servers

SSH into a server:

fbcli ssh fb-web-1

You can also use the shortcut:

fb ssh fb-web-2

Redeploy a service (runs git pull && docker compose down && up -d):

fbcli redeploy fb-web-1 /home/fbadmin/myapp

Configuration

On first run, you'll be prompted for the location of your config.fb file.

You can:

  • Press Enter to auto-create a default one at:

    • ~/.fbcli/config.fb (Linux/macOS)
    • C:\Users\yourname\.fbcli\config.fb (Windows)
  • Or paste a full path like:

    • Windows: C:\Users\you\Documents\config.fb
    • macOS/Linux: /Users/you/config.fb

The file should look like:

servers = {
    "fb-web-1": {"host": "192.168.1.112", "user": "fbadmin"},
    "fb-rp": {"host": "192.168.1.186", "user": "fbadmin"},
}

Your chosen path will be saved automatically for future runs.


Development Setup

python3 -m venv .venv
source .venv/bin/activate
pip install -e .

🛠 Feature Sketchpad (Not Yet Implemented)

Ideas for future enhancements to fbcli. These are still in exploration but show where the tool is headed:

🔧 fb run "<command>" -s <server>

  • Run shell commands on any registered server
  • Example: fb run "docker ps" -s fb-web-1
  • Optional working directory or user override

🚀 fb deploy <project> --server <alias>

  • Deploy preconfigured projects to known paths
  • Example: fb deploy myapp --server staging
  • Could support Docker, Git pulls, symlink swaps, etc.

🧰 fb tool <task> [--args]

  • Trigger remote scripts or system automation
  • Example: fb tool ssl-renew -s fb-rp
  • Example: fb tool add-domain myapp.local --server fb-rp
  • Powered by server-side fbtools scripts or dockerized tool containers

🧪 Other possible commands

  • fb logs <project> — tail logs via SSH
  • fb open <project> — open the app in browser
  • fb scale <project> — scale services/containers
  • fb db shell <project> — open a DB shell inside container
  • fb config reset — force re-selecting a config file

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

fullbore_cli-0.1.5.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

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

fullbore_cli-0.1.5-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file fullbore_cli-0.1.5.tar.gz.

File metadata

  • Download URL: fullbore_cli-0.1.5.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for fullbore_cli-0.1.5.tar.gz
Algorithm Hash digest
SHA256 ac432302ac7bc27dea668f5ffff5c0fbbc59086f2002bd7e88b616a936740a37
MD5 0af39d618b6fe03d31af4268ec02dd6c
BLAKE2b-256 bfa7bf399de426930ed8f5aa8ee330e6f488b5594d9b07e2e2d66f91d10df55a

See more details on using hashes here.

File details

Details for the file fullbore_cli-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: fullbore_cli-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for fullbore_cli-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d6f49fef78662d545791a572beb048e39ff25e36ee4a007274805857c57ddd87
MD5 0828b63691addd456d2f231c993506fe
BLAKE2b-256 4bb4707bc95d4142bf0d513a010d65897b37e1737495efe7813e9c7b08bc992b

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