-
Notifications
You must be signed in to change notification settings - Fork 0
Integrate SHA256 checksums into build and release workflow with GitHub Actions enhancement #17
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
…w features Co-authored-by: go-while <137838162+go-while@users.noreply.github.com>
Update copilot instructions for v0.4.8.6 - Go version, counts, and new features
readme and workflow updates
Co-authored-by: go-while <137838162+go-while@users.noreply.github.com>
Co-authored-by: go-while <137838162+go-while@users.noreply.github.com>
@copilot |
Co-authored-by: go-while <137838162+go-while@users.noreply.github.com>
I've enhanced the build and release workflow integration with the following improvements: Automatic Integration:
Release Archive Integration:
Enhanced Workflow: # Simple build - automatically generates checksums
./build_ALL.sh
# Full release - builds, generates checksums, includes in archive
./build_ALL.sh update
# Verification after release extraction
tar -xzf update.tar.gz && cd extracted-dir/ && sha256sum -c checksums.sha256 The integration is now complete and provides seamless checksum generation and verification throughout the entire build and release workflow. Commit: f8a18fe |
@copilot |
…te downloadable files Co-authored-by: go-while <137838162+go-while@users.noreply.github.com>
I've enhanced the GitHub Actions workflow to include SHA256 checksums as separate downloadable files. The changes include: Platform-specific checksums: Each build matrix (linux-amd64, darwin-arm64, etc.) now generates individual Comprehensive checksums file: A unified Multiple download options: Users can now download:
Enhanced release notes: Added verification instructions and examples for all checksum formats The workflow now provides complete checksum integration for both automated builds and manual verification workflows. Commit: 202dcae |
@copilot
First question: Why did it try to overwrite existing files? Why do files exist before extracting. Do you have a solution to silence the messages so we can have a clean and error free run? |
... The Go cache errors occur because of a conflict between the Why files exist before extraction:
Why cache doesn't provide benefit:
Solutions: Option 1: Fix cache path conflict (modify lines 37-43): - name: Cache Go modules
uses: actions/cache@v4
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
continue-on-error: true # Prevent cache failures from breaking build Option 2: Remove cache entirely (delete lines 37-43): I recommend Option 2 (removing the cache) for a clean, error-free workflow since the cache isn't providing meaningful benefits in this case. |
@copilot |
…e extraction conflicts Co-authored-by: go-while <137838162+go-while@users.noreply.github.com>
Removed the Go cache module from the GitHub Actions workflow (lines 37-43) to eliminate the cache extraction conflicts. The Commit: 2671930 |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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 integrates SHA256 checksum generation directly into the build workflow, making binary verification automatic and seamless across all release channels. The enhancement eliminates manual checksum steps and provides comprehensive verification options for users.
Key changes:
- Automatic checksum generation integrated into standard build process via
build_ALL.sh
- Enhanced GitHub Actions workflow with platform-specific checksums and comprehensive verification files
- Multiple verification workflows supporting local builds, platform-specific downloads, and archive-based verification
Reviewed Changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
File | Description |
---|---|
createChecksums.sh | New script for generating SHA256 checksums with dual format support (full paths and archive-relative paths) |
createUpdate.sh | Enhanced to automatically generate checksums and include them in release archives |
build_ALL.sh | Modified to automatically call checksum generation after building all executables |
README.md | Added comprehensive documentation for build process, checksum generation, and verification workflows |
.update | Updated hash reflecting new release archive contents with included checksums |
.github/workflows/release.yml | Enhanced with platform-specific checksum generation, comprehensive SHA256SUMS.txt creation, and removed Go module cache |
.github/copilot-instructions.md | Updated project metadata including Go version, file counts, and new bridge integration features |
This PR enhances the build and release workflow by integrating SHA256 checksum generation directly into the standard build process and GitHub Actions workflow, making binary verification seamless and automatic across all release channels.
Enhanced Integration Features
Automatic Local Checksum Generation:
./build_ALL.sh
runsRelease Archive Integration:
update.tar.gz
)GitHub Actions Workflow Enhancement:
SHA256SUMS.txt
file combining all platform checksumsMultiple Verification Options
Option 1: Comprehensive verification
# Download SHA256SUMS.txt from GitHub release sha256sum -c SHA256SUMS.txt
Option 2: Platform-specific verification
# Download platform-specific checksums file sha256sum -c checksums-linux-amd64.sha256
Option 3: Archive-based verification
Implementation Details
Enhanced Local Build Scripts:
build_ALL.sh
automatically callscreateChecksums.sh
after building all executablescreateChecksums.sh
generates both local and archive-compatible checksum formatscreateUpdate.sh
includes checksums in release packagesGitHub Actions Workflow Enhancements:
checksums-{os}-{arch}.sha256
)SHA256SUMS.txt
with all platform checksumsUser Benefits
This provides a complete end-to-end solution for binary verification that's integrated seamlessly into both local build processes and GitHub release workflows, addressing the need for reliable individual executable verification across all distribution channels.
Fixes #16.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.