diff --git a/devtools/ci/ci.sh b/devtools/ci/ci.sh
index 929b786..ae86c26 100755
--- a/devtools/ci/ci.sh
+++ b/devtools/ci/ci.sh
@@ -102,7 +102,6 @@
 echo "----------------------------------------"
 echo "Running e2e tests"
 echo "----------------------------------------"
-echo "Temporarily disabled until seeddb is fixed."
 ./tests/e2e/run.sh
 print_duration_and_reset
 
diff --git a/devtools/cmd/seeddb/main.go b/devtools/cmd/seeddb/main.go
index f04355a..1b391a3 100644
--- a/devtools/cmd/seeddb/main.go
+++ b/devtools/cmd/seeddb/main.go
@@ -78,6 +78,16 @@
 		return err
 	}
 
+	// Expand versions and group by module path.
+	versionsByPath := map[string][]string{}
+	for _, m := range seedModules {
+		vers, err := versions(ctx, proxyClient, m)
+		if err != nil {
+			return err
+		}
+		versionsByPath[m.Path] = append(versionsByPath[m.Path], vers...)
+	}
+
 	r := results{}
 	g := new(errgroup.Group)
 	f := &worker.Fetcher{
@@ -85,16 +95,13 @@
 		SourceClient: sourceClient,
 		DB:           postgres.New(db),
 	}
-	for _, m := range seedModules {
-		m := m
-		vers, err := versions(ctx, proxyClient, m)
-		if err != nil {
-			return err
-		}
+	for path, vers := range versionsByPath {
+		path := path
+		vers := vers
 		// Process versions of the same module sequentially, to avoid DB contention.
 		g.Go(func() error {
 			for _, v := range vers {
-				if err := fetch(ctx, db, f, m.Path, v, &r); err != nil {
+				if err := fetch(ctx, db, f, path, v, &r); err != nil {
 					return err
 				}
 			}
