config

package
v0.0.0-...-678c4f2 Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2024 License: Apache-2.0 Imports: 12 Imported by: 24

Documentation

Overview

Package config contains luci-config protobuf definitions.

Copied from:

Repo: https://chromium.googlesource.com/infra/luci/luci-py/ Revision: 857db7b19c3765e1dd44432fe2bffb1450070e3c Path: appengine/components/components/config/proto/*.proto

Modification: added luci.* options.

Index

Constants

View Source
const (
	Consumer_GetMetadata_FullMethodName     = "/config.Consumer/GetMetadata"
	Consumer_ValidateConfigs_FullMethodName = "/config.Consumer/ValidateConfigs"
)

Variables

View Source
var (
	ValidationResponseMessage_Severity_name = map[int32]string{
		0:  "UNKNOWN",
		10: "DEBUG",
		20: "INFO",
		30: "WARNING",
		40: "ERROR",
		50: "CRITICAL",
	}
	ValidationResponseMessage_Severity_value = map[string]int32{
		"UNKNOWN":  0,
		"DEBUG":    10,
		"INFO":     20,
		"WARNING":  30,
		"ERROR":    40,
		"CRITICAL": 50,
	}
)

Enum value maps for ValidationResponseMessage_Severity.

View Source
var (
	ValidationResult_Severity_name = map[int32]string{
		0:  "UNKNOWN",
		10: "DEBUG",
		20: "INFO",
		30: "WARNING",
		40: "ERROR",
		50: "CRITICAL",
	}
	ValidationResult_Severity_value = map[string]int32{
		"UNKNOWN":  0,
		"DEBUG":    10,
		"INFO":     20,
		"WARNING":  30,
		"ERROR":    40,
		"CRITICAL": 50,
	}
)

Enum value maps for ValidationResult_Severity.

View Source
var Consumer_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "config.Consumer",
	HandlerType: (*ConsumerServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetMetadata",
			Handler:    _Consumer_GetMetadata_Handler,
		},
		{
			MethodName: "ValidateConfigs",
			Handler:    _Consumer_ValidateConfigs_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "go.chromium.org/luci/common/proto/config/service_config.proto",
}

Consumer_ServiceDesc is the grpc.ServiceDesc for Consumer service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_go_chromium_org_luci_common_proto_config_project_config_proto protoreflect.FileDescriptor
View Source
var File_go_chromium_org_luci_common_proto_config_service_config_proto protoreflect.FileDescriptor

Functions

func FileDescriptorSet

func FileDescriptorSet() *descriptorpb.FileDescriptorSet

FileDescriptorSet returns a descriptor set for this proto package, which includes all defined services, and all transitive dependencies.

Will not return nil.

Do NOT modify the returned descriptor.

func RegisterConsumerServer

func RegisterConsumerServer(s grpc.ServiceRegistrar, srv ConsumerServer)

Types

type AclCfg

type AclCfg struct {

	// Name of the group that has global access to all "projects/*" config sets.
	//
	// Should contain only members that really need read access to multiple
	// projects. Access to an individual project can be granted through
	// "role/configs.reader" role in the "@root" realm of the project.
	ProjectAccessGroup string `protobuf:"bytes,2,opt,name=project_access_group,json=projectAccessGroup,proto3" json:"project_access_group,omitempty"`
	// Name of the group that can call validation API for any accessible project.
	//
	// Should contain only members that really need to use validation API in
	// multiple projects. Permission to validate an individual project can be
	// granted through "role/configs.developer" role in the "@root" realm of
	// the project.
	ProjectValidationGroup string `` /* 129-byte string literal not displayed */
	// Name of the group that can call reimport API for any accessible project.
	//
	// Should contain only members that really need to use reimport API in
	// multiple projects. Permission to reimport an individual project can be
	// granted through "role/configs.developer" role in the "@root" realm of
	// the project.
	ProjectReimportGroup string `protobuf:"bytes,9,opt,name=project_reimport_group,json=projectReimportGroup,proto3" json:"project_reimport_group,omitempty"`
	// Name of the group that has global access to all "services/*" config sets.
	//
	// Should contain only members that really need read access to multiple
	// services. Access to an individual service can be granted via "access" field
	// in its entry in services.cfg config.
	ServiceAccessGroup string `protobuf:"bytes,7,opt,name=service_access_group,json=serviceAccessGroup,proto3" json:"service_access_group,omitempty"`
	// Name of the group that can call validation API for any accessible service.
	ServiceValidationGroup string `` /* 130-byte string literal not displayed */
	// Name of the group that can call reimport API for any accessible service.
	ServiceReimportGroup string `protobuf:"bytes,11,opt,name=service_reimport_group,json=serviceReimportGroup,proto3" json:"service_reimport_group,omitempty"`
	// contains filtered or unexported fields
}

Schema of acl.cfg file. Next tag: 13.

func (*AclCfg) Descriptor deprecated

func (*AclCfg) Descriptor() ([]byte, []int)

Deprecated: Use AclCfg.ProtoReflect.Descriptor instead.

func (*AclCfg) GetProjectAccessGroup

func (x *AclCfg) GetProjectAccessGroup() string

func (*AclCfg) GetProjectReimportGroup

func (x *AclCfg) GetProjectReimportGroup() string

func (*AclCfg) GetProjectValidationGroup

func (x *AclCfg) GetProjectValidationGroup() string

func (*AclCfg) GetServiceAccessGroup

func (x *AclCfg) GetServiceAccessGroup() string

func (*AclCfg) GetServiceReimportGroup

func (x *AclCfg) GetServiceReimportGroup() string

func (*AclCfg) GetServiceValidationGroup

func (x *AclCfg) GetServiceValidationGroup() string

func (*AclCfg) ProtoMessage

func (*AclCfg) ProtoMessage()

func (*AclCfg) ProtoReflect

func (x *AclCfg) ProtoReflect() protoreflect.Message

func (*AclCfg) Reset

func (x *AclCfg) Reset()

func (*AclCfg) String

func (x *AclCfg) String() string

type ConfigPattern

type ConfigPattern struct {

	// A string pattern for config_set.
	//
	// If the pattern string starts with "regex:", everything after the prefix
	// will be treated as regular expression to match the config set. The
	// regular expression will be auto-anchored with "^" at the beginning and "$"
	// at the end if not already.
	//
	// If the pattern string starts with "exact:" or "text:", everything after the
	// prefix should be exactly the same as the config set to match the pattern.
	//
	// If the pattern string doesn't start with any of the above prefixes, it will
	// be used as exact match just like "exact:" and "text:" prefixes.
	//
	// Note that LUCI Config will only send the service configs that belongs to
	// / the service defined in `Service` or validation, even though the
	// config_set pattern here can declare a much broader range (e.g.
	// `regex:services/.+` that matches all services).
	ConfigSet string `protobuf:"bytes,1,opt,name=config_set,json=configSet,proto3" json:"config_set,omitempty"`
	// A string pattern for config file path.
	//
	// The pattern syntax is the same as `config_set`
	Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	// contains filtered or unexported fields
}

Defines a pattern of a config identity. Both config_set and path must match.

func (*ConfigPattern) Descriptor deprecated

func (*ConfigPattern) Descriptor() ([]byte, []int)

Deprecated: Use ConfigPattern.ProtoReflect.Descriptor instead.

func (*ConfigPattern) GetConfigSet

func (x *ConfigPattern) GetConfigSet() string

func (*ConfigPattern) GetPath

func (x *ConfigPattern) GetPath() string

func (*ConfigPattern) ProtoMessage

func (*ConfigPattern) ProtoMessage()

func (*ConfigPattern) ProtoReflect

func (x *ConfigPattern) ProtoReflect() protoreflect.Message

func (*ConfigPattern) Reset

func (x *ConfigPattern) Reset()

func (*ConfigPattern) String

func (x *ConfigPattern) String() string

type ConsumerClient

type ConsumerClient interface {
	// GetMetadata returns the service metadata.
	GetMetadata(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ServiceMetadata, error)
	// ValidateConfigs validates the provided configs within a config set.
	ValidateConfigs(ctx context.Context, in *ValidateConfigsRequest, opts ...grpc.CallOption) (*ValidationResult, error)
}

ConsumerClient is the client API for Consumer service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

Consumer can be implemented by the registered service that consumes config.

The service should be registered in `ServicesCfg`. It is currently for a service declaring configs of interest and validate those configs.

func NewConsumerClient

func NewConsumerClient(cc grpc.ClientConnInterface) ConsumerClient

type ConsumerServer

type ConsumerServer interface {
	// GetMetadata returns the service metadata.
	GetMetadata(context.Context, *emptypb.Empty) (*ServiceMetadata, error)
	// ValidateConfigs validates the provided configs within a config set.
	ValidateConfigs(context.Context, *ValidateConfigsRequest) (*ValidationResult, error)
	// contains filtered or unexported methods
}

ConsumerServer is the server API for Consumer service. All implementations must embed UnimplementedConsumerServer for forward compatibility.

Consumer can be implemented by the registered service that consumes config.

The service should be registered in `ServicesCfg`. It is currently for a service declaring configs of interest and validate those configs.

type GeneratorMetadata

type GeneratorMetadata struct {

	// Version of lucicfg binary used to generate the config.
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// Path to the main package relative to project.cfg.
	PackageDir string `protobuf:"bytes,5,opt,name=package_dir,json=packageDir,proto3" json:"package_dir,omitempty"`
	// Directory with generated LUCI project configs relative to the main package.
	ConfigDir string `protobuf:"bytes,2,opt,name=config_dir,json=configDir,proto3" json:"config_dir,omitempty"`
	// Name of the entry point Starlark file at the root of the main package.
	EntryPoint string `protobuf:"bytes,3,opt,name=entry_point,json=entryPoint,proto3" json:"entry_point,omitempty"`
	// Set of vars passed to lucicfg as "-var ...".
	Vars map[string]string `` /* 149-byte string literal not displayed */
	// Set of enabled lucicfg experiments.
	Experiments []string `protobuf:"bytes,6,rep,name=experiments,proto3" json:"experiments,omitempty"`
	// contains filtered or unexported fields
}

GeneratorMetadata is produced by lucicfg to describe how it generated the config.

func (*GeneratorMetadata) Descriptor deprecated

func (*GeneratorMetadata) Descriptor() ([]byte, []int)

Deprecated: Use GeneratorMetadata.ProtoReflect.Descriptor instead.

func (*GeneratorMetadata) GetConfigDir

func (x *GeneratorMetadata) GetConfigDir() string

func (*GeneratorMetadata) GetEntryPoint

func (x *GeneratorMetadata) GetEntryPoint() string

func (*GeneratorMetadata) GetExperiments

func (x *GeneratorMetadata) GetExperiments() []string

func (*GeneratorMetadata) GetPackageDir

func (x *GeneratorMetadata) GetPackageDir() string

func (*GeneratorMetadata) GetVars

func (x *GeneratorMetadata) GetVars() map[string]string

func (*GeneratorMetadata) GetVersion

func (x *GeneratorMetadata) GetVersion() string

func (*GeneratorMetadata) ProtoMessage

func (*GeneratorMetadata) ProtoMessage()

func (*GeneratorMetadata) ProtoReflect

func (x *GeneratorMetadata) ProtoReflect() protoreflect.Message

func (*GeneratorMetadata) Reset

func (x *GeneratorMetadata) Reset()

func (*GeneratorMetadata) String

func (x *GeneratorMetadata) String() string

type GitilesLocation

type GitilesLocation struct {

	// URL of the Git repository.
	// Must not end with "/".
	// Must not end with ".git".
	// Must not have "/a/" prefix of a path component.
	//
	// Example:
	//
	//	OK:
	//	  https://chromium.googlesource.com/infra/infra
	//	Not OK:
	//	  https://chromium.googlesource.com/a/infra/infra
	//	  https://chromium.googlesource.com/infra/infra/
	//	  https://chromium.googlesource.com/infra/infra.git
	Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"`
	// Ref or commit hash of the Git repository.
	//
	// Must be a fully qualified ref starting with "refs/" or a commit hash.
	//
	// Example:
	//
	//	OK:
	//	  refs/heads/branch
	//	  refs/heads/infra/config
	//	  refs/branch-heads/beta
	//	  $a_valid_git_sha
	//	Not OK:
	//	  main
	//	  HEAD
	//	  origin/main
	//	  tags/123
	//
	// TODO: crbug/1446839 - Replace this field with a new `committish` field
	// to better reflect the fact that field value can be either refs or
	// revision hash.
	Ref string `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// Path to the directory inside Git repository where configurations are stored.
	// Optional. If not specified, defaults to top-level folder of the git repo.
	// Must not start or end with "/".
	//
	// Example:
	//
	//	OK:
	//	  infra/config/generated
	//	    (empty string)
	//	NOT OK:
	//	  /
	//	  /config
	//	  infra/config/
	Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	// contains filtered or unexported fields
}

Use to specify configuration stored in Git repository importable via Gitiles API.

func (*GitilesLocation) Descriptor deprecated

func (*GitilesLocation) Descriptor() ([]byte, []int)

Deprecated: Use GitilesLocation.ProtoReflect.Descriptor instead.

func (*GitilesLocation) GetPath

func (x *GitilesLocation) GetPath() string

func (*GitilesLocation) GetRef

func (x *GitilesLocation) GetRef() string

func (*GitilesLocation) GetRepo

func (x *GitilesLocation) GetRepo() string

func (*GitilesLocation) ProtoMessage

func (*GitilesLocation) ProtoMessage()

func (*GitilesLocation) ProtoReflect

func (x *GitilesLocation) ProtoReflect() protoreflect.Message

func (*GitilesLocation) Reset

func (x *GitilesLocation) Reset()

func (*GitilesLocation) String

func (x *GitilesLocation) String() string

type IdentityConfig

type IdentityConfig struct {

	// ServiceAccountEmail is the full service account email to use when
	// LUCI acts on behalf of the project.
	//
	// Note: Due to token caching, it takes ~15 minutes for a config change
	// to become effective. Keep this in mind when migrating projects to a
	// new identity.
	ServiceAccountEmail string `protobuf:"bytes,1,opt,name=service_account_email,json=serviceAccountEmail,proto3" json:"service_account_email,omitempty"`
	// contains filtered or unexported fields
}

Used to define project specific identities for LUCI to act on behalf when interacting with external systems. This allows projects to use exclusive and isolated identities to not be accidentally affected by other projects.

func (*IdentityConfig) Descriptor deprecated

func (*IdentityConfig) Descriptor() ([]byte, []int)

Deprecated: Use IdentityConfig.ProtoReflect.Descriptor instead.

func (*IdentityConfig) GetServiceAccountEmail

func (x *IdentityConfig) GetServiceAccountEmail() string

func (*IdentityConfig) ProtoMessage

func (*IdentityConfig) ProtoMessage()

func (*IdentityConfig) ProtoReflect

func (x *IdentityConfig) ProtoReflect() protoreflect.Message

func (*IdentityConfig) Reset

func (x *IdentityConfig) Reset()

func (*IdentityConfig) String

func (x *IdentityConfig) String() string

type ImportCfg

type ImportCfg struct {

	// Configuration of import from Gitiles repositories.
	Gitiles *ImportCfg_Gitiles `protobuf:"bytes,1,opt,name=gitiles,proto3" json:"gitiles,omitempty"`
	// contains filtered or unexported fields
}

Schema for import.cfg. It specified how to import configuration files from external sources.

func (*ImportCfg) Descriptor deprecated

func (*ImportCfg) Descriptor() ([]byte, []int)

Deprecated: Use ImportCfg.ProtoReflect.Descriptor instead.

func (*ImportCfg) GetGitiles

func (x *ImportCfg) GetGitiles() *ImportCfg_Gitiles

func (*ImportCfg) ProtoMessage

func (*ImportCfg) ProtoMessage()

func (*ImportCfg) ProtoReflect

func (x *ImportCfg) ProtoReflect() protoreflect.Message

func (*ImportCfg) Reset

func (x *ImportCfg) Reset()

func (*ImportCfg) String

func (x *ImportCfg) String() string

type ImportCfg_Gitiles

type ImportCfg_Gitiles struct {

	// Request timeout in seconds when requesting commit log.
	FetchLogDeadline int32 `protobuf:"varint,1,opt,name=fetch_log_deadline,json=fetchLogDeadline,proto3" json:"fetch_log_deadline,omitempty"`
	// Request timeout in seconds when requesting directory archive.
	FetchArchiveDeadline int32 `protobuf:"varint,2,opt,name=fetch_archive_deadline,json=fetchArchiveDeadline,proto3" json:"fetch_archive_deadline,omitempty"`
	// DEPRECATED, ignored. TODO(nodir): remove.
	// Default ref for project configs.
	ProjectConfigDefaultRef string `` /* 134-byte string literal not displayed */
	// DEPRECATED, ignored. TODO(nodir): remove.
	// Default directory for project configs.
	ProjectConfigDefaultPath string `` /* 137-byte string literal not displayed */
	// Default directory for ref configs.
	RefConfigDefaultPath string `protobuf:"bytes,5,opt,name=ref_config_default_path,json=refConfigDefaultPath,proto3" json:"ref_config_default_path,omitempty"`
	// contains filtered or unexported fields
}

func (*ImportCfg_Gitiles) Descriptor deprecated

func (*ImportCfg_Gitiles) Descriptor() ([]byte, []int)

Deprecated: Use ImportCfg_Gitiles.ProtoReflect.Descriptor instead.

func (*ImportCfg_Gitiles) GetFetchArchiveDeadline

func (x *ImportCfg_Gitiles) GetFetchArchiveDeadline() int32

func (*ImportCfg_Gitiles) GetFetchLogDeadline

func (x *ImportCfg_Gitiles) GetFetchLogDeadline() int32

func (*ImportCfg_Gitiles) GetProjectConfigDefaultPath

func (x *ImportCfg_Gitiles) GetProjectConfigDefaultPath() string

func (*ImportCfg_Gitiles) GetProjectConfigDefaultRef

func (x *ImportCfg_Gitiles) GetProjectConfigDefaultRef() string

func (*ImportCfg_Gitiles) GetRefConfigDefaultPath

func (x *ImportCfg_Gitiles) GetRefConfigDefaultPath() string

func (*ImportCfg_Gitiles) ProtoMessage

func (*ImportCfg_Gitiles) ProtoMessage()

func (*ImportCfg_Gitiles) ProtoReflect

func (x *ImportCfg_Gitiles) ProtoReflect() protoreflect.Message

func (*ImportCfg_Gitiles) Reset

func (x *ImportCfg_Gitiles) Reset()

func (*ImportCfg_Gitiles) String

func (x *ImportCfg_Gitiles) String() string

type Location

type Location struct {

	// Types that are assignable to Location:
	//
	//	*Location_GitilesLocation
	Location isLocation_Location `protobuf_oneof:"location"`
	// contains filtered or unexported fields
}

Location is the source repo location where the configuration stores. Currently, it only supports Gitiles repos. TODO(crbug.com/1446839): replace Project.gitiles_location field later.

func (*Location) Descriptor deprecated

func (*Location) Descriptor() ([]byte, []int)

Deprecated: Use Location.ProtoReflect.Descriptor instead.

func (*Location) GetGitilesLocation

func (x *Location) GetGitilesLocation() *GitilesLocation

func (*Location) GetLocation

func (m *Location) GetLocation() isLocation_Location

func (*Location) ProtoMessage

func (*Location) ProtoMessage()

func (*Location) ProtoReflect

func (x *Location) ProtoReflect() protoreflect.Message

func (*Location) Reset

func (x *Location) Reset()

func (*Location) String

func (x *Location) String() string

type Location_GitilesLocation

type Location_GitilesLocation struct {
	GitilesLocation *GitilesLocation `protobuf:"bytes,1,opt,name=gitiles_location,json=gitilesLocation,proto3,oneof"`
}

type Project

type Project struct {

	// Globally unique id of the project.
	//
	// The id MUST contain only lowercase alphanumeric characters and hyphens.
	// The id MUST NOT be empty or exceed 30 characters.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Where to import "projects/<id>" config set from.
	//
	// Types that are assignable to Location:
	//
	//	*Project_GitilesLocation
	Location isProject_Location `protobuf_oneof:"location"`
	// IdentityConfig determines what identities are used when LUCI acts on
	// behalf of the project towards external services.
	IdentityConfig *IdentityConfig `protobuf:"bytes,3,opt,name=identity_config,json=identityConfig,proto3" json:"identity_config,omitempty"`
	// The Team `name` of the Team which owns this Project.
	//
	// Note that the same Team may be indicated for multiple different Projects.
	OwnedBy string `protobuf:"bytes,5,opt,name=owned_by,json=ownedBy,proto3" json:"owned_by,omitempty"`
	// contains filtered or unexported fields
}

A tenant of a service. Defined in projects.cfg.

func (*Project) Descriptor deprecated

func (*Project) Descriptor() ([]byte, []int)

Deprecated: Use Project.ProtoReflect.Descriptor instead.

func (*Project) GetGitilesLocation

func (x *Project) GetGitilesLocation() *GitilesLocation

func (*Project) GetId

func (x *Project) GetId() string

func (*Project) GetIdentityConfig

func (x *Project) GetIdentityConfig() *IdentityConfig

func (*Project) GetLocation

func (m *Project) GetLocation() isProject_Location

func (*Project) GetOwnedBy

func (x *Project) GetOwnedBy() string

func (*Project) ProtoMessage

func (*Project) ProtoMessage()

func (*Project) ProtoReflect

func (x *Project) ProtoReflect() protoreflect.Message

func (*Project) Reset

func (x *Project) Reset()

func (*Project) String

func (x *Project) String() string

type ProjectCfg

type ProjectCfg struct {

	// Full name of the project.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// A list of identities that have read-only access to the project.
	//
	// An element is one of:
	// * "group:<group>", where group is defined on auth server.
	// * "<email>"
	// * "<kind>:<value>" (for non-email identities)
	//
	// If not specified, only admins and trusted services have access.
	// Talk to admins to determine the group name appropriate for your project.
	Access []string `protobuf:"bytes,2,rep,name=access,proto3" json:"access,omitempty"`
	// Populated when the config is generated by `lucicfg`.
	//
	// Contains information about how the config was generated.
	Lucicfg *GeneratorMetadata `protobuf:"bytes,3,opt,name=lucicfg,proto3" json:"lucicfg,omitempty"`
	// contains filtered or unexported fields
}

Schema for project.cfg

func (*ProjectCfg) Descriptor deprecated

func (*ProjectCfg) Descriptor() ([]byte, []int)

Deprecated: Use ProjectCfg.ProtoReflect.Descriptor instead.

func (*ProjectCfg) GetAccess

func (x *ProjectCfg) GetAccess() []string

func (*ProjectCfg) GetLucicfg

func (x *ProjectCfg) GetLucicfg() *GeneratorMetadata

func (*ProjectCfg) GetName

func (x *ProjectCfg) GetName() string

func (*ProjectCfg) ProtoMessage

func (*ProjectCfg) ProtoMessage()

func (*ProjectCfg) ProtoReflect

func (x *ProjectCfg) ProtoReflect() protoreflect.Message

func (*ProjectCfg) Reset

func (x *ProjectCfg) Reset()

func (*ProjectCfg) String

func (x *ProjectCfg) String() string

type Project_GitilesLocation

type Project_GitilesLocation struct {
	GitilesLocation *GitilesLocation `protobuf:"bytes,4,opt,name=gitiles_location,json=gitilesLocation,proto3,oneof"`
}

type ProjectsCfg

type ProjectsCfg struct {

	// All projects served by this instance of LUCI.
	Projects []*Project `protobuf:"bytes,1,rep,name=projects,proto3" json:"projects,omitempty"`
	// All teams which own projects.
	Teams []*Team `protobuf:"bytes,2,rep,name=teams,proto3" json:"teams,omitempty"`
	// contains filtered or unexported fields
}

Schema of projects.cfg file. Represents LUCI tenants registry.

func (*ProjectsCfg) Descriptor deprecated

func (*ProjectsCfg) Descriptor() ([]byte, []int)

Deprecated: Use ProjectsCfg.ProtoReflect.Descriptor instead.

func (*ProjectsCfg) GetProjects

func (x *ProjectsCfg) GetProjects() []*Project

func (*ProjectsCfg) GetTeams

func (x *ProjectsCfg) GetTeams() []*Team

func (*ProjectsCfg) ProtoMessage

func (*ProjectsCfg) ProtoMessage()

func (*ProjectsCfg) ProtoReflect

func (x *ProjectsCfg) ProtoReflect() protoreflect.Message

func (*ProjectsCfg) Reset

func (x *ProjectsCfg) Reset()

func (*ProjectsCfg) String

func (x *ProjectsCfg) String() string

type RefsCfg

type RefsCfg struct {

	// List of refs that have configuration files and need to be fetched into
	// luci-config. Refs are accessible through get_refs() API endpoint.
	// A CI service can read all refs of all projects and build them.
	Refs []*RefsCfg_Ref `protobuf:"bytes,1,rep,name=refs,proto3" json:"refs,omitempty"`
	// contains filtered or unexported fields
}

DEPRECATED per crbug/924803. DO NOT USE in your project. Contact luci-team@ if you have a need for this.

Schema of refs.cfg.

func (*RefsCfg) Descriptor deprecated

func (*RefsCfg) Descriptor() ([]byte, []int)

Deprecated: Use RefsCfg.ProtoReflect.Descriptor instead.

func (*RefsCfg) GetRefs

func (x *RefsCfg) GetRefs() []*RefsCfg_Ref

func (*RefsCfg) ProtoMessage

func (*RefsCfg) ProtoMessage()

func (*RefsCfg) ProtoReflect

func (x *RefsCfg) ProtoReflect() protoreflect.Message

func (*RefsCfg) Reset

func (x *RefsCfg) Reset()

func (*RefsCfg) String

func (x *RefsCfg) String() string

type RefsCfg_Ref

type RefsCfg_Ref struct {

	// Name of the ref. Must start with "refs/".
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Path to config directory for the ref. Defaults to "infra/config".
	ConfigPath string `protobuf:"bytes,3,opt,name=config_path,json=configPath,proto3" json:"config_path,omitempty"`
	// contains filtered or unexported fields
}

func (*RefsCfg_Ref) Descriptor deprecated

func (*RefsCfg_Ref) Descriptor() ([]byte, []int)

Deprecated: Use RefsCfg_Ref.ProtoReflect.Descriptor instead.

func (*RefsCfg_Ref) GetConfigPath

func (x *RefsCfg_Ref) GetConfigPath() string

func (*RefsCfg_Ref) GetName

func (x *RefsCfg_Ref) GetName() string

func (*RefsCfg_Ref) ProtoMessage

func (*RefsCfg_Ref) ProtoMessage()

func (*RefsCfg_Ref) ProtoReflect

func (x *RefsCfg_Ref) ProtoReflect() protoreflect.Message

func (*RefsCfg_Ref) Reset

func (x *RefsCfg_Ref) Reset()

func (*RefsCfg_Ref) String

func (x *RefsCfg_Ref) String() string

type SchemasCfg

type SchemasCfg struct {

	// List of known schemas. They are available at /schemas/<name> as a short
	// mutable link.
	Schemas []*SchemasCfg_Schema `protobuf:"bytes,1,rep,name=schemas,proto3" json:"schemas,omitempty"`
	// contains filtered or unexported fields
}

Schema of schemas.cfg

func (*SchemasCfg) Descriptor deprecated

func (*SchemasCfg) Descriptor() ([]byte, []int)

Deprecated: Use SchemasCfg.ProtoReflect.Descriptor instead.

func (*SchemasCfg) GetSchemas

func (x *SchemasCfg) GetSchemas() []*SchemasCfg_Schema

func (*SchemasCfg) ProtoMessage

func (*SchemasCfg) ProtoMessage()

func (*SchemasCfg) ProtoReflect

func (x *SchemasCfg) ProtoReflect() protoreflect.Message

func (*SchemasCfg) Reset

func (x *SchemasCfg) Reset()

func (*SchemasCfg) String

func (x *SchemasCfg) String() string

type SchemasCfg_Schema

type SchemasCfg_Schema struct {

	// Name of schema.
	// For service configs, "<config_set>:<path>"
	// For project configs, "projects:<path>"
	// For ref configs, "projects/refs:<path>"
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// URL to the schema definition, e.g. to a .proto file in a repository.
	Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
	// contains filtered or unexported fields
}

func (*SchemasCfg_Schema) Descriptor deprecated

func (*SchemasCfg_Schema) Descriptor() ([]byte, []int)

Deprecated: Use SchemasCfg_Schema.ProtoReflect.Descriptor instead.

func (*SchemasCfg_Schema) GetName

func (x *SchemasCfg_Schema) GetName() string

func (*SchemasCfg_Schema) GetUrl

func (x *SchemasCfg_Schema) GetUrl() string

func (*SchemasCfg_Schema) ProtoMessage

func (*SchemasCfg_Schema) ProtoMessage()

func (*SchemasCfg_Schema) ProtoReflect

func (x *SchemasCfg_Schema) ProtoReflect() protoreflect.Message

func (*SchemasCfg_Schema) Reset

func (x *SchemasCfg_Schema) Reset()

func (*SchemasCfg_Schema) String

func (x *SchemasCfg_Schema) String() string

type Service

type Service struct {

	// Globally unique id of the service. Required.
	// Used in "services/<service_id>" config set name.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Email addresses of responsible and point-of-contacts for the service.
	Owners []string `protobuf:"bytes,2,rep,name=owners,proto3" json:"owners,omitempty"`
	// An HTTPS endpoint that returns JSON-encoded ServiceDynamicMetadata in body.
	//
	// TODO: crbug/1232565 - Deprecate this field in favor of `hostname`
	// after the new LUCI Config service has launched.
	MetadataUrl string `protobuf:"bytes,4,opt,name=metadata_url,json=metadataUrl,proto3" json:"metadata_url,omitempty"`
	// The hostname of the service.
	//
	// LUCI Config will call this host to interact with `config.Consumer`
	// prpc Service.
	Hostname string `protobuf:"bytes,7,opt,name=hostname,proto3" json:"hostname,omitempty"`
	// A list of identities that have access to this service's configs.
	// of:
	// * "group:<group>", where group is defined on auth server.
	// * "<email>"
	// * "<kind>:<value>" (for non-email identities)
	//
	// If not specified, only admins and trusted services have access.
	Access []string `protobuf:"bytes,5,rep,name=access,proto3" json:"access,omitempty"`
	// If set, use JWT auth in requests to services. This is usually used for
	// Cloud Endpoints v2 support.
	JwtAuth *Service_JWTAuth `protobuf:"bytes,6,opt,name=jwt_auth,json=jwtAuth,proto3" json:"jwt_auth,omitempty"`
	// contains filtered or unexported fields
}

Describes one LUCI service.

func (*Service) Descriptor deprecated

func (*Service) Descriptor() ([]byte, []int)

Deprecated: Use Service.ProtoReflect.Descriptor instead.

func (*Service) GetAccess

func (x *Service) GetAccess() []string

func (*Service) GetHostname

func (x *Service) GetHostname() string

func (*Service) GetId

func (x *Service) GetId() string

func (*Service) GetJwtAuth

func (x *Service) GetJwtAuth() *Service_JWTAuth

func (*Service) GetMetadataUrl

func (x *Service) GetMetadataUrl() string

func (*Service) GetOwners

func (x *Service) GetOwners() []string

func (*Service) ProtoMessage

func (*Service) ProtoMessage()

func (*Service) ProtoReflect

func (x *Service) ProtoReflect() protoreflect.Message

func (*Service) Reset

func (x *Service) Reset()

func (*Service) String

func (x *Service) String() string

type ServiceDynamicMetadata

type ServiceDynamicMetadata struct {

	// Format version. Supported versions: 1.0.
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// What configs this service can validate and how to validate them.
	Validation *Validator `protobuf:"bytes,2,opt,name=validation,proto3" json:"validation,omitempty"`
	// True if the server recognizes "Content-Encoding: gzip" in requests.
	SupportsGzipCompression bool `` /* 133-byte string literal not displayed */
	// contains filtered or unexported fields
}

Machine-generated service metadata, exposed by a service endpoint. Typically implemented by config component, embedded in an app: see appengine/components/components/config/endpoint.py

If you add a field here, also add it to ServiceDynamicMetadata in endpoint.py

func (*ServiceDynamicMetadata) Descriptor deprecated

func (*ServiceDynamicMetadata) Descriptor() ([]byte, []int)

Deprecated: Use ServiceDynamicMetadata.ProtoReflect.Descriptor instead.

func (*ServiceDynamicMetadata) GetSupportsGzipCompression

func (x *ServiceDynamicMetadata) GetSupportsGzipCompression() bool

func (*ServiceDynamicMetadata) GetValidation

func (x *ServiceDynamicMetadata) GetValidation() *Validator

func (*ServiceDynamicMetadata) GetVersion

func (x *ServiceDynamicMetadata) GetVersion() string

func (*ServiceDynamicMetadata) ProtoMessage

func (*ServiceDynamicMetadata) ProtoMessage()

func (*ServiceDynamicMetadata) ProtoReflect

func (x *ServiceDynamicMetadata) ProtoReflect() protoreflect.Message

func (*ServiceDynamicMetadata) Reset

func (x *ServiceDynamicMetadata) Reset()

func (*ServiceDynamicMetadata) String

func (x *ServiceDynamicMetadata) String() string

type ServiceMetadata

type ServiceMetadata struct {

	// Patterns of config files that the service is "interested in".
	//
	// Interested means the service can validate config files on config files
	// changes.
	ConfigPatterns []*ConfigPattern `protobuf:"bytes,1,rep,name=config_patterns,json=configPatterns,proto3" json:"config_patterns,omitempty"`
	// contains filtered or unexported fields
}

ServiceMetadata describes the metadata of a service.

func (*ServiceMetadata) Descriptor deprecated

func (*ServiceMetadata) Descriptor() ([]byte, []int)

Deprecated: Use ServiceMetadata.ProtoReflect.Descriptor instead.

func (*ServiceMetadata) GetConfigPatterns

func (x *ServiceMetadata) GetConfigPatterns() []*ConfigPattern

func (*ServiceMetadata) ProtoMessage

func (*ServiceMetadata) ProtoMessage()

func (*ServiceMetadata) ProtoReflect

func (x *ServiceMetadata) ProtoReflect() protoreflect.Message

func (*ServiceMetadata) Reset

func (x *ServiceMetadata) Reset()

func (*ServiceMetadata) String

func (x *ServiceMetadata) String() string

type Service_JWTAuth

type Service_JWTAuth struct {

	// Value for the 'aud' field in the JSON Web Token claim.
	Audience string `protobuf:"bytes,1,opt,name=audience,proto3" json:"audience,omitempty"`
	// contains filtered or unexported fields
}

func (*Service_JWTAuth) Descriptor deprecated

func (*Service_JWTAuth) Descriptor() ([]byte, []int)

Deprecated: Use Service_JWTAuth.ProtoReflect.Descriptor instead.

func (*Service_JWTAuth) GetAudience

func (x *Service_JWTAuth) GetAudience() string

func (*Service_JWTAuth) ProtoMessage

func (*Service_JWTAuth) ProtoMessage()

func (*Service_JWTAuth) ProtoReflect

func (x *Service_JWTAuth) ProtoReflect() protoreflect.Message

func (*Service_JWTAuth) Reset

func (x *Service_JWTAuth) Reset()

func (*Service_JWTAuth) String

func (x *Service_JWTAuth) String() string

type ServicesCfg

type ServicesCfg struct {

	// A list of all LUCI services. Should be sorted by id.
	Services []*Service `protobuf:"bytes,1,rep,name=services,proto3" json:"services,omitempty"`
	// contains filtered or unexported fields
}

Schema of services.cfg

func (*ServicesCfg) Descriptor deprecated

func (*ServicesCfg) Descriptor() ([]byte, []int)

Deprecated: Use ServicesCfg.ProtoReflect.Descriptor instead.

func (*ServicesCfg) GetServices

func (x *ServicesCfg) GetServices() []*Service

func (*ServicesCfg) ProtoMessage

func (*ServicesCfg) ProtoMessage()

func (*ServicesCfg) ProtoReflect

func (x *ServicesCfg) ProtoReflect() protoreflect.Message

func (*ServicesCfg) Reset

func (x *ServicesCfg) Reset()

func (*ServicesCfg) String

func (x *ServicesCfg) String() string

type Team

type Team struct {

	// The name of this team; Used for the Project.team field, but also may
	// be used in e.g. email as the addressee for maintenance messages, like:
	//
	//	Hello ${Team.name} LUCI maintainers,
	//
	// Examples:
	//
	//	GOOD: "ChOps Foundation"
	//	BAD:  "cft"
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// One or more contact emails for this team.
	//
	// ALL of these email addresses will be used by the LUCI system owners to
	// contact the team with maintenance requests/deprecation notices. For
	// example, if some LUCI functionality is deprecated and needs to be migrated,
	// then an email would be sent to all contacts listed in this field.
	//
	// We recommend setting this to your team's dev-group email.
	MaintenanceContact []string `protobuf:"bytes,2,rep,name=maintenance_contact,json=maintenanceContact,proto3" json:"maintenance_contact,omitempty"`
	// One or more fallback emails for this team.
	//
	// If the LUCI system owners attempt to contact the team via
	// `maintenance_contact` and there's no response, these emails will be
	// CC'd in increasing order until we get in contact with someone.
	//
	// If the LUCI system owners cannot contact anyone in `maintenance_contact` or
	// in `escalation_contact`, we may need to disable the associated LUCI
	// project(s).
	//
	// We recommend setting this to one or two individual people who are
	// responsible for your team's LUCI integration, and finally a
	// wider email group (or groups) than those in maintenance_contact.
	EscalationContact []string `protobuf:"bytes,3,rep,name=escalation_contact,json=escalationContact,proto3" json:"escalation_contact,omitempty"`
	// contains filtered or unexported fields
}

Represents a group of humans who are responsible for one or more LUCI projects.

LUCI system maintainers will use the contact addresses associated with this Team in order to contact that group of humans about maintenance actions which this Team needs to perform in order to keep current with LUCI.

We recommend subscribing to the following mailing lists as well:

  • luci-announce@ - Announcements of new LUCI functionality.
  • luci-outages@ - Announcements of LUCI system outages/downtime.
  • luci-releases@ - (noisy) Announcements of new LUCI service deployments.

We also recommend directing LUCI questions/discussion to:

  • go/luci-users-chat - Chatroom open to all users of LUCI. Good place to ask/answer questions about the use of LUCI services.
  • go/luci-dev-chat - Chatroom for developing LUCI services, or systems which tightly interact with LUCI services.
  • luci-eng@ - Email list for LUCI related questions.

Bugs should be filed to:

  • go/bug-a-trooper - General bug reports related to the operation of specific builders/machines which happen to run in LUCI. This is a general Chrome-area bug and will be triaged (usually within 24h).
  • go/luci-bug - Bug reports/feature requests for LUCI services.
  • go/luci-trooper-bug - Bug reports against LUCI services which need quick attention from a trooper.
  • oncall/chrome-ops-foundation - Oncall rotation for ChOps Foundation (primary responders for LUCI service outages). It's a good idea to check go/luci-users-chat and luci-outages@ too.

For some migrations, LUCI system maintainers may need to send CLs against your project's configuration. The best way to enable this is to maintain an OWNERS file in your project configuration repo, otherwise we'll have to start guessing at reviewers :).

To allow LUCI system maintainers to send CLs, please ensure that eng@ has the ability to read+send CLs to your configuration repo. If we're unable to send a CL (e.g. the repo is super-secret), we'll instead send an email for you to apply the change yourself.

func (*Team) Descriptor deprecated

func (*Team) Descriptor() ([]byte, []int)

Deprecated: Use Team.ProtoReflect.Descriptor instead.

func (*Team) GetEscalationContact

func (x *Team) GetEscalationContact() []string

func (*Team) GetMaintenanceContact

func (x *Team) GetMaintenanceContact() []string

func (*Team) GetName

func (x *Team) GetName() string

func (*Team) ProtoMessage

func (*Team) ProtoMessage()

func (*Team) ProtoReflect

func (x *Team) ProtoReflect() protoreflect.Message

func (*Team) Reset

func (x *Team) Reset()

func (*Team) String

func (x *Team) String() string

type UnimplementedConsumerServer

type UnimplementedConsumerServer struct{}

UnimplementedConsumerServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedConsumerServer) GetMetadata

func (UnimplementedConsumerServer) ValidateConfigs

type UnsafeConsumerServer

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

UnsafeConsumerServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ConsumerServer will result in compilation errors.

type ValidateConfigsRequest

type ValidateConfigsRequest struct {

	// Config set of the config files to validate.
	ConfigSet string `protobuf:"bytes,1,opt,name=config_set,json=configSet,proto3" json:"config_set,omitempty"`
	// Config files to validate.
	Files *ValidateConfigsRequest_Files `protobuf:"bytes,2,opt,name=files,proto3" json:"files,omitempty"`
	// contains filtered or unexported fields
}

ValidateConfigsRequest is the request to ValidateConfigs rpc.

func (*ValidateConfigsRequest) Descriptor deprecated

func (*ValidateConfigsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ValidateConfigsRequest.ProtoReflect.Descriptor instead.

func (*ValidateConfigsRequest) GetConfigSet

func (x *ValidateConfigsRequest) GetConfigSet() string

func (*ValidateConfigsRequest) GetFiles

func (*ValidateConfigsRequest) ProtoMessage

func (*ValidateConfigsRequest) ProtoMessage()

func (*ValidateConfigsRequest) ProtoReflect

func (x *ValidateConfigsRequest) ProtoReflect() protoreflect.Message

func (*ValidateConfigsRequest) Reset

func (x *ValidateConfigsRequest) Reset()

func (*ValidateConfigsRequest) String

func (x *ValidateConfigsRequest) String() string

type ValidateConfigsRequest_File

type ValidateConfigsRequest_File struct {

	// path of the config file relative to root config directory.
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// Types that are assignable to Content:
	//
	//	*ValidateConfigsRequest_File_RawContent
	//	*ValidateConfigsRequest_File_SignedUrl
	Content isValidateConfigsRequest_File_Content `protobuf_oneof:"content"`
	// contains filtered or unexported fields
}

File represents a config file to validate.

func (*ValidateConfigsRequest_File) Descriptor deprecated

func (*ValidateConfigsRequest_File) Descriptor() ([]byte, []int)

Deprecated: Use ValidateConfigsRequest_File.ProtoReflect.Descriptor instead.

func (*ValidateConfigsRequest_File) GetContent

func (m *ValidateConfigsRequest_File) GetContent() isValidateConfigsRequest_File_Content

func (*ValidateConfigsRequest_File) GetPath

func (x *ValidateConfigsRequest_File) GetPath() string

func (*ValidateConfigsRequest_File) GetRawContent

func (x *ValidateConfigsRequest_File) GetRawContent() []byte

func (*ValidateConfigsRequest_File) GetSignedUrl

func (x *ValidateConfigsRequest_File) GetSignedUrl() string

func (*ValidateConfigsRequest_File) ProtoMessage

func (*ValidateConfigsRequest_File) ProtoMessage()

func (*ValidateConfigsRequest_File) ProtoReflect

func (*ValidateConfigsRequest_File) Reset

func (x *ValidateConfigsRequest_File) Reset()

func (*ValidateConfigsRequest_File) String

func (x *ValidateConfigsRequest_File) String() string

type ValidateConfigsRequest_File_RawContent

type ValidateConfigsRequest_File_RawContent struct {
	// RawContent is the raw byte content of the config file.
	RawContent []byte `protobuf:"bytes,2,opt,name=raw_content,json=rawContent,proto3,oneof"`
}

type ValidateConfigsRequest_File_SignedUrl

type ValidateConfigsRequest_File_SignedUrl struct {
	// SignedURL is a GCS singed url to download full config content.
	//
	// The service SHOULD provide "Accept-Encoding: gzip" header to minimize
	// the data on the wire and the service should also be able to
	// handle the uncompressed data based on the presence of
	// "Content-Encoding" header.
	// The signed url will expire shortly. Currently LUCI Config sets the
	// expiration time to 10 min.
	SignedUrl string `protobuf:"bytes,3,opt,name=signed_url,json=signedUrl,proto3,oneof"`
}

type ValidateConfigsRequest_Files

type ValidateConfigsRequest_Files struct {
	Files []*ValidateConfigsRequest_File `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"`
	// contains filtered or unexported fields
}

func (*ValidateConfigsRequest_Files) Descriptor deprecated

func (*ValidateConfigsRequest_Files) Descriptor() ([]byte, []int)

Deprecated: Use ValidateConfigsRequest_Files.ProtoReflect.Descriptor instead.

func (*ValidateConfigsRequest_Files) GetFiles

func (*ValidateConfigsRequest_Files) ProtoMessage

func (*ValidateConfigsRequest_Files) ProtoMessage()

func (*ValidateConfigsRequest_Files) ProtoReflect

func (*ValidateConfigsRequest_Files) Reset

func (x *ValidateConfigsRequest_Files) Reset()

func (*ValidateConfigsRequest_Files) String

type ValidationRequestMessage

type ValidationRequestMessage struct {

	// Config set of the config file to validate.
	ConfigSet string `protobuf:"bytes,1,opt,name=config_set,json=configSet,proto3" json:"config_set,omitempty"`
	// Path of the config file to validate.
	Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	// Contents of the file.
	Content []byte `protobuf:"bytes,3,opt,name=content,proto3" json:"content,omitempty"`
	// contains filtered or unexported fields
}

This message is used only in JSON form. It is sent as request body to an external validation endpoint in order to validate a config.

func (*ValidationRequestMessage) Descriptor deprecated

func (*ValidationRequestMessage) Descriptor() ([]byte, []int)

Deprecated: Use ValidationRequestMessage.ProtoReflect.Descriptor instead.

func (*ValidationRequestMessage) GetConfigSet

func (x *ValidationRequestMessage) GetConfigSet() string

func (*ValidationRequestMessage) GetContent

func (x *ValidationRequestMessage) GetContent() []byte

func (*ValidationRequestMessage) GetPath

func (x *ValidationRequestMessage) GetPath() string

func (*ValidationRequestMessage) ProtoMessage

func (*ValidationRequestMessage) ProtoMessage()

func (*ValidationRequestMessage) ProtoReflect

func (x *ValidationRequestMessage) ProtoReflect() protoreflect.Message

func (*ValidationRequestMessage) Reset

func (x *ValidationRequestMessage) Reset()

func (*ValidationRequestMessage) String

func (x *ValidationRequestMessage) String() string

type ValidationResponseMessage

type ValidationResponseMessage struct {

	// Errors, warnings and other information found during validation.
	// If at least one error is found, the config is considered invalid.
	Messages []*ValidationResponseMessage_Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	// contains filtered or unexported fields
}

This message is used only in JSON form. It is expected from an external validation endpoint that validates a config.

func (*ValidationResponseMessage) Descriptor deprecated

func (*ValidationResponseMessage) Descriptor() ([]byte, []int)

Deprecated: Use ValidationResponseMessage.ProtoReflect.Descriptor instead.

func (*ValidationResponseMessage) GetMessages

func (*ValidationResponseMessage) ProtoMessage

func (*ValidationResponseMessage) ProtoMessage()

func (*ValidationResponseMessage) ProtoReflect

func (*ValidationResponseMessage) Reset

func (x *ValidationResponseMessage) Reset()

func (*ValidationResponseMessage) String

func (x *ValidationResponseMessage) String() string

type ValidationResponseMessage_Message

type ValidationResponseMessage_Message struct {

	// Path of the config file that has an error.
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// If an error, a config is considered invalid. Defaults to INFO.
	Severity ValidationResponseMessage_Severity `protobuf:"varint,2,opt,name=severity,proto3,enum=config.ValidationResponseMessage_Severity" json:"severity,omitempty"`
	// Textual representation of the message.
	Text string `protobuf:"bytes,3,opt,name=text,proto3" json:"text,omitempty"`
	// contains filtered or unexported fields
}

A message that explains why a config is valid or not.

func (*ValidationResponseMessage_Message) Descriptor deprecated

func (*ValidationResponseMessage_Message) Descriptor() ([]byte, []int)

Deprecated: Use ValidationResponseMessage_Message.ProtoReflect.Descriptor instead.

func (*ValidationResponseMessage_Message) GetPath

func (*ValidationResponseMessage_Message) GetSeverity

func (*ValidationResponseMessage_Message) GetText

func (*ValidationResponseMessage_Message) ProtoMessage

func (*ValidationResponseMessage_Message) ProtoMessage()

func (*ValidationResponseMessage_Message) ProtoReflect

func (*ValidationResponseMessage_Message) Reset

func (*ValidationResponseMessage_Message) String

type ValidationResponseMessage_Severity

type ValidationResponseMessage_Severity int32

Severity of a validation response message. In JSON encoded as a string.

const (
	ValidationResponseMessage_UNKNOWN  ValidationResponseMessage_Severity = 0
	ValidationResponseMessage_DEBUG    ValidationResponseMessage_Severity = 10
	ValidationResponseMessage_INFO     ValidationResponseMessage_Severity = 20
	ValidationResponseMessage_WARNING  ValidationResponseMessage_Severity = 30
	ValidationResponseMessage_ERROR    ValidationResponseMessage_Severity = 40
	ValidationResponseMessage_CRITICAL ValidationResponseMessage_Severity = 50
)

func (ValidationResponseMessage_Severity) Descriptor

func (ValidationResponseMessage_Severity) Enum

func (ValidationResponseMessage_Severity) EnumDescriptor deprecated

func (ValidationResponseMessage_Severity) EnumDescriptor() ([]byte, []int)

Deprecated: Use ValidationResponseMessage_Severity.Descriptor instead.

func (ValidationResponseMessage_Severity) Number

func (ValidationResponseMessage_Severity) String

func (ValidationResponseMessage_Severity) Type

type ValidationResult

type ValidationResult struct {

	// Errors, warnings and other information found during validation.
	// If at least one error is found, the config is considered invalid.
	Messages []*ValidationResult_Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	// contains filtered or unexported fields
}

ValidationResult is the result of validating configs.

func (*ValidationResult) Descriptor deprecated

func (*ValidationResult) Descriptor() ([]byte, []int)

Deprecated: Use ValidationResult.ProtoReflect.Descriptor instead.

func (*ValidationResult) GetMessages

func (x *ValidationResult) GetMessages() []*ValidationResult_Message

func (*ValidationResult) ProtoMessage

func (*ValidationResult) ProtoMessage()

func (*ValidationResult) ProtoReflect

func (x *ValidationResult) ProtoReflect() protoreflect.Message

func (*ValidationResult) Reset

func (x *ValidationResult) Reset()

func (*ValidationResult) String

func (x *ValidationResult) String() string

type ValidationResult_Message

type ValidationResult_Message struct {

	// Path of the config file that has an error.
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// If an error, a config is considered invalid. Defaults to INFO.
	Severity ValidationResult_Severity `protobuf:"varint,2,opt,name=severity,proto3,enum=config.ValidationResult_Severity" json:"severity,omitempty"`
	// Textual representation of the message.
	Text string `protobuf:"bytes,3,opt,name=text,proto3" json:"text,omitempty"`
	// contains filtered or unexported fields
}

A message that explains why a config is valid or not.

func (*ValidationResult_Message) Descriptor deprecated

func (*ValidationResult_Message) Descriptor() ([]byte, []int)

Deprecated: Use ValidationResult_Message.ProtoReflect.Descriptor instead.

func (*ValidationResult_Message) GetPath

func (x *ValidationResult_Message) GetPath() string

func (*ValidationResult_Message) GetSeverity

func (*ValidationResult_Message) GetText

func (x *ValidationResult_Message) GetText() string

func (*ValidationResult_Message) ProtoMessage

func (*ValidationResult_Message) ProtoMessage()

func (*ValidationResult_Message) ProtoReflect

func (x *ValidationResult_Message) ProtoReflect() protoreflect.Message

func (*ValidationResult_Message) Reset

func (x *ValidationResult_Message) Reset()

func (*ValidationResult_Message) String

func (x *ValidationResult_Message) String() string

type ValidationResult_Severity

type ValidationResult_Severity int32

Severity of a validation response message.

const (
	ValidationResult_UNKNOWN  ValidationResult_Severity = 0
	ValidationResult_DEBUG    ValidationResult_Severity = 10
	ValidationResult_INFO     ValidationResult_Severity = 20
	ValidationResult_WARNING  ValidationResult_Severity = 30
	ValidationResult_ERROR    ValidationResult_Severity = 40
	ValidationResult_CRITICAL ValidationResult_Severity = 50
)

func (ValidationResult_Severity) Descriptor

func (ValidationResult_Severity) Enum

func (ValidationResult_Severity) EnumDescriptor deprecated

func (ValidationResult_Severity) EnumDescriptor() ([]byte, []int)

Deprecated: Use ValidationResult_Severity.Descriptor instead.

func (ValidationResult_Severity) Number

func (ValidationResult_Severity) String

func (x ValidationResult_Severity) String() string

func (ValidationResult_Severity) Type

type Validator

type Validator struct {

	// A list of configuration patterns that this validator can validate.
	Patterns []*ConfigPattern `protobuf:"bytes,1,rep,name=patterns,proto3" json:"patterns,omitempty"`
	// URL of a validation endpoint. The config service will send an HTTP POST
	// request to the endpoint, where body is JSON-encoded
	// ValidationRequestMessage. The endpoint is expected to respond with
	// HTTP status 200 and JSON-encoded ValidationResponseMessage.
	Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
	// contains filtered or unexported fields
}

Describes what configuration can be validated and how to validate them.

func (*Validator) Descriptor deprecated

func (*Validator) Descriptor() ([]byte, []int)

Deprecated: Use Validator.ProtoReflect.Descriptor instead.

func (*Validator) GetPatterns

func (x *Validator) GetPatterns() []*ConfigPattern

func (*Validator) GetUrl

func (x *Validator) GetUrl() string

func (*Validator) ProtoMessage

func (*Validator) ProtoMessage()

func (*Validator) ProtoReflect

func (x *Validator) ProtoReflect() protoreflect.Message

func (*Validator) Reset

func (x *Validator) Reset()

func (*Validator) String

func (x *Validator) String() string

Jump to

Keyboard shortcuts

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