repometadata

package
v0.8.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 13, 2026 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package repometadata represents the data in .repo-metadata.json files, and the ability to create those files from other Librarian configuration.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FromAPI added in v0.8.2

func FromAPI(api *serviceconfig.API, info *LibraryInfo, language, repo, defaultVersion, outputDir string) error

FromAPI generates the .repo-metadata.json file from a serviceconfig.API and additional library information.

func FromLibrary added in v0.8.2

func FromLibrary(library *config.Library, language, repo, googleapisDir, defaultVersion, outdir string) error

FromLibrary generates the .repo-metadata.json file from config.Library. It retrieves API information from the provided googleapisDir and constructs the metadata.

Types

type LibraryInfo added in v0.8.3

type LibraryInfo struct {
	// DescriptionOverride overrides the library description from the service config.
	DescriptionOverride string
	// Name is the name of the library distribution package.
	Name string
	// ReleaseLevel is the release level (e.g., "stable", "preview").
	ReleaseLevel string
}

LibraryInfo contains information about a library that is not available in the service config.

type RepoMetadata

type RepoMetadata struct {
	// APIDescription is the description of the API.
	APIDescription string `json:"api_description,omitempty"`

	// APIID is the fully qualified API ID (e.g., "secretmanager.googleapis.com").
	APIID string `json:"api_id,omitempty"`

	// APIShortname is the short name of the API.
	APIShortname string `json:"api_shortname,omitempty"`

	// ClientDocumentation is the URL to the client library documentation.
	ClientDocumentation string `json:"client_documentation,omitempty"`

	// DefaultVersion is the default API version (e.g., "v1", "v1beta1").
	DefaultVersion string `json:"default_version,omitempty"`

	// DistributionName is the name of the library distribution package.
	DistributionName string `json:"distribution_name,omitempty"`

	// IssueTracker is the URL to the issue tracker.
	IssueTracker string `json:"issue_tracker"`

	// Language is the programming language (e.g., "rust", "python", "go").
	Language string `json:"language,omitempty"`

	// LibraryType is the type of library (e.g., "GAPIC_AUTO").
	LibraryType string `json:"library_type,omitempty"`

	// Name is the API short name.
	Name string `json:"name,omitempty"`

	// NamePretty is the human-readable name of the API.
	NamePretty string `json:"name_pretty,omitempty"`

	// ProductDocumentation is the URL to the product documentation.
	ProductDocumentation string `json:"product_documentation,omitempty"`

	// ReleaseLevel is the release level (e.g., "stable", "preview").
	ReleaseLevel string `json:"release_level,omitempty"`

	// Repo is the repository name (e.g., "googleapis/google-cloud-rust").
	Repo string `json:"repo,omitempty"`
}

RepoMetadata represents the .repo-metadata.json file structure.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL