Don't list build variant release configs
The build variant release configs are not meant to be used in lunch and
therefore shouldn't be listed in ALL_RELEASE_CONFIGS_FOR_PRODUCT.
Otherwise one can do something like "lunch husky-user-user", which
doesn't sound right.
Bug: b/378961230
Test: build/soong/bin/list_releases husky
Change-Id: Ie7a5487aa85018b430c5b816d902149184903eee
diff --git a/cmd/release_config/release_config_lib/release_config.go b/cmd/release_config/release_config_lib/release_config.go
index 8d21002..719ddc0 100644
--- a/cmd/release_config/release_config_lib/release_config.go
+++ b/cmd/release_config/release_config_lib/release_config.go
@@ -91,6 +91,16 @@
ReleaseConfigType rc_proto.ReleaseConfigType
}
+// If true, this is a proper release config that can be used in "lunch".
+func (config *ReleaseConfig) isConfigListable() bool {
+ switch config.ReleaseConfigType {
+ case rc_proto.ReleaseConfigType_RELEASE_CONFIG:
+ return true
+ }
+
+ return false
+}
+
// If true, this ReleaseConfigType may only inherit from a ReleaseConfig of the
// same ReleaseConfigType.
var ReleaseConfigInheritanceDenyMap = map[rc_proto.ReleaseConfigType]bool{
diff --git a/cmd/release_config/release_config_lib/release_configs.go b/cmd/release_config/release_config_lib/release_configs.go
index f616230..4f621c7 100644
--- a/cmd/release_config/release_config_lib/release_configs.go
+++ b/cmd/release_config/release_config_lib/release_configs.go
@@ -449,8 +449,10 @@
func (configs *ReleaseConfigs) GetAllReleaseNames() []string {
var allReleaseNames []string
for _, v := range configs.ReleaseConfigs {
- allReleaseNames = append(allReleaseNames, v.Name)
- allReleaseNames = append(allReleaseNames, v.OtherNames...)
+ if v.isConfigListable() {
+ allReleaseNames = append(allReleaseNames, v.Name)
+ allReleaseNames = append(allReleaseNames, v.OtherNames...)
+ }
}
slices.Sort(allReleaseNames)
return allReleaseNames