Skip to content

Commit 61b50c4

Browse files
committed
chore: updated optimism, reth, node-reth, nethermind, op-geth
Updated dependencies for: optimism => op-node/v1.13.4 () reth => v1.5.0 () node-reth => v0.1.3 () nethermind => 1.32.2 () op-geth => v1.101511.0 ()
1 parent 44942a3 commit 61b50c4

1 file changed

Lines changed: 45 additions & 45 deletions

File tree

dependency_updater/dependency_updater.go

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,11 @@ type Info struct {
2525
Repo string `json:"repo`
2626
}
2727

28-
type VersionTag []struct {
29-
Tag string `json:"tag_name"`
30-
}
31-
32-
type Commit struct {
33-
Commit string `json:"sha"`
28+
type VersionUpdateInfo struct {
29+
Repo string
30+
From string
31+
To string
32+
DiffUrl string
3433
}
3534

3635
type Dependencies = map[string]*Info
@@ -73,6 +72,8 @@ func main() {
7372

7473
func updater(token string, repoPath string, commit bool) error {
7574
var err error
75+
var dependencies Dependencies
76+
var updatedDependencies []VersionUpdateInfo
7677

7778
f, err := os.ReadFile(repoPath + "/versions.json")
7879
if err != nil {
@@ -82,32 +83,32 @@ func updater(token string, repoPath string, commit bool) error {
8283
client := github.NewClient(nil).WithAuthToken(token)
8384
ctx := context.Background()
8485

85-
var updatedDependencies [][]string
86-
var dependencies Dependencies
87-
8886
err = json.Unmarshal(f, &dependencies)
8987
if err != nil {
9088
return fmt.Errorf("error unmarshaling versions JSON to dependencies: %s", err)
9189
}
9290

9391
for dependency := range dependencies {
94-
err := retry.Do0(context.Background(), 3, retry.Fixed(1*time.Second), func() error {
95-
return getAndUpdateDependency(
92+
var updatedDependency VersionUpdateInfo
93+
err := retry.Do0(context.Background(), 3, retry.Fixed(1*time.Second), func() error {
94+
updatedDependency, err = getAndUpdateDependency(
9695
ctx,
9796
client,
9897
dependency,
9998
repoPath,
10099
dependencies,
101-
&updatedDependencies,
102100
)
101+
return err
103102
})
104103

105104
if err != nil {
106105
return fmt.Errorf("error getting and updating version/commit for "+dependency+": %s", err)
107106
}
107+
108+
updatedDependencies = append(updatedDependencies, updatedDependency)
108109
}
109110

110-
if commit {
111+
if commit && updatedDependencies != nil {
111112
err := createCommitMessage(updatedDependencies)
112113
if err != nil {
113114
return fmt.Errorf("error creating commit message: %s", err)
@@ -122,42 +123,42 @@ func updater(token string, repoPath string, commit bool) error {
122123
return nil
123124
}
124125

125-
func createCommitMessage(updatedDependencies [][]string) error {
126+
func createCommitMessage(updatedDependencies []VersionUpdateInfo) error {
126127
commitTitle := "chore: updated "
127128
var commitDescription = "Updated dependencies for: \n"
129+
var repos []string
128130
for _, dependency := range updatedDependencies {
129-
if len(dependency) != 0 {
130-
repo, tag := dependency[0], dependency[1]
131-
commitDescription += repo + " => " + tag + " (" + dependency[2] + ")" + "\n"
132-
commitTitle += repo + ", "
131+
if dependency != (VersionUpdateInfo{}) {
132+
repo, tag := dependency.Repo, dependency.To
133+
commitDescription += repo + " => " + tag + " (" + dependency.DiffUrl + ")" + "\n"
134+
repos = append(repos, repo)
133135
}
134136
}
135-
commitTitle = strings.TrimSuffix(commitTitle, ", ")
137+
commitTitle += strings.Join(repos, ", ")
136138
cmd := exec.Command("git", "commit", "-am", commitTitle, "-m", commitDescription)
137139
if err := cmd.Run(); err != nil {
138140
return fmt.Errorf("error running git commit -m: %s", err)
139141
}
140142
return nil
141143
}
142144

143-
func getAndUpdateDependency(ctx context.Context, client *github.Client, dependencyType string, repoPath string, dependencies Dependencies, updatedDependencies *[][]string) error {
144-
version, commit, err := getVersionAndCommit(ctx, client, dependencies, dependencyType, updatedDependencies)
145+
func getAndUpdateDependency(ctx context.Context, client *github.Client, dependencyType string, repoPath string, dependencies Dependencies) (VersionUpdateInfo, error) {
146+
version, commit, updatedDependency, err := getVersionAndCommit(ctx, client, dependencies, dependencyType)
145147
if err != nil {
146-
return err
148+
return VersionUpdateInfo{}, err
147149
}
148150

149151
e := updateVersionTagAndCommit(commit, version, dependencyType, repoPath, dependencies)
150152
if e != nil {
151-
return fmt.Errorf("error updating version tag and commit: %s", e)
153+
return VersionUpdateInfo{}, fmt.Errorf("error updating version tag and commit: %s", e)
152154
}
153155

154-
return nil
156+
return updatedDependency, nil
155157
}
156158

157-
func getVersionAndCommit(ctx context.Context, client *github.Client, dependencies Dependencies, dependencyType string, updatedDependencies *[][]string) (string, string, error) {
159+
func getVersionAndCommit(ctx context.Context, client *github.Client, dependencies Dependencies, dependencyType string) (string, string, VersionUpdateInfo, error) {
158160
var version *github.RepositoryRelease
159161
var err error
160-
var updates []string
161162
var diffUrl string
162163
foundPrefixVersion := false
163164
options := &github.ListOptions{Page: 1}
@@ -170,18 +171,14 @@ func getVersionAndCommit(ctx context.Context, client *github.Client, dependencie
170171
options)
171172

172173
if err != nil {
173-
return "", "", fmt.Errorf("error getting releases: %s", err)
174+
return "", "", VersionUpdateInfo{}, fmt.Errorf("error getting releases: %s", err)
174175
}
175176

176177
if dependencies[dependencyType].TagPrefix == "" {
177178
version = releases[0]
178179
if *version.TagName != dependencies[dependencyType].Tag {
179-
diffUrl = "https://github.com/" +
180-
dependencies[dependencyType].Owner + "/" +
181-
dependencies[dependencyType].Repo + "/compare/" +
182-
dependencies[dependencyType].Tag + "..." + *version.TagName
183-
184-
updates = append(updates, dependencies[dependencyType].Repo, *version.TagName, diffUrl)
180+
diffUrl = generateGithubRepoUrl(dependencies, dependencyType) + "/compare/" +
181+
dependencies[dependencyType].Tag + "..." + *version.TagName
185182
}
186183
break
187184
} else if dependencies[dependencyType].TagPrefix != "" {
@@ -190,12 +187,8 @@ func getVersionAndCommit(ctx context.Context, client *github.Client, dependencie
190187
version = releases[release]
191188
foundPrefixVersion = true
192189
if *version.TagName != dependencies[dependencyType].Tag {
193-
diffUrl = "https://github.com/" +
194-
dependencies[dependencyType].Owner + "/" +
195-
dependencies[dependencyType].Repo + "/compare/" +
196-
dependencies[dependencyType].Tag + "..." + *version.TagName
197-
198-
updates = append(updates, dependencies[dependencyType].Repo, *version.TagName, diffUrl)
190+
diffUrl = generateGithubRepoUrl(dependencies, dependencyType) + "/compare/" +
191+
dependencies[dependencyType].Tag + "..." + *version.TagName
199192
}
200193
break
201194
}
@@ -209,7 +202,12 @@ func getVersionAndCommit(ctx context.Context, client *github.Client, dependencie
209202
}
210203
}
211204

212-
*updatedDependencies = append(*updatedDependencies, updates)
205+
updatedDependency := VersionUpdateInfo{
206+
dependencies[dependencyType].Repo,
207+
dependencies[dependencyType].Tag,
208+
*version.TagName,
209+
diffUrl,
210+
}
213211

214212
commit, _, err := client.Repositories.GetCommit(
215213
ctx,
@@ -218,10 +216,10 @@ func getVersionAndCommit(ctx context.Context, client *github.Client, dependencie
218216
"refs/tags/"+*version.TagName,
219217
&github.ListOptions{})
220218
if err != nil {
221-
return "", "", fmt.Errorf("error getting commit for "+dependencyType+": %s", err)
219+
return "", "", VersionUpdateInfo{}, fmt.Errorf("error getting commit for "+dependencyType+": %s", err)
222220
}
223221

224-
return *version.TagName, *commit.SHA, nil
222+
return *version.TagName, *commit.SHA, updatedDependency, nil
225223
}
226224

227225
func updateVersionTagAndCommit(
@@ -258,9 +256,7 @@ func createVersionsEnv(repoPath string, dependencies Dependencies) error {
258256
envLines := []string{}
259257

260258
for dependency := range dependencies {
261-
repoUrl := "https://github.com/" +
262-
dependencies[dependency].Owner + "/" +
263-
dependencies[dependency].Repo + ".git"
259+
repoUrl := generateGithubRepoUrl(dependencies, dependency) + ".git"
264260

265261
dependencyPrefix := strings.ToUpper(dependency)
266262

@@ -289,3 +285,7 @@ func createVersionsEnv(repoPath string, dependencies Dependencies) error {
289285

290286
return nil
291287
}
288+
289+
func generateGithubRepoUrl(dependencies Dependencies, dependencyType string) string {
290+
return "https://github.com/" + dependencies[dependencyType].Owner + "/" + dependencies[dependencyType].Repo + "/"
291+
}

0 commit comments

Comments
 (0)