github.com/speakeasy-api/sdk-gen-config@v1.14.2/lockfile.go (about)

     1  package config
     2  
     3  import "github.com/google/uuid"
     4  
     5  type LockFile struct {
     6  	LockVersion          string                       `yaml:"lockVersion"`
     7  	ID                   string                       `yaml:"id"`
     8  	Management           Management                   `yaml:"management"`
     9  	Features             map[string]map[string]string `yaml:"features,omitempty"`
    10  	GeneratedFiles       []string                     `yaml:"generatedFiles,omitempty"`
    11  	AdditionalProperties map[string]any               `yaml:",inline"` // Captures any additional properties that are not explicitly defined for backwards/forwards compatibility
    12  }
    13  
    14  type Management struct {
    15  	DocChecksum          string         `yaml:"docChecksum,omitempty"`
    16  	DocVersion           string         `yaml:"docVersion,omitempty"`
    17  	SpeakeasyVersion     string         `yaml:"speakeasyVersion,omitempty"`
    18  	GenerationVersion    string         `yaml:"generationVersion,omitempty"`
    19  	ReleaseVersion       string         `yaml:"releaseVersion,omitempty"`
    20  	ConfigChecksum       string         `yaml:"configChecksum,omitempty"`
    21  	RepoURL              string         `yaml:"repoURL,omitempty"`
    22  	RepoSubDirectory     string         `yaml:"repoSubDirectory,omitempty"`
    23  	InstallationURL      string         `yaml:"installationURL,omitempty"`
    24  	Published            bool           `yaml:"published,omitempty"`
    25  	AdditionalProperties map[string]any `yaml:",inline"` // Captures any additional properties that are not explicitly defined for backwards/forwards compatibility
    26  }
    27  
    28  var getUUID = func() string {
    29  	return uuid.NewString()
    30  }
    31  
    32  func NewLockFile() *LockFile {
    33  	return &LockFile{
    34  		LockVersion: v2,
    35  		ID:          getUUID(),
    36  		Features:    map[string]map[string]string{},
    37  	}
    38  }