Release pipeline: sign, config rename, packaging fixes, doctor output, dupload #54
No reviewers
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
nagonag
nagonag/ignore
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
heiko/gogogo!54
Loading…
Reference in a new issue
No description provided.
Delete branch "dev"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
SignModeenum (auto/on/off); auto-detect fromgit user.signingkey;.sigextension for sidecar filesrepo_release→releases,repo_packages→packages); addduploadbuilt-in; renameblobs→blob; unify bool-accessor naming toIs-prefixPublish.Blob; fixArchitecturefield in.changeswhen source files are present (reprepro rejection); conditional--toflagdebian/dir into binary and source packagesreleasecommand alias; onlypublishremainsTest plan
golangci-lint runreports 0 issuesgo test ./...— all 27 packages pass.changeswithArchitecture: amd64 sourcefor mixed packagesgogogo publishfor a real module against staging Forgejo instance🤖 Generated with Claude Code
Update Publish.Blobs→Blob callsite and default destination name ("release"→"releases") in the publish stage. Make runDupload emit --to only when host is non-empty, consistent with the relaxed validation. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> ius:ai:claude-sonnet-4-6Reorder Check() into three visual groups separated by blank lines: 1. repo (remote reachability + upload settings) + license 2. config (success entry with filename) + module/outdir (fail only) + git + go 3. conditional packaging/upload tools (lintian, dupload, etc.) Changes: - Decouple git binary lookup from its output entry so repo appears first. - Add ok("config", configFile) success entry; file name comes from new Options.ConfigFile (defaults to ".gogogo.conf"). - Add Entry.Separator / Report.sep() for blank-line group dividers; PrintTo() emits a blank line for separator entries. - Suppress silent ok entries from checkModulePath and checkOutdirIgnored — only failures/warnings are shown, keeping the happy path clean. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> ius:ai:claude-sonnet-4-6- TestPrintTo_SeparatorEmitsBlankLine: separator entries produce blank lines. - TestCheck_ConfigSuccessEntry: ok("config", …) appears when validation passes. - TestCheck_ConfigSuccessEntryUsesOptsConfigFile: ConfigFile option is honoured. - TestCheck_OutputGroupOrder: repo/license before first separator; config/git/go between separators; at least two group separators present. - Update TestCheck_ModulePathMatches and TestCheck_OutdirIgnoredOK to reflect that silent-OK entries are no longer emitted for those checks. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> ius:ai:claude-sonnet-4-6- Publish route comments now name the actual default destination and reference the API type ("via the Forgejo release API" / "packages API") instead of the vague "default". - Document "none" as the future keyword for suppressing publishing alongside the existing [] notation. - Doctor dupload entry now shows the effective host or "<auto>" when no host is configured, so the user can confirm the target at a glance. - runDupload logs the effective host (or "<auto>") at verbose level. ius:ai:claude-sonnet-4-6Self-merge after pre-merge review.
Follow-ups added before merge:
go list -m -jsonfuture-fix note) and in README.Known follow-up not in this PR: the
blobs → blobconfig rename should get a release-note entry or a deprecated-alias UnmarshalYAML; tracked separately.