release

package
v1.0.0-beta Latest Latest
Warning

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

Go to latest
Published: Aug 16, 2024 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type APIDocumentCommit

type APIDocumentCommit struct {
	Release string
	API     string
	Commit  string
}

type APIProxyCommit

type APIProxyCommit struct {
	Release string
	API     string
	Commit  string
}

type CommitType

type CommitType = string
const (
	CommitApiDocument CommitType = "api_doc"
	CommitUpstream    CommitType = "upstream"
	CommitApiProxy    CommitType = "api_proxy"
)

type IReleaseService

type IReleaseService interface {
	// GetRelease 获取发布信息
	GetRelease(ctx context.Context, id string) (*Release, error)
	// CreateRelease 创建发布
	CreateRelease(ctx context.Context, service string, version string, remark string, apisProxyCommits, apiDocCommits map[string]string, upstreams map[string]map[string]string) (*Release, error)
	// DeleteRelease 删除发布
	DeleteRelease(ctx context.Context, id string) error
	List(ctx context.Context, service string) ([]*Release, error)
	GetApiProxyCommit(ctx context.Context, id string, apiUUID string) (string, error)
	GetApiDocCommit(ctx context.Context, id string, apiUUID string) (string, error)
	GetReleaseInfos(ctx context.Context, id string) ([]*APIProxyCommit, []*APIDocumentCommit, []*UpstreamCommit, error)
	GetCommits(ctx context.Context, id string) ([]*ProjectCommits, error)

	GetRunningApiDocCommit(ctx context.Context, service string, apiUUID string) (string, error)
	GetRunningApiProxyCommit(ctx context.Context, service string, apiUUID string) (string, error)
	Completeness(partitions []string, apis []string, proxyCommits []*commit.Commit[api.Proxy], documentCommits []*commit.Commit[api.Document], upstreamCommits []*commit.Commit[upstream.Config]) bool

	// GetRunning gets the running release with the given service.
	//
	// ctx: the context
	// service: the service name
	// Return type(s): *Release, error
	GetRunning(ctx context.Context, service string) (*Release, error)

	SetRunning(ctx context.Context, service string, id string) error
	CheckNewVersion(ctx context.Context, service string, version string) (bool, error)
}

type ProjectCommits

type ProjectCommits struct {
	Release string
	Type    string
	Target  string
	Key     string
	Commit  string
}

type Release

type Release struct {
	UUID     string
	Service  string
	Version  string
	Remark   string
	Creator  string
	CreateAt time.Time
}

func FromEntity

func FromEntity(e *release.Release) *Release

type UpstreamCommit

type UpstreamCommit struct {
	Release   string
	Upstream  string
	Partition string
	Commit    string
}

Jump to

Keyboard shortcuts

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