Skip to content

Commit 8efa635

Browse files
committed
cleanup Track1
1 parent b424002 commit 8efa635

File tree

10 files changed

+68
-263
lines changed

10 files changed

+68
-263
lines changed

eng/tools/generator/cmd/issue/link/common.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,6 @@ func GetReadmeFromPath(ctx context.Context, client *query.Client, path string) (
8888
}
8989

9090
func getReadmeFromDirectoryPath(ctx context.Context, client *query.Client, dir string) (Readme, error) {
91-
log.Println("###readme...", dir)
9291
if len(dir) == 0 || dir == "." {
9392
return "", fmt.Errorf("cannot determine the readme.md path")
9493
}
@@ -162,7 +161,6 @@ func GetTspConfigFromPath(ctx context.Context, client *query.Client, path string
162161
var errNoTspConfig = errors.New("cannot determine the tspconfig.yaml path")
163162

164163
func getTspConfigFromDirectoryPath(ctx context.Context, client *query.Client, dir string) (Readme, error) {
165-
log.Println("###typespec...", dir)
166164
if len(dir) == 0 || dir == "." {
167165
return "", errNoTspConfig
168166
}

eng/tools/generator/cmd/issue/request/handlers.go

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ import (
1111
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/cmd/issue/query"
1212
)
1313

14-
func handleSuccess(_ context.Context, _ *query.Client, reqIssue ReleaseRequestIssue, result link.ResolveResult) (*Request, error) {
14+
func handleTrack2(_ context.Context, _ *query.Client, reqIssue ReleaseRequestIssue, result link.ResolveResult) (*Request, error) {
1515
return &Request{
1616
RequestLink: reqIssue.IssueLink,
1717
TargetDate: reqIssue.ReleaseDate,
1818
ReadmePath: string(result.GetReadme()),
1919
Tag: reqIssue.Tag,
20-
Track: getTrack(reqIssue),
20+
Track: Track2,
2121
}, nil
2222
}
2323

@@ -47,13 +47,3 @@ func handleTypeSpec(_ context.Context, _ *query.Client, reqIssue ReleaseRequestI
4747
Track: TypeSpec,
4848
}, nil
4949
}
50-
51-
func getTrack(issue ReleaseRequestIssue) Track {
52-
for _, l := range issue.Labels {
53-
if l != nil && l.GetName() == "Track1" {
54-
return Track1
55-
}
56-
}
57-
58-
return Track2
59-
}

eng/tools/generator/cmd/issue/request/request.go

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717

1818
var (
1919
resultHandlerMap = map[link.Code]resultHandlerFunc{
20-
link.CodeSuccess: handleSuccess,
20+
link.CodeSuccess: handleTrack2,
2121
link.CodeDataPlane: handleDataPlane,
2222
link.CodePRNotMerged: handlePRNotMerged,
2323
link.CodeTypeSpec: handleTypeSpec,
@@ -44,8 +44,6 @@ type Request struct {
4444
type Track string
4545

4646
const (
47-
// Track1 ...
48-
Track1 Track = "Track1"
4947
// Track2 ...
5048
Track2 Track = "Track2"
5149

@@ -71,7 +69,7 @@ func (e *issueError) Error() string {
7169

7270
func initializeHandlers(options ParsingOptions) {
7371
if options.IncludeDataPlaneRequests {
74-
resultHandlerMap[link.CodeDataPlane] = handleSuccess
72+
resultHandlerMap[link.CodeDataPlane] = handleTrack2
7573
}
7674
}
7775

eng/tools/generator/cmd/v2/release/releaseCmd.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import (
1414
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/cmd/issue/link"
1515
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/cmd/v2/common"
1616
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/config"
17-
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/config/validate"
1817
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/flags"
1918
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/repo"
2019
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/typespec"
@@ -245,7 +244,7 @@ func (c *commandContext) generateFromRequest(sdkRepo repo.SDKRepository, specRep
245244
return fmt.Errorf("parse config err: %v", err)
246245
}
247246
log.Printf("Configuration: %s", cfg.String())
248-
armServices, err := validate.ParseTrack2(cfg, specRepoParam)
247+
armServices, err := config.ParseTrack2(cfg, specRepoParam)
249248
if err != nil {
250249
return err
251250
}

eng/tools/generator/config/config.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import (
88
)
99

1010
type Config struct {
11-
Track1Requests Track1ReleaseRequests `json:"track1Requests,omitempty"`
1211
Track2Requests Track2ReleaseRequests `json:"track2Requests,omitempty"`
1312
TypeSpecRequests TypeSpecReleaseRequests `json:"typespecRequests,omitempty"`
1413
RefreshInfo RefreshInfo `json:"refresh,omitempty"`

eng/tools/generator/config/parse_test.go

Lines changed: 0 additions & 140 deletions
This file was deleted.

eng/tools/generator/config/releaseRequests.go

Lines changed: 50 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,14 @@ package config
55

66
import (
77
"encoding/json"
8+
"errors"
89
"fmt"
10+
"path/filepath"
11+
"strconv"
12+
"strings"
913
"time"
14+
15+
"github.com/Azure/azure-sdk-for-go/eng/tools/generator/cmd/v2/common"
1016
)
1117

1218
type Track2ReleaseRequests map[string][]Track2Request
@@ -33,10 +39,6 @@ func (c Track2ReleaseRequests) Contains(readme string) bool {
3339
return ok
3440
}
3541

36-
type Track1ReleaseRequests map[string]TagForRelease
37-
38-
type TagForRelease map[string][]ReleaseRequestInfo
39-
4042
type ReleaseRequestInfo struct {
4143
TargetDate *time.Time `json:"targetDate,omitempty"`
4244
RequestLink string `json:"requestLink,omitempty"`
@@ -54,31 +56,50 @@ func (info ReleaseRequestInfo) String() string {
5456
return m
5557
}
5658

57-
func (c Track1ReleaseRequests) String() string {
58-
b, _ := json.Marshal(c)
59-
return string(b)
60-
}
61-
62-
func (c Track1ReleaseRequests) Add(readme, tag string, info ReleaseRequestInfo) {
63-
if !c.Contains(readme) {
64-
c[readme] = TagForRelease{}
59+
func ParseTrack2(config *Config, specRoot string) (armServices map[string][]common.PackageInfo, errResult error) {
60+
armServices = make(map[string][]common.PackageInfo)
61+
for readme, track2Request := range config.Track2Requests {
62+
for _, request := range track2Request {
63+
service, err := common.ReadV2ModuleNameToGetNamespace(filepath.Join(specRoot, strings.ReplaceAll(readme, "readme.md", "readme.go.md")))
64+
if err != nil {
65+
errResult = errors.Join(errResult, fmt.Errorf("cannot get readme.go.md content: %+v", err))
66+
continue
67+
}
68+
69+
var subService string
70+
_, after, _ := strings.Cut(request.PackageFlag, "package-")
71+
s := strings.Split(after, "-")
72+
if _, err = strconv.Atoi(s[0]); err != nil && s[0] != "preview" {
73+
subService = s[0]
74+
}
75+
76+
for arm, packageInfos := range service {
77+
if subService == "" && len(packageInfos) > 0 {
78+
packageInfos[0].RequestLink = request.RequestLink
79+
packageInfos[0].ReleaseDate = request.TargetDate
80+
packageInfos[0].Tag = fmt.Sprintf("tag: %s", request.PackageFlag)
81+
armServices[arm] = append(armServices[arm], packageInfos[0])
82+
}
83+
84+
if subService != "" && len(packageInfos) == 1 {
85+
packageInfos[0].RequestLink = request.RequestLink
86+
packageInfos[0].ReleaseDate = request.TargetDate
87+
packageInfos[0].Tag = fmt.Sprintf("tag: %s", request.PackageFlag)
88+
armServices[arm] = append(armServices[arm], packageInfos[0])
89+
} else if subService != "" && len(packageInfos) > 1 {
90+
for _, packageInfo := range packageInfos {
91+
if strings.Contains(packageInfo.Config, subService) {
92+
packageInfo.RequestLink = request.RequestLink
93+
packageInfo.ReleaseDate = request.TargetDate
94+
packageInfo.Tag = fmt.Sprintf("tag: %s", request.PackageFlag)
95+
armServices[arm] = append(armServices[arm], packageInfo)
96+
break
97+
}
98+
}
99+
}
100+
}
101+
}
65102
}
66-
c[readme].Add(tag, info)
67-
}
68103

69-
func (c Track1ReleaseRequests) Contains(readme string) bool {
70-
_, ok := c[readme]
71-
return ok
72-
}
73-
74-
func (c TagForRelease) Add(tag string, info ReleaseRequestInfo) {
75-
if !c.Contains(tag) {
76-
c[tag] = []ReleaseRequestInfo{}
77-
}
78-
c[tag] = append(c[tag], info)
79-
}
80-
81-
func (c TagForRelease) Contains(tag string) bool {
82-
_, ok := c[tag]
83-
return ok
104+
return armServices, errResult
84105
}

eng/tools/generator/config/validate/localValidator.go

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ type localValidator struct {
2121

2222
func (v *localValidator) Validate(cfg config.Config) error {
2323
var errResult error
24-
for readme, infoMap := range cfg.Track1Requests {
24+
for readme, infoMap := range cfg.Track2Requests {
2525
if err := v.validateReadmeExistence(readme); err != nil {
2626
errResult = errors.Join(errResult, err)
2727
continue // readme file cannot pass validation, we just skip the validations
@@ -46,13 +46,14 @@ func (v *localValidator) Validate(cfg config.Config) error {
4646
// get the keys from infoMap, which is the tags
4747
var tags []string
4848
linq.From(infoMap).Select(func(item interface{}) interface{} {
49-
return item.(linq.KeyValue).Key
49+
return item.(config.Track2Request).PackageFlag
5050
}).ToSlice(&tags)
5151
// check the tags one by one
5252
if err := validateTagsInReadme(contentOfReadme, readme, tags...); err != nil {
5353
errResult = errors.Join(errResult, err)
5454
}
55-
if err := validateTagsInReadmeGo(contentOfReadmeGo, readme, tags...); err != nil {
55+
// check module-name exist
56+
if err := validateModuleNameInReadmeGo(contentOfReadmeGo, readme); err != nil {
5657
errResult = errors.Join(errResult, err)
5758
}
5859
}
@@ -77,10 +78,6 @@ func findTagInReadme(content []byte, tag string) bool {
7778
return regexp.MustCompile(fmt.Sprintf(tagDefinedInReadmeRegex, tag)).Match(content)
7879
}
7980

80-
func findTagInGo(content []byte, tag string) bool {
81-
return regexp.MustCompile(tagInBatchRegex + tag + `\s+`).Match(content)
82-
}
83-
8481
func getReadmeGoFromReadme(readme string) string {
8582
return strings.ReplaceAll(readme, readmeFilename, goReadmeFilename)
8683
}

0 commit comments

Comments
 (0)