-
Notifications
You must be signed in to change notification settings - Fork 0
Refactor build and publish workflow for GitHub runners #68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Updated GitHub Actions workflow to enhance build and publish processes, including changes to job configurations, added support for additional runners, and improved dependency management.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR refactors the GitHub Actions workflow to transition from self-hosted runners to GitHub-hosted runners, significantly simplifying the build matrix and improving the CI/CD process. The changes modernize the workflow configuration while maintaining cross-platform build support through strategic cross-compilation.
Key changes include:
- Migrated from self-hosted runners (with complex matrix of 44+ builds) to GitHub-hosted runners (6 optimized builds)
- Added comprehensive dependency management and cross-compilation support for Linux ARM64, Windows, macOS, and Alpine/musl targets
- Enabled pull request triggers and improved caching strategies for better performance
Comments suppressed due to low confidence (1)
.github/workflows/build_and_publish_test.yml:248
- The 'Clone rapidyenc' step is duplicated at lines 150-161 and 244-255. Remove the duplicate step to avoid redundancy.
- name: "clone rapidyenc"
run: |
cd rapidyenc
if [ ! -e rapidyenc ]; then
./clone_rapidyenc.sh
| run: | | ||
| # Build first if not cross-compiling | ||
| go build -o NZBreX -tags other . | ||
| ./NZBreX -testrapidyenc# - name: Clean Go module cache |
Copilot
AI
Oct 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing newline before comment. The comment should be on a separate line.
| ./NZBreX -testrapidyenc# - name: Clean Go module cache | |
| ./NZBreX -testrapidyenc | |
| # - name: Clean Go module cache |
| - name: "Set up Go" | ||
| uses: actions/setup-go@v5 | ||
| with: | ||
| go-version-file: 'go.mod' | ||
| cache: true |
Copilot
AI
Oct 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 'Set up Go' step is duplicated at lines 115-119 and 229-233. Remove the duplicate step to avoid redundancy.
| - name: "Set up Go" | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version-file: 'go.mod' | |
| cache: true | |
| # Duplicate "Set up Go" step removed as it is already present earlier in the workflow. |
| - name: "Clone rapidyenc" | ||
| run: | | ||
| cd rapidyenc | ||
| if [ ! -e rapidyenc ]; then | ||
| ./clone_rapidyenc.sh | ||
| if [ ! -e rapidyenc/.git ]; then | ||
| echo "rapidyenc/ src not found, exiting" | ||
| exit 1 | ||
| fi | ||
| else | ||
| echo "rapidyenc/ src exists, skipping clone" | ||
| fi |
Copilot
AI
Oct 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 'Clone rapidyenc' step is duplicated at lines 150-161 and 244-255. Remove the duplicate step to avoid redundancy.
| - name: "Clone rapidyenc" | |
| run: | | |
| cd rapidyenc | |
| if [ ! -e rapidyenc ]; then | |
| ./clone_rapidyenc.sh | |
| if [ ! -e rapidyenc/.git ]; then | |
| echo "rapidyenc/ src not found, exiting" | |
| exit 1 | |
| fi | |
| else | |
| echo "rapidyenc/ src exists, skipping clone" | |
| fi | |
| # (Removed duplicate "Clone rapidyenc" step) |
| - name: "Build rapidyenc (Linux amd64)" | ||
| if: matrix.os == 'linux' && matrix.arch == 'amd64' && !matrix.cross_compile |
Copilot
AI
Oct 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The rapidyenc build steps are duplicated (lines 164-316 and 258-316). This creates redundant build processes that will cause conflicts and unnecessary execution.
| - name: "Build rapidyenc (Linux amd64)" | ||
| if: matrix.os == 'linux' && matrix.arch == 'amd64' && !matrix.cross_compile |
Copilot
AI
Oct 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The rapidyenc build steps are duplicated (lines 164-316 and 258-316). This creates redundant build processes that will cause conflicts and unnecessary execution.
Updated GitHub Actions workflow to enhance build and publish processes, including changes to job configurations, added support for additional runners, and improved dependency management.