release_config: container is a repeated string field
Container is a string, and a flag can be in more than one container. Bug: 328495189 Test: manual Change-Id: I5a2a9855532027584d2b67f63f1b9584fce3d8d9
This commit is contained in:
@@ -102,10 +102,13 @@ func ProcessBuildFlags(dir string, namespaceMap map[string]string) error {
|
||||
description = ""
|
||||
continue
|
||||
}
|
||||
declValue := matches[declRegexp.SubexpIndex("value")]
|
||||
declName := matches[declRegexp.SubexpIndex("name")]
|
||||
container := rc_proto.Container(rc_proto.Container_value[matches[declRegexp.SubexpIndex("container")]])
|
||||
declValue := matches[declRegexp.SubexpIndex("value")]
|
||||
description = strings.TrimSpace(description)
|
||||
containers := []string{strings.ToLower(matches[declRegexp.SubexpIndex("container")])}
|
||||
if containers[0] == "all" {
|
||||
containers = []string{"product", "system", "system_ext", "vendor"}
|
||||
}
|
||||
var namespace string
|
||||
var ok bool
|
||||
if namespace, ok = namespaceMap[declName]; !ok {
|
||||
@@ -115,7 +118,7 @@ func ProcessBuildFlags(dir string, namespaceMap map[string]string) error {
|
||||
Name: proto.String(declName),
|
||||
Namespace: proto.String(namespace),
|
||||
Description: proto.String(description),
|
||||
Container: &container,
|
||||
Containers: containers,
|
||||
}
|
||||
description = ""
|
||||
// Most build flags are `workflow: PREBUILT`.
|
||||
@@ -213,6 +216,12 @@ func ProcessBuildConfigs(dir, name string, paths []string, releaseProto *rc_prot
|
||||
return err
|
||||
}
|
||||
|
||||
var (
|
||||
allContainers = func() []string {
|
||||
return []string{"product", "system", "system_ext", "vendor"}
|
||||
}()
|
||||
)
|
||||
|
||||
func ProcessReleaseConfigMap(dir string, descriptionMap map[string]string) error {
|
||||
path := filepath.Join(dir, "release_config_map.mk")
|
||||
if _, err := os.Stat(path); err != nil {
|
||||
@@ -235,16 +244,16 @@ func ProcessReleaseConfigMap(dir string, descriptionMap map[string]string) error
|
||||
return err
|
||||
}
|
||||
cleanDir := strings.TrimLeft(dir, "../")
|
||||
var defaultContainer rc_proto.Container
|
||||
var defaultContainers []string
|
||||
switch {
|
||||
case strings.HasPrefix(cleanDir, "build/") || cleanDir == "vendor/google_shared/build":
|
||||
defaultContainer = rc_proto.Container(rc_proto.Container_ALL)
|
||||
defaultContainers = allContainers
|
||||
case cleanDir == "vendor/google/release":
|
||||
defaultContainer = rc_proto.Container(rc_proto.Container_ALL)
|
||||
defaultContainers = allContainers
|
||||
default:
|
||||
defaultContainer = rc_proto.Container(rc_proto.Container_VENDOR)
|
||||
defaultContainers = []string{"vendor"}
|
||||
}
|
||||
releaseConfigMap := &rc_proto.ReleaseConfigMap{DefaultContainer: &defaultContainer}
|
||||
releaseConfigMap := &rc_proto.ReleaseConfigMap{DefaultContainers: defaultContainers}
|
||||
// If we find a description for the directory, include it.
|
||||
if description, ok := descriptionMap[cleanDir]; ok {
|
||||
releaseConfigMap.Description = proto.String(description)
|
||||
|
@@ -109,23 +109,17 @@ func (config *ReleaseConfig) GenerateReleaseConfig(configs *ReleaseConfigs) erro
|
||||
config.FlagArtifacts = configs.FlagArtifacts.Clone()
|
||||
// Add RELEASE_ACONFIG_VALUE_SETS
|
||||
workflowManual := rc_proto.Workflow(rc_proto.Workflow_MANUAL)
|
||||
container := rc_proto.Container(rc_proto.Container_ALL)
|
||||
releaseAconfigValueSets := FlagArtifact{
|
||||
FlagDeclaration: &rc_proto.FlagDeclaration{
|
||||
Name: proto.String("RELEASE_ACONFIG_VALUE_SETS"),
|
||||
Namespace: proto.String("android_UNKNOWN"),
|
||||
Description: proto.String("Aconfig value sets assembled by release-config"),
|
||||
Workflow: &workflowManual,
|
||||
Container: &container,
|
||||
Value: &rc_proto.Value{Val: &rc_proto.Value_StringValue{""}},
|
||||
Containers: []string{"system", "system_ext", "product", "vendor"},
|
||||
Value: &rc_proto.Value{Val: &rc_proto.Value_UnspecifiedValue{false}},
|
||||
},
|
||||
DeclarationIndex: -1,
|
||||
Traces: []*rc_proto.Tracepoint{
|
||||
&rc_proto.Tracepoint{
|
||||
Source: proto.String("$release-config"),
|
||||
Value: &rc_proto.Value{Val: &rc_proto.Value_StringValue{""}},
|
||||
},
|
||||
},
|
||||
Traces: []*rc_proto.Tracepoint{},
|
||||
}
|
||||
config.FlagArtifacts["RELEASE_ACONFIG_VALUE_SETS"] = &releaseAconfigValueSets
|
||||
|
||||
@@ -163,22 +157,22 @@ func (config *ReleaseConfig) GenerateReleaseConfig(configs *ReleaseConfigs) erro
|
||||
}
|
||||
myDirsMap := make(map[int]bool)
|
||||
for _, contrib := range contributionsToApply {
|
||||
if len(contrib.proto.AconfigValueSets) > 0 {
|
||||
contribAconfigValueSets := []string{}
|
||||
for _, v := range contrib.proto.AconfigValueSets {
|
||||
if _, ok := myAconfigValueSetsMap[v]; !ok {
|
||||
contribAconfigValueSets = append(contribAconfigValueSets, v)
|
||||
myAconfigValueSetsMap[v] = true
|
||||
}
|
||||
contribAconfigValueSets := []string{}
|
||||
// Gather the aconfig_value_sets from this contribution that are not already in the list.
|
||||
for _, v := range contrib.proto.AconfigValueSets {
|
||||
if _, ok := myAconfigValueSetsMap[v]; !ok {
|
||||
contribAconfigValueSets = append(contribAconfigValueSets, v)
|
||||
myAconfigValueSetsMap[v] = true
|
||||
}
|
||||
myAconfigValueSets = append(myAconfigValueSets, contribAconfigValueSets...)
|
||||
releaseAconfigValueSets.Traces = append(
|
||||
releaseAconfigValueSets.Traces,
|
||||
&rc_proto.Tracepoint{
|
||||
Source: proto.String(contrib.path),
|
||||
Value: &rc_proto.Value{Val: &rc_proto.Value_StringValue{strings.Join(contribAconfigValueSets, " ")}},
|
||||
})
|
||||
}
|
||||
myAconfigValueSets = append(myAconfigValueSets, contribAconfigValueSets...)
|
||||
releaseAconfigValueSets.Traces = append(
|
||||
releaseAconfigValueSets.Traces,
|
||||
&rc_proto.Tracepoint{
|
||||
Source: proto.String(contrib.path),
|
||||
Value: &rc_proto.Value{Val: &rc_proto.Value_StringValue{strings.Join(contribAconfigValueSets, " ")}},
|
||||
})
|
||||
|
||||
myDirsMap[contrib.DeclarationIndex] = true
|
||||
for _, value := range contrib.FlagValues {
|
||||
name := *value.proto.Name
|
||||
@@ -214,30 +208,16 @@ func (config *ReleaseConfig) GenerateReleaseConfig(configs *ReleaseConfigs) erro
|
||||
|
||||
// Now build the per-partition artifacts
|
||||
config.PartitionBuildFlags = make(map[string]*rc_proto.FlagArtifacts)
|
||||
addPartitionArtifact := func(container string, artifact *rc_proto.FlagArtifact) {
|
||||
if _, ok := config.PartitionBuildFlags[container]; !ok {
|
||||
config.PartitionBuildFlags[container] = &rc_proto.FlagArtifacts{}
|
||||
}
|
||||
config.PartitionBuildFlags[container].FlagArtifacts = append(config.PartitionBuildFlags[container].FlagArtifacts, artifact)
|
||||
}
|
||||
for _, v := range config.FlagArtifacts {
|
||||
container := strings.ToLower(rc_proto.Container_name[int32(v.FlagDeclaration.GetContainer())])
|
||||
artifact, err := v.MarshalWithoutTraces()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
switch container {
|
||||
case "all":
|
||||
for cVal, cName := range rc_proto.Container_name {
|
||||
// Skip unspecified, and "ALL", but place the flag in the rest.
|
||||
if cVal == 0 || cName == "ALL" {
|
||||
continue
|
||||
}
|
||||
cName = strings.ToLower(cName)
|
||||
addPartitionArtifact(cName, artifact)
|
||||
for _, container := range v.FlagDeclaration.Containers {
|
||||
if _, ok := config.PartitionBuildFlags[container]; !ok {
|
||||
config.PartitionBuildFlags[container] = &rc_proto.FlagArtifacts{}
|
||||
}
|
||||
default:
|
||||
addPartitionArtifact(container, artifact)
|
||||
config.PartitionBuildFlags[container].FlagArtifacts = append(config.PartitionBuildFlags[container].FlagArtifacts, artifact)
|
||||
}
|
||||
}
|
||||
config.ReleaseConfigArtifact = &rc_proto.ReleaseConfigArtifact{
|
||||
|
@@ -118,9 +118,14 @@ func ReleaseConfigMapFactory(protoPath string) (m *ReleaseConfigMap) {
|
||||
|
||||
func (configs *ReleaseConfigs) LoadReleaseConfigMap(path string, ConfigDirIndex int) error {
|
||||
m := ReleaseConfigMapFactory(path)
|
||||
if m.proto.DefaultContainer == nil {
|
||||
if m.proto.DefaultContainers == nil {
|
||||
return fmt.Errorf("Release config map %s lacks default_container", path)
|
||||
}
|
||||
for _, container := range m.proto.DefaultContainers {
|
||||
if !validContainer(container) {
|
||||
return fmt.Errorf("Release config map %s has invalid container %s", path, container)
|
||||
}
|
||||
}
|
||||
dir := filepath.Dir(path)
|
||||
// Record any aliases, checking for duplicates.
|
||||
for _, alias := range m.proto.Aliases {
|
||||
@@ -138,9 +143,16 @@ func (configs *ReleaseConfigs) LoadReleaseConfigMap(path string, ConfigDirIndex
|
||||
err = WalkTextprotoFiles(dir, "flag_declarations", func(path string, d fs.DirEntry, err error) error {
|
||||
flagDeclaration := FlagDeclarationFactory(path)
|
||||
// Container must be specified.
|
||||
if flagDeclaration.Container == nil {
|
||||
flagDeclaration.Container = m.proto.DefaultContainer
|
||||
if flagDeclaration.Containers == nil {
|
||||
flagDeclaration.Containers = m.proto.DefaultContainers
|
||||
} else {
|
||||
for _, container := range flagDeclaration.Containers {
|
||||
if !validContainer(container) {
|
||||
return fmt.Errorf("Flag declaration %s has invalid container %s", path, container)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: once we have namespaces initialized, we can throw an error here.
|
||||
if flagDeclaration.Namespace == nil {
|
||||
flagDeclaration.Namespace = proto.String("android_UNKNOWN")
|
||||
@@ -253,19 +265,12 @@ func (configs *ReleaseConfigs) WriteMakefile(outFile, targetRelease string) erro
|
||||
flag := myFlagArtifacts[name]
|
||||
decl := flag.FlagDeclaration
|
||||
|
||||
// cName := strings.ToLower(rc_proto.Container_name[decl.GetContainer()])
|
||||
cName := strings.ToLower(decl.Container.String())
|
||||
if cName == strings.ToLower(rc_proto.Container_ALL.String()) {
|
||||
partitions["product"] = append(partitions["product"], name)
|
||||
partitions["system"] = append(partitions["system"], name)
|
||||
partitions["system_ext"] = append(partitions["system_ext"], name)
|
||||
partitions["vendor"] = append(partitions["vendor"], name)
|
||||
} else {
|
||||
partitions[cName] = append(partitions[cName], name)
|
||||
for _, container := range decl.Containers {
|
||||
partitions[container] = append(partitions[container], name)
|
||||
}
|
||||
value := MarshalValue(flag.Value)
|
||||
makeVars[name] = value
|
||||
addVar(name, "PARTITIONS", cName)
|
||||
addVar(name, "PARTITIONS", strings.Join(decl.Containers, " "))
|
||||
addVar(name, "DEFAULT", MarshalValue(decl.Value))
|
||||
addVar(name, "VALUE", value)
|
||||
addVar(name, "DECLARED_IN", *flag.Traces[0].Source)
|
||||
|
@@ -20,13 +20,17 @@ import (
|
||||
"io/fs"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"regexp"
|
||||
"strings"
|
||||
|
||||
"google.golang.org/protobuf/encoding/prototext"
|
||||
"google.golang.org/protobuf/proto"
|
||||
)
|
||||
|
||||
var disableWarnings bool
|
||||
var (
|
||||
disableWarnings bool
|
||||
containerRegexp, _ = regexp.Compile("^[a-z][a-z0-9]*([._][a-z][a-z0-9]*)*$")
|
||||
)
|
||||
|
||||
type StringList []string
|
||||
|
||||
@@ -128,6 +132,10 @@ func warnf(format string, args ...any) (n int, err error) {
|
||||
return 0, nil
|
||||
}
|
||||
|
||||
func validContainer(container string) bool {
|
||||
return containerRegexp.MatchString(container)
|
||||
}
|
||||
|
||||
// Returns the default value for release config artifacts.
|
||||
func GetDefaultOutDir() string {
|
||||
outEnv := os.Getenv("OUT_DIR")
|
||||
|
@@ -98,76 +98,6 @@ func (Workflow) EnumDescriptor() ([]byte, []int) {
|
||||
return file_build_flags_src_proto_rawDescGZIP(), []int{0}
|
||||
}
|
||||
|
||||
type Container int32
|
||||
|
||||
const (
|
||||
Container_UNSPECIFIED_container Container = 0
|
||||
// All containers
|
||||
Container_ALL Container = 1
|
||||
// Specific containers
|
||||
Container_PRODUCT Container = 2
|
||||
Container_SYSTEM Container = 3
|
||||
Container_SYSTEM_EXT Container = 4
|
||||
Container_VENDOR Container = 5
|
||||
)
|
||||
|
||||
// Enum value maps for Container.
|
||||
var (
|
||||
Container_name = map[int32]string{
|
||||
0: "UNSPECIFIED_container",
|
||||
1: "ALL",
|
||||
2: "PRODUCT",
|
||||
3: "SYSTEM",
|
||||
4: "SYSTEM_EXT",
|
||||
5: "VENDOR",
|
||||
}
|
||||
Container_value = map[string]int32{
|
||||
"UNSPECIFIED_container": 0,
|
||||
"ALL": 1,
|
||||
"PRODUCT": 2,
|
||||
"SYSTEM": 3,
|
||||
"SYSTEM_EXT": 4,
|
||||
"VENDOR": 5,
|
||||
}
|
||||
)
|
||||
|
||||
func (x Container) Enum() *Container {
|
||||
p := new(Container)
|
||||
*p = x
|
||||
return p
|
||||
}
|
||||
|
||||
func (x Container) String() string {
|
||||
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
||||
}
|
||||
|
||||
func (Container) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_build_flags_src_proto_enumTypes[1].Descriptor()
|
||||
}
|
||||
|
||||
func (Container) Type() protoreflect.EnumType {
|
||||
return &file_build_flags_src_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x Container) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
||||
// Deprecated: Do not use.
|
||||
func (x *Container) UnmarshalJSON(b []byte) error {
|
||||
num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*x = Container(num)
|
||||
return nil
|
||||
}
|
||||
|
||||
// Deprecated: Use Container.Descriptor instead.
|
||||
func (Container) EnumDescriptor() ([]byte, []int) {
|
||||
return file_build_flags_src_proto_rawDescGZIP(), []int{1}
|
||||
}
|
||||
|
||||
type Value struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
@@ -298,7 +228,7 @@ type FlagDeclaration struct {
|
||||
Workflow *Workflow `protobuf:"varint,205,opt,name=workflow,enum=android.release_config_proto.Workflow" json:"workflow,omitempty"`
|
||||
// The container for this flag. This overrides any default container given
|
||||
// in the release_config_map message.
|
||||
Container *Container `protobuf:"varint,206,opt,name=container,enum=android.release_config_proto.Container" json:"container,omitempty"`
|
||||
Containers []string `protobuf:"bytes,206,rep,name=containers" json:"containers,omitempty"`
|
||||
}
|
||||
|
||||
func (x *FlagDeclaration) Reset() {
|
||||
@@ -368,11 +298,11 @@ func (x *FlagDeclaration) GetWorkflow() Workflow {
|
||||
return Workflow_UNSPECIFIED_workflow
|
||||
}
|
||||
|
||||
func (x *FlagDeclaration) GetContainer() Container {
|
||||
if x != nil && x.Container != nil {
|
||||
return *x.Container
|
||||
func (x *FlagDeclaration) GetContainers() []string {
|
||||
if x != nil {
|
||||
return x.Containers
|
||||
}
|
||||
return Container_UNSPECIFIED_container
|
||||
return nil
|
||||
}
|
||||
|
||||
type FlagValue struct {
|
||||
@@ -581,7 +511,7 @@ type ReleaseConfigMap struct {
|
||||
// Description of this map and its intended use.
|
||||
Description *string `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"`
|
||||
// The default container for flags declared here.
|
||||
DefaultContainer *Container `protobuf:"varint,3,opt,name=default_container,json=defaultContainer,enum=android.release_config_proto.Container" json:"default_container,omitempty"`
|
||||
DefaultContainers []string `protobuf:"bytes,3,rep,name=default_containers,json=defaultContainers" json:"default_containers,omitempty"`
|
||||
}
|
||||
|
||||
func (x *ReleaseConfigMap) Reset() {
|
||||
@@ -630,11 +560,11 @@ func (x *ReleaseConfigMap) GetDescription() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *ReleaseConfigMap) GetDefaultContainer() Container {
|
||||
if x != nil && x.DefaultContainer != nil {
|
||||
return *x.DefaultContainer
|
||||
func (x *ReleaseConfigMap) GetDefaultContainers() []string {
|
||||
if x != nil {
|
||||
return x.DefaultContainers
|
||||
}
|
||||
return Container_UNSPECIFIED_container
|
||||
return nil
|
||||
}
|
||||
|
||||
var File_build_flags_src_proto protoreflect.FileDescriptor
|
||||
@@ -653,7 +583,7 @@ var file_build_flags_src_proto_rawDesc = []byte{
|
||||
0x6c, 0x75, 0x65, 0x18, 0xca, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f,
|
||||
0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x08, 0x6f, 0x62, 0x73, 0x6f, 0x6c,
|
||||
0x65, 0x74, 0x65, 0x18, 0xcb, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x08, 0x6f, 0x62,
|
||||
0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x05, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xbd, 0x02,
|
||||
0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x05, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x96, 0x02,
|
||||
0x0a, 0x10, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69,
|
||||
0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
|
||||
@@ -668,59 +598,47 @@ var file_build_flags_src_proto_rawDesc = []byte{
|
||||
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e,
|
||||
0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x52, 0x08, 0x77,
|
||||
0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x12, 0x46, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61,
|
||||
0x69, 0x6e, 0x65, 0x72, 0x18, 0xce, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x61, 0x6e,
|
||||
0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f,
|
||||
0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61,
|
||||
0x69, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4a,
|
||||
0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x06, 0x08, 0xcf, 0x01, 0x10, 0xd0, 0x01, 0x22, 0x79, 0x0a,
|
||||
0x0a, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
|
||||
0x3a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0xc9, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
||||
0x23, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73,
|
||||
0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x76,
|
||||
0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x72,
|
||||
0x65, 0x64, 0x61, 0x63, 0x74, 0x65, 0x64, 0x18, 0xca, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
|
||||
0x72, 0x65, 0x64, 0x61, 0x63, 0x74, 0x65, 0x64, 0x22, 0x6e, 0x0a, 0x0e, 0x72, 0x65, 0x6c, 0x65,
|
||||
0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
|
||||
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a,
|
||||
0x0a, 0x08, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09,
|
||||
0x52, 0x08, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x63,
|
||||
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x73,
|
||||
0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x61, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56,
|
||||
0x61, 0x6c, 0x75, 0x65, 0x53, 0x65, 0x74, 0x73, 0x22, 0x3b, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x65,
|
||||
0x61, 0x73, 0x65, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
|
||||
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a,
|
||||
0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74,
|
||||
0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0xd3, 0x01, 0x0a, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73,
|
||||
0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6d, 0x61, 0x70, 0x12, 0x45, 0x0a, 0x07,
|
||||
0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
|
||||
0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f,
|
||||
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x72, 0x65, 0x6c,
|
||||
0x65, 0x61, 0x73, 0x65, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61,
|
||||
0x73, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
|
||||
0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
|
||||
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x54, 0x0a, 0x11, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
|
||||
0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
|
||||
0x32, 0x27, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x72, 0x65, 0x6c, 0x65, 0x61,
|
||||
0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
|
||||
0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75,
|
||||
0x6c, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2a, 0x4a, 0x0a, 0x08, 0x77,
|
||||
0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x12, 0x18, 0x0a, 0x14, 0x55, 0x4e, 0x53, 0x50, 0x45,
|
||||
0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x10,
|
||||
0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x41, 0x55, 0x4e, 0x43, 0x48, 0x10, 0x01, 0x12, 0x0c, 0x0a,
|
||||
0x08, 0x50, 0x52, 0x45, 0x42, 0x55, 0x49, 0x4c, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x4d,
|
||||
0x41, 0x4e, 0x55, 0x41, 0x4c, 0x10, 0x03, 0x2a, 0x64, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61,
|
||||
0x69, 0x6e, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x15, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
|
||||
0x49, 0x45, 0x44, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x10, 0x00, 0x12,
|
||||
0x07, 0x0a, 0x03, 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x52, 0x4f, 0x44,
|
||||
0x55, 0x43, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x10,
|
||||
0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x5f, 0x45, 0x58, 0x54, 0x10,
|
||||
0x04, 0x12, 0x0a, 0x0a, 0x06, 0x56, 0x45, 0x4e, 0x44, 0x4f, 0x52, 0x10, 0x05, 0x42, 0x33, 0x5a,
|
||||
0x31, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2f, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x2f, 0x72,
|
||||
0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x72, 0x65,
|
||||
0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f,
|
||||
0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x12, 0x1f, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x61,
|
||||
0x69, 0x6e, 0x65, 0x72, 0x73, 0x18, 0xce, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f,
|
||||
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x06,
|
||||
0x08, 0xcf, 0x01, 0x10, 0xd0, 0x01, 0x22, 0x79, 0x0a, 0x0a, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x76,
|
||||
0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
|
||||
0x65, 0x18, 0xc9, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f,
|
||||
0x69, 0x64, 0x2e, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
|
||||
0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76,
|
||||
0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x61, 0x63, 0x74, 0x65, 0x64,
|
||||
0x18, 0xca, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x64, 0x61, 0x63, 0x74, 0x65,
|
||||
0x64, 0x22, 0x6e, 0x0a, 0x0e, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
|
||||
0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x68, 0x65, 0x72,
|
||||
0x69, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x68, 0x65, 0x72,
|
||||
0x69, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76,
|
||||
0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52,
|
||||
0x10, 0x61, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x65, 0x74,
|
||||
0x73, 0x22, 0x3b, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x61, 0x6c, 0x69,
|
||||
0x61, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
|
||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0xac,
|
||||
0x01, 0x0a, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
|
||||
0x67, 0x5f, 0x6d, 0x61, 0x70, 0x12, 0x45, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73,
|
||||
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64,
|
||||
0x2e, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f,
|
||||
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x61, 0x6c,
|
||||
0x69, 0x61, 0x73, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b,
|
||||
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d,
|
||||
0x0a, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
|
||||
0x6e, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x66, 0x61,
|
||||
0x75, 0x6c, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x73, 0x2a, 0x4a, 0x0a,
|
||||
0x08, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x12, 0x18, 0x0a, 0x14, 0x55, 0x4e, 0x53,
|
||||
0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f,
|
||||
0x77, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x41, 0x55, 0x4e, 0x43, 0x48, 0x10, 0x01, 0x12,
|
||||
0x0c, 0x0a, 0x08, 0x50, 0x52, 0x45, 0x42, 0x55, 0x49, 0x4c, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a,
|
||||
0x06, 0x4d, 0x41, 0x4e, 0x55, 0x41, 0x4c, 0x10, 0x03, 0x42, 0x33, 0x5a, 0x31, 0x61, 0x6e, 0x64,
|
||||
0x72, 0x6f, 0x69, 0x64, 0x2f, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x2f, 0x72, 0x65, 0x6c, 0x65, 0x61,
|
||||
0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73,
|
||||
0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||
}
|
||||
|
||||
var (
|
||||
@@ -735,30 +653,27 @@ func file_build_flags_src_proto_rawDescGZIP() []byte {
|
||||
return file_build_flags_src_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_build_flags_src_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
|
||||
var file_build_flags_src_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
|
||||
var file_build_flags_src_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
|
||||
var file_build_flags_src_proto_goTypes = []interface{}{
|
||||
(Workflow)(0), // 0: android.release_config_proto.workflow
|
||||
(Container)(0), // 1: android.release_config_proto.container
|
||||
(*Value)(nil), // 2: android.release_config_proto.value
|
||||
(*FlagDeclaration)(nil), // 3: android.release_config_proto.flag_declaration
|
||||
(*FlagValue)(nil), // 4: android.release_config_proto.flag_value
|
||||
(*ReleaseConfig)(nil), // 5: android.release_config_proto.release_config
|
||||
(*ReleaseAlias)(nil), // 6: android.release_config_proto.release_alias
|
||||
(*ReleaseConfigMap)(nil), // 7: android.release_config_proto.release_config_map
|
||||
(*Value)(nil), // 1: android.release_config_proto.value
|
||||
(*FlagDeclaration)(nil), // 2: android.release_config_proto.flag_declaration
|
||||
(*FlagValue)(nil), // 3: android.release_config_proto.flag_value
|
||||
(*ReleaseConfig)(nil), // 4: android.release_config_proto.release_config
|
||||
(*ReleaseAlias)(nil), // 5: android.release_config_proto.release_alias
|
||||
(*ReleaseConfigMap)(nil), // 6: android.release_config_proto.release_config_map
|
||||
}
|
||||
var file_build_flags_src_proto_depIdxs = []int32{
|
||||
2, // 0: android.release_config_proto.flag_declaration.value:type_name -> android.release_config_proto.value
|
||||
1, // 0: android.release_config_proto.flag_declaration.value:type_name -> android.release_config_proto.value
|
||||
0, // 1: android.release_config_proto.flag_declaration.workflow:type_name -> android.release_config_proto.workflow
|
||||
1, // 2: android.release_config_proto.flag_declaration.container:type_name -> android.release_config_proto.container
|
||||
2, // 3: android.release_config_proto.flag_value.value:type_name -> android.release_config_proto.value
|
||||
6, // 4: android.release_config_proto.release_config_map.aliases:type_name -> android.release_config_proto.release_alias
|
||||
1, // 5: android.release_config_proto.release_config_map.default_container:type_name -> android.release_config_proto.container
|
||||
6, // [6:6] is the sub-list for method output_type
|
||||
6, // [6:6] is the sub-list for method input_type
|
||||
6, // [6:6] is the sub-list for extension type_name
|
||||
6, // [6:6] is the sub-list for extension extendee
|
||||
0, // [0:6] is the sub-list for field type_name
|
||||
1, // 2: android.release_config_proto.flag_value.value:type_name -> android.release_config_proto.value
|
||||
5, // 3: android.release_config_proto.release_config_map.aliases:type_name -> android.release_config_proto.release_alias
|
||||
4, // [4:4] is the sub-list for method output_type
|
||||
4, // [4:4] is the sub-list for method input_type
|
||||
4, // [4:4] is the sub-list for extension type_name
|
||||
4, // [4:4] is the sub-list for extension extendee
|
||||
0, // [0:4] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_build_flags_src_proto_init() }
|
||||
@@ -851,7 +766,7 @@ func file_build_flags_src_proto_init() {
|
||||
File: protoimpl.DescBuilder{
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_build_flags_src_proto_rawDesc,
|
||||
NumEnums: 2,
|
||||
NumEnums: 1,
|
||||
NumMessages: 6,
|
||||
NumExtensions: 0,
|
||||
NumServices: 0,
|
||||
|
@@ -53,19 +53,6 @@ enum workflow {
|
||||
MANUAL = 3;
|
||||
}
|
||||
|
||||
enum container {
|
||||
UNSPECIFIED_container = 0;
|
||||
|
||||
// All containers
|
||||
ALL = 1;
|
||||
|
||||
// Specific containers
|
||||
PRODUCT = 2;
|
||||
SYSTEM = 3;
|
||||
SYSTEM_EXT = 4;
|
||||
VENDOR = 5;
|
||||
}
|
||||
|
||||
message value {
|
||||
oneof val {
|
||||
bool unspecified_value = 200;
|
||||
@@ -100,7 +87,7 @@ message flag_declaration {
|
||||
|
||||
// The container for this flag. This overrides any default container given
|
||||
// in the release_config_map message.
|
||||
optional container container = 206;
|
||||
repeated string containers = 206;
|
||||
|
||||
// The package associated with this flag.
|
||||
// (when Gantry is ready for it) optional string package = 207;
|
||||
@@ -152,7 +139,7 @@ message release_config_map {
|
||||
optional string description = 2;
|
||||
|
||||
// The default container for flags declared here.
|
||||
optional container default_container = 3;
|
||||
repeated string default_containers = 3;
|
||||
|
||||
// If needed, we can add these fields instead of hardcoding the location.
|
||||
// Flag declarations: `flag_declarations/*.textproto`
|
||||
|
Reference in New Issue
Block a user