api

package
v0.0.0-...-0bc8de7 Latest Latest
Warning

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

Go to latest
Published: Dec 24, 2025 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Fetch

func Fetch(opts ...Option) error

Types

type Option

type Option interface {
	// contains filtered or unexported methods
}

func WithBaseURL

func WithBaseURL(url string) Option

func WithConcurrency

func WithConcurrency(concurrency int) Option

func WithDir

func WithDir(dir string) Option

func WithRetry

func WithRetry(retry int) Option

func WithWait

func WithWait(wait time.Duration) Option

type Product

type Product struct {
	Name           string   `json:"name"`
	Label          string   `json:"label"`
	Aliases        []string `json:"aliases"`
	Category       string   `json:"category"`
	Tags           []string `json:"tags"`
	VersionCommand *string  `json:"versionCommand,omitempty"`
	Identifiers    []struct {
		ID   string `json:"id"`
		Type string `json:"type"`
	} `json:"identifiers"`
	Labels struct {
		EOAS         *string `json:"eoas,omitempty"`
		Discontinued *string `json:"discontinued,omitempty"`
		EOL          string  `json:"eol"`
		EOES         *string `json:"eoes,omitempty"`
	} `json:"labels"`
	Links struct {
		Icon          *string `json:"icon,omitempty"`
		HTML          string  `json:"html"`
		ReleasePolicy *string `json:"releasePolicy,omitempty"`
	} `json:"links"`
	Releases []struct {
		Name             string  `json:"name"`
		Codename         *string `json:"codename"`
		Label            string  `json:"label"`
		ReleaseDate      string  `json:"releaseDate"`
		IsLTS            bool    `json:"isLts"`
		LTSFrom          *string `json:"ltsFrom,omitempty"`
		IsEOAS           *bool   `json:"isEoas,omitempty"`
		EOASFrom         *string `json:"eoasFrom,omitempty"`
		IsEOL            bool    `json:"isEol"`
		EOLFrom          *string `json:"eolFrom,omitempty"`
		IsDiscontinued   bool    `json:"isDiscontinued"`
		DiscontinuedFrom *string `json:"discontinuedFrom,omitempty"`
		IsEOES           *bool   `json:"isEoes,omitempty"`
		EOESFrom         *string `json:"eoesFrom,omitempty"`
		IsMaintained     bool    `json:"isMaintained"`
		Latest           *struct {
			Name string  `json:"name"`
			Date *string `json:"date"`
			Link *string `json:"link"`
		} `json:"latest,omitempty"`
		Custom map[string]*string `json:"custom,omitempty"`
	} `json:"releases"`
}