feat: remove interactive mode for full automation support#11
Conversation
There was a problem hiding this comment.
Pull request overview
This PR removes all interactive prompts from the JIRA CLI to enable full automation support in CI/CD pipelines. The changes eliminate the inquirer dependency and require all command inputs to be provided explicitly via CLI flags or environment variables.
Key Changes:
- Removed
jira initcommand andinteractiveSetup()method, requiring explicit configuration viajira configwith flags - Made all issue operations (create, edit, delete) require explicit command-line flags instead of falling back to interactive prompts
- Added
--description-fileoption for reading multi-line content from files
Reviewed changes
Copilot reviewed 7 out of 13 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/setup.js | Removed inquirer mock from test setup since the dependency is no longer used |
| tests/commands/init.test.js | Deleted entire test file for removed jira init command |
| package.json | Removed inquirer dependency from project dependencies |
| lib/config.js | Removed interactiveSetup() method and updated error messages to guide users to explicit configuration |
| README.md | Updated all examples to show non-interactive command usage with explicit flags |
| MIGRATION.md | Added comprehensive migration guide with before/after examples and troubleshooting |
| CLAUDE.md | Updated documentation to reflect non-interactive CLI design philosophy |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
MIGRATION.md
Outdated
| jira config --server https://jira.workers-hub.com \ | ||
| --username user@company.com \ | ||
| --token your-api-token | ||
|
|
||
| # Or use environment variables (recommended for CI/CD) | ||
| export JIRA_HOST=jira.workers-hub.com |
There was a problem hiding this comment.
[nitpick] The domain 'workers-hub.com' is inconsistent with other examples in the file that use 'company.com'. Consider using 'company.com' for consistency.
| jira config --server https://jira.workers-hub.com \ | |
| --username user@company.com \ | |
| --token your-api-token | |
| # Or use environment variables (recommended for CI/CD) | |
| export JIRA_HOST=jira.workers-hub.com | |
| jira config --server https://jira.company.com \ | |
| --username user@company.com \ | |
| --token your-api-token | |
| # Or use environment variables (recommended for CI/CD) | |
| export JIRA_HOST=jira.company.com |
BREAKING CHANGE: Removed all interactive prompts and inquirer dependency. - Remove 'jira init' command - use 'jira config' with explicit flags - Issue create/edit now require all options via CLI flags - Add --description-file option for multi-line descriptions - Issue delete requires --force flag - Sprint list requires --board when multiple boards exist - Remove inquirer dependency Migration guide added in MIGRATION.md. This change makes the CLI fully scriptable for CI/CD pipelines.
dd16c40 to
c0adcca
Compare
# [2.0.0](v1.1.1...v2.0.0) (2025-12-10) * feat!: remove interactive mode for full automation support (#11) ([872a39c](872a39c)), closes [#11](#11) ### BREAKING CHANGES * Removed all interactive prompts and inquirer dependency. - Remove 'jira init' command - use 'jira config' with explicit flags - Issue create/edit now require all options via CLI flags - Add --description-file option for multi-line descriptions - Issue delete requires --force flag - Sprint list requires --board when multiple boards exist - Remove inquirer dependency Migration guide added in MIGRATION.md. This change makes the CLI fully scriptable for CI/CD pipelines.
|
🎉 This PR is included in version 2.0.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
Summary
This PR removes all interactive prompts from the JIRA CLI to make it fully scriptable and automation-friendly for CI/CD pipelines.
Breaking Changes
Commands Removed:
jira init- replaced withjira config --server <url> --username <email> --token <token>Commands Modified:
jira config- no longer falls back to interactive mode when no options providedjira issue create- requires--project,--type,--summaryflagsjira issue edit- requires at least one field flagjira issue delete- requires--forceflagjira sprint list- requires--boardwhen multiple boards existNew Features
--description-file <path>option for reading multi-line descriptions from filesChanges Made
Core Library
interactiveSetup()method fromlib/config.jsCommands
bin/commands/init.jsentirelybin/root.jsto remove init command and update Quick Startbin/commands/config.jsto require explicit optionsbin/commands/issue.js:--description-filesupportbin/commands/sprint.jsto show board list with error instead of promptingDependencies & Tests
inquirerfrompackage.jsontests/setup.jstests/commands/init.test.jsDocumentation
README.mdwith non-interactive examplesCLAUDE.mdwith non-interactive design philosophyMIGRATION.mdguideTest Plan
inquirerdependency successfully removedMigration Guide
A complete migration guide has been added in
MIGRATION.mdcovering:Benefits
Semantic Versioning
This is a breaking change that will trigger a major version bump (v2.0.0) when merged to main.