Skip to content

feat: makeself #6023

Merged
caarlos0 merged 24 commits intomainfrom
makeself-refactor-v3
Aug 29, 2025
Merged

feat: makeself #6023
caarlos0 merged 24 commits intomainfrom
makeself-refactor-v3

Conversation

@caarlos0
Copy link
Copy Markdown
Member

@caarlos0 caarlos0 commented Aug 26, 2025

This builds up on the work of @faisal-smarthub, adding makeself support to goreleaser.

I've greatly simplified the original implementation, removing many options from it as well.

It's still not quite there, though - but it already works and can be tested!

refs #5989
refs #5994


TODO

  • initial implementation
  • extract the improved artifact filtering into its own PR
  • tests
  • double check docs
  • move goreleaser's setup.sh into some directory
  • make sure CI passes

Faisal and others added 8 commits August 19, 2025 15:59
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
@caarlos0 caarlos0 self-assigned this Aug 26, 2025
@pull-request-size pull-request-size Bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Aug 26, 2025
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented Aug 28, 2025

Deploying goreleaser with  Cloudflare Pages  Cloudflare Pages

Latest commit: 56ac92d
Status: ✅  Deploy successful!
Preview URL: https://7e6eb3e8.goreleaser.pages.dev
Branch Preview URL: https://makeself-refactor-v3.goreleaser.pages.dev

View logs

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
@pull-request-size pull-request-size Bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Aug 28, 2025
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented Aug 28, 2025

Codecov Report

❌ Patch coverage is 74.69388% with 62 lines in your changes missing coverage. Please review.
✅ Project coverage is 82.71%. Comparing base (604f5e0) to head (56ac92d).
⚠️ Report is 3 commits behind head on main.

Files with missing lines Patch % Lines
internal/pipe/makeself/makeself.go 73.83% 44 Missing and 18 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #6023      +/-   ##
==========================================
- Coverage   82.82%   82.71%   -0.12%     
==========================================
  Files         167      168       +1     
  Lines       16930    17175     +245     
==========================================
+ Hits        14023    14206     +183     
- Misses       2302     2346      +44     
- Partials      605      623      +18     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
@caarlos0 caarlos0 requested a review from Copilot August 29, 2025 01:15
Copy link
Copy Markdown
Contributor

Copilot AI left a 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 adds makeself support to GoReleaser, enabling creation of self-extracting archives. This builds on previous work and provides a simplified implementation for creating executable files that self-extract and can run installation scripts.

  • Adds complete makeself pipe implementation with configuration, defaults, and execution logic
  • Integrates makeself artifacts into existing GoReleaser pipelines (signing, checksums, uploads, etc.)
  • Includes comprehensive documentation and test coverage

Reviewed Changes

Copilot reviewed 20 out of 20 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
www/mkdocs.yml Adds navigation entry for makeself documentation
www/docs/customization/makeself.md Complete documentation for makeself feature configuration
pkg/defaults/defaults.go Registers makeself pipe in defaulters
pkg/config/config.go Defines Makeself and MakeselfFile configuration structs
internal/skips/skips.go Adds makeself skip key to skips system
internal/pipeline/pipeline.go Integrates makeself pipe into main pipeline
internal/pipe/sign/sign.go Includes makeself artifacts in signing pipeline
internal/pipe/reportsizes/reportsizes.go Includes makeself artifacts in size reporting
internal/pipe/release/release.go Includes makeself artifacts in release uploads
internal/pipe/makeself/ Core makeself implementation with tests and test data
internal/pipe/checksums/checksums.go Includes makeself artifacts in checksum generation
internal/pipe/blob/upload.go Includes makeself artifacts in blob uploads
internal/http/http.go Includes makeself artifacts in HTTP uploads
internal/artifact/artifact.go Defines Makeself artifact type
.github/workflows/build.yml Installs makeself tool for CI testing

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread internal/pipe/makeself/makeself.go Outdated
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
@caarlos0 caarlos0 merged commit 03bcbab into main Aug 29, 2025
16 of 18 checks passed
@caarlos0 caarlos0 deleted the makeself-refactor-v3 branch August 29, 2025 01:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants