feat(release): add SDK configuration to release.yaml
Add SDKConfig struct and related types (SDKPackageConfig, SDKDiffConfig, SDKPublishConfig) to support SDK generation configuration within the release.yaml configuration file. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
674b1cd021
commit
7970e984e4
1 changed files with 36 additions and 0 deletions
|
|
@ -27,6 +27,8 @@ type Config struct {
|
||||||
Publishers []PublisherConfig `yaml:"publishers"`
|
Publishers []PublisherConfig `yaml:"publishers"`
|
||||||
// Changelog configures changelog generation.
|
// Changelog configures changelog generation.
|
||||||
Changelog ChangelogConfig `yaml:"changelog"`
|
Changelog ChangelogConfig `yaml:"changelog"`
|
||||||
|
// SDK configures SDK generation.
|
||||||
|
SDK *SDKConfig `yaml:"sdk,omitempty"`
|
||||||
|
|
||||||
// Internal fields (not serialized)
|
// Internal fields (not serialized)
|
||||||
projectDir string // Set by LoadConfig
|
projectDir string // Set by LoadConfig
|
||||||
|
|
@ -121,6 +123,40 @@ type OfficialConfig struct {
|
||||||
Output string `yaml:"output,omitempty"`
|
Output string `yaml:"output,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SDKConfig holds SDK generation configuration.
|
||||||
|
type SDKConfig struct {
|
||||||
|
// Spec is the path to the OpenAPI spec file.
|
||||||
|
Spec string `yaml:"spec,omitempty"`
|
||||||
|
// Languages to generate.
|
||||||
|
Languages []string `yaml:"languages,omitempty"`
|
||||||
|
// Output directory (default: sdk/).
|
||||||
|
Output string `yaml:"output,omitempty"`
|
||||||
|
// Package naming.
|
||||||
|
Package SDKPackageConfig `yaml:"package,omitempty"`
|
||||||
|
// Diff configuration.
|
||||||
|
Diff SDKDiffConfig `yaml:"diff,omitempty"`
|
||||||
|
// Publish configuration.
|
||||||
|
Publish SDKPublishConfig `yaml:"publish,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// SDKPackageConfig holds package naming configuration.
|
||||||
|
type SDKPackageConfig struct {
|
||||||
|
Name string `yaml:"name,omitempty"`
|
||||||
|
Version string `yaml:"version,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// SDKDiffConfig holds diff configuration.
|
||||||
|
type SDKDiffConfig struct {
|
||||||
|
Enabled bool `yaml:"enabled,omitempty"`
|
||||||
|
FailOnBreaking bool `yaml:"fail_on_breaking,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// SDKPublishConfig holds monorepo publish configuration.
|
||||||
|
type SDKPublishConfig struct {
|
||||||
|
Repo string `yaml:"repo,omitempty"`
|
||||||
|
Path string `yaml:"path,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
// ChangelogConfig holds changelog generation settings.
|
// ChangelogConfig holds changelog generation settings.
|
||||||
type ChangelogConfig struct {
|
type ChangelogConfig struct {
|
||||||
// Include specifies commit types to include in the changelog.
|
// Include specifies commit types to include in the changelog.
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue