Skip to content

alexjcm/jbdeploy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 JBoss/Wildfly Deploy CLI

NPM Version NPM Downloads Node.js Bun TypeScript License

JBoss WildFly Gradle Maven

A lightweight and fast CLI tool to deploy EAR/WAR artifacts to JBoss or Wildfly.

Features

  • Fast Build: Automatic project building — supports Gradle and Maven (auto-detects and uses gradlew/mvnw wrappers).
  • Smart Deployment: Direct deployment to standalone/deployments with real-time validation polling.
  • Modern UI: Interactive TUI with semantic logging.
  • Persistent Preferences: Remembers your last server, debug port, JVM memory profile, and startup mode between sessions.
  • Configurable Debug: Choose your JVM debug port dynamically.
  • Dynamic JVM Memory: Assign pre-configured JVM memory capacities independently for each server.
  • Seamless Workflow: Automatic server startup after deployment and loop-based interface to keep you in the flow.

📋 Requirements

  • Bun (Recommended for development) or Node.js v24+ (For distribution)
  • Gradle or Maven (or project wrappers gradlew / mvnw)
  • JBoss/Wildfly configured locally

⚙️ Installation

Quick Start (No installation)

Run the tool instantly using npx:

npx jbdeploy

Global Installation

npm install -g jbdeploy
# or
bun add -g jbdeploy

🛠️ Development

Local Setup

If you want to contribute or build the latest version from source:

  1. Clone the repository and install dependencies:
bun install
  1. Build the project:
bun run build
  1. Enable global linking:
bun run local:link

Now you can use jbdeploy from any terminal.

🏗️ Build Pipeline

  • Core: Built with TypeScript and optimized for Bun's high-speed runtime during development.
  • Distribution: Compiles with tsup into a single, specialized ESM bundle (dist/index.js) with a Node.js shebang, ensuring seamless usage in any Node environment.

🚀 Usage

Run the CLI from any project you want to deploy:

jbdeploy

Workflow

  1. Server Selection: Choose a saved server or add a new one.
  2. Action: Choose between build + copy + deploy, copy + deploy, or start server only.
  3. Build (if applicable): Gradle or Maven is auto-detected.
  4. Server Mode: If the server is stopped, choose Normal or Debug mode. Your last choice is remembered.
  5. Auto-Start: After a successful deployment with the server stopped, the CLI starts it automatically.
  6. Looping: After each action, the CLI returns to the main menu automatically.

📁 Configuration

All preferences, registered JBoss servers, JVM memory profiles, and debug ports are safely saved locally at:

~/.jbdeploy/config.json

�️ Show help

jbdeploy --help

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.

About

CLI tool to deploy artifacts to JBoss or Wildfly

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors