Skip to content

Enhance release/build pipeline, add Linux slim build and binary compression; fix small Go process/session issues#8

Merged
YspCoder merged 1 commit intomainfrom
codex/optimize-project-code-without-affecting-functionality
Mar 2, 2026
Merged

Enhance release/build pipeline, add Linux slim build and binary compression; fix small Go process/session issues#8
YspCoder merged 1 commit intomainfrom
codex/optimize-project-code-without-affecting-functionality

Conversation

@YspCoder
Copy link
Copy Markdown
Owner

@YspCoder YspCoder commented Mar 2, 2026

Motivation

  • Improve the GitHub release workflow to produce reproducible per-platform artifacts and checksums while keeping Linux builds slimmer without disabling channel capabilities.
  • Provide Makefile knobs for slimmer/ultra-slim builds and optional binary compression for smaller release artifacts.
  • Fix minor Go issues (no-op assignments and un-cancelled contexts) to avoid leaks and clean up code.

Description

  • Replace the single make build-all step in .github/workflows/release.yml with explicit per-target go build steps, add make sync-embed-workspace/cleanup, separate Linux builds with special flags, and generate per-target .tar.gz/.zip packages plus checksums.txt.
  • Extend the Makefile with new variables (BUILD_FLAGS, COMPRESS_BINARY, UPX_FLAGS, LINUX_SLIM_*), default -trimpath -buildvcs=false, optional upx compression, a new build-linux-slim target, and updated build, build-all, and package-all flows to support these options.
  • Update README.md and README_EN.md to document make build-linux-slim, COMPRESS_BINARY=1 usage, and ultra-slim build notes.
  • Fix Go code in pkg/tools/process_manager.go, pkg/tools/sessions_tool.go, and pkg/nodes/registry_server.go by removing redundant no-op assignments and adding cancel() calls when StdoutPipe/StderrPipe creation fails to avoid leaking contexts.

Testing

  • Ran go test ./... which completed successfully.
  • Performed local builds using make build-linux-slim and make build-all and confirmed binaries are produced in build/ and packaging via make package-all generated .tar.gz/.zip files and build/checksums.txt.
  • Verified that make build COMPRESS_BINARY=1 attempts upx compression and that builds succeed when upx is not present (skips with warning).

Codex Task

@YspCoder YspCoder merged commit d1c277d into main Mar 2, 2026
@YspCoder YspCoder deleted the codex/optimize-project-code-without-affecting-functionality branch March 2, 2026 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant