[rmqctl][Bug] Windows build script fails when the output directory is absent
Maintainers usually reply within 3 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- go, powershell
- Domain
- build-system, cli
Research direction
Read rmqctl/scripts/build-windows.ps1 and the contract test in rmqctl/scripts/build_script_test.go. Check how the script handles the default and user-supplied -Output paths, then run the Linux-runnable contract test; the issue notes that Go is unavailable locally for the executable build test. Done means the output parent directory is created before go build runs, including for the default bin path.
Written by the indexing model from the issue text.
Description
Problem
rmqctl/scripts/build-windows.ps1 uses bin\\rmqctl.exe as its default output, but a clean checkout does not contain the bin directory.
Reproduction
- Check out the
rocketmq-studiodevelopment trunk on Windows. - From
rmqctl, runpowershell -File scripts/build-windows.ps1.
Expected behavior
The native Windows build creates its default output directory and produces bin\\rmqctl.exe.
Actual behavior
The script reaches go build -o bin\\rmqctl.exe main.go without creating bin, so Go cannot create the output file and the build fails on a fresh checkout.
Root cause
The script creates neither the parent directory of the user-supplied -Output path nor the default bin directory before invoking go build.
Fix scope
Create the output parent directory when it is non-empty, and keep a Linux-runnable script contract test that guards this ordering.
Regression evidence
The fix is based on the clean-checkout default path and protects the script contract with rmqctl/scripts/build_script_test.go. The local environment does not have Go installed, so the executable build test could not be run locally.
Discovery baseline: 127c47b06a268cc74224d5f34c56ec7c36ac0d55
- Dominant language
- Java
- Stars
- 1.4k
- Forks
- 718
- Avg merge
- 3d 15h
- Merged PRs (30d)
- 217
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from apache/rocketmq-dashboard
-
[Bug] ACL broker push only sends the first 200 rules of an account and reports successPossibly taken A pull request linked to this issue is open or already merged. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
apache/rocketmq-dashboard#7361 ·
Maintainers usually reply within 3 days
-
[Bug] CLI make clean splits build paths and deletes unrelated directoriesPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 87/100
apache/rocketmq-dashboard#7351 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
apache/rocketmq-dashboard#6331 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
apache/rocketmq-dashboard#5672 · 1 comment ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
apache/rocketmq-dashboard#5644 · 1 comment ·
Maintainers usually reply within 3 days
All issues in apache/rocketmq-dashboard
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
a2aproject/a2a-java#1275 ·
Maintainers usually reply within 1 day
-
module/ftp Type/Bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
ballerina-platform/ballerina-library#9476 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
anwilli5/coin-collection-android-US#515 ·
Maintainers usually reply within 1 day
-
status: waiting-for-triage type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
spring-projects/spring-integration#11654 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 Under an hour Newbie friendliness 70/100
Vakore/ZappierGames#248 ·