From e3d9aa2b9085484630b87bd35888e04cf23bf32b Mon Sep 17 00:00:00 2001 From: Snider Date: Thu, 29 Jan 2026 03:17:07 +0000 Subject: [PATCH] feat(release): add SDK release types and config converter Add SDKRelease struct to hold SDK release results and toSDKConfig helper function to convert release.SDKConfig to sdk.Config. Co-Authored-By: Claude Opus 4.5 --- pkg/release/sdk.go | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 pkg/release/sdk.go diff --git a/pkg/release/sdk.go b/pkg/release/sdk.go new file mode 100644 index 0000000..761fc10 --- /dev/null +++ b/pkg/release/sdk.go @@ -0,0 +1,36 @@ +// Package release provides release automation with changelog generation and publishing. +package release + +import ( + "github.com/host-uk/core/pkg/sdk" +) + +// SDKRelease holds the result of an SDK release. +type SDKRelease struct { + // Version is the SDK version. + Version string + // Languages that were generated. + Languages []string + // Output directory. + Output string +} + +// toSDKConfig converts release.SDKConfig to sdk.Config. +func toSDKConfig(cfg *SDKConfig) *sdk.Config { + if cfg == nil { + return nil + } + return &sdk.Config{ + Spec: cfg.Spec, + Languages: cfg.Languages, + Output: cfg.Output, + Package: sdk.PackageConfig{ + Name: cfg.Package.Name, + Version: cfg.Package.Version, + }, + Diff: sdk.DiffConfig{ + Enabled: cfg.Diff.Enabled, + FailOnBreaking: cfg.Diff.FailOnBreaking, + }, + } +}