-
Notifications
You must be signed in to change notification settings - Fork 99
Description
Overview
This issue proposes introducing a fully automated CI/CD workflow to build and publish the SharpIDE-linux-bin package to the Arch User Repository (AUR) for Arch Linux–based distributions. The objective is to eliminate manual intervention, reduce operational risk, and ensure consistent, repeatable releases aligned with best-in-class open-source delivery standards.
Problem Statement
The current release process for the sharpide-linux-x64-0.1.11.tar.gz package requires manual steps to:
- Build the binary artifact
- compress it
- Added as a source with the new release
This approach does not scale, increases the likelihood of human error, and introduces unnecessary delays between upstream releases and downstream availability for users.
Proposed Solution
Introduce a GitHub Actions–based automation pipeline that:
- Triggers on tagged releases or version changes.
- Builds the Linux binary in a controlled CI environment.
- Updates the AUR
PKGBUILD, checksums, and version metadata. - Commits and pushes changes to the AUR repository using a dedicated deploy key.
This workflow will establish a single source of truth and a deterministic release mechanism.
Scope of Work
- Design and implement a GitHub Actions workflow under
.github/workflows/ - Securely manage AUR SSH keys via GitHub Secrets
- Automate:
- Binary build process (with different CPU arch)
- SHA256 checksum generation
PKGBUILDand.SRCINFOupdates
- Push validated changes to the AUR
*-binrepository - Document the workflow and operational assumptions
Acceptance Criteria
- A GitHub Actions workflow exists and is documented
- On release/tag creation, the
SharpIDE-linux-binpackage is:- Built successfully
- Published to the corresponding AUR repository without manual steps
- Secrets are handled securely and follow least-privilege principles
- The workflow is idempotent and failure-safe
Benefits
- Faster time-to-availability for Arch Linux users
- Reduced operational overhead for maintainers
- Improved release consistency and auditability
- Alignment with modern OSS automation and DevOps best practices
Additional Notes
- Initial implementation can target release tags only; branch-based triggers can be evaluated later
- Dry-run or validation steps are encouraged to prevent accidental AUR corruption
- Future enhancements may include multi-arch support if applicable
Priority: High
Type: Automation / CI-CD
Target Platform: Arch Linux (AUR)