chennaji9 opened a new pull request, #5883: URL: https://github.com/apache/rocketmq-dashboard/pull/5883
### Which Issue(s) This PR Fixes None — small self-contained fix found by inspection (no issue tracked). ### Brief Description The release chain (`release` → `checksum` → `package` → `license-binary`) never generated the shell completion scripts, and `scripts/package-release.sh` silently skipped a missing `bin/completion` directory (`if [ -d … ]; then cp … || true; fi`). So `make release` from a clean tree succeeded and shipped archives **without** the completion directory that `install.sh` documents next to LICENSE and NOTICE at the archive root; a partially failed copy was swallowed the same way. - Wire the `completion` target into `package` so the scripts are always generated before packaging. - Pass the configured build directory to the script via `COMPLETION_DIR` (default unchanged: `bin/completion`), so a non-default `BUILD_DIR` no longer desynchronizes generation from packaging. - Make a missing completion directory (or a failed copy) a hard packaging error with an explicit message instead of a silent omission. ### How Did You Test This Change? `cd rmqctl`, Go 1.27.1: - Pristine `rocketmq-studio` (7e7aa344), clean tree: `rm -rf bin && make package` exits 0, but `tar tzf bin/release/rmqctl-linux-amd64-3.0.0.tar.gz | grep -c completion` prints `0` — the silent omission. - This branch, clean tree: `make package` exits 0; the linux tar.gz contains `completion/rmqctl.bash`, `completion/_rmqctl`, `completion/rmqctl.fish`, `completion/rmqctl.ps1`, and the windows zip lists all four entries too. - Negative: `COMPLETION_DIR=/tmp/nonexistent-completion bash scripts/package-release.sh bin/rmqctl-linux-amd64 linux amd64 9.9.9 bin/legal/linux_amd64 /tmp/fakepkg` exits 1 with `Missing completion scripts in /tmp/nonexistent-completion; run make completion first`. - Default fallback (no `COMPLETION_DIR` set): the script still resolves `bin/completion` and packages successfully. ### Checklist - [x] One coherent change; unrelated modifications are not bundled in - [x] Commit subject follows Conventional Commits (`fix:`) - [ ] Tests added or updated for non-trivial changes (packaging behaviour verified manually above; no Make/shell test harness exists in this repo) - [x] New UI text has both Chinese and English entries under `web/src/i18n/` (n/a — no UI change) - [x] Architecture constraints stay green (n/a — no Java change) - [x] New source files carry the ASF license header (n/a — no new source file) - [x] Documentation touched where behaviour changed (n/a — the archive layout now matches what `install.sh` already documents) 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
