aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/spanner
diff options
context:
space:
mode:
authorTaras Madan <tarasmadan@google.com>2024-07-08 10:11:55 +0200
committerTaras Madan <tarasmadan@google.com>2024-07-15 20:31:23 +0000
commita6c8cb149d0cb77afa09376f8454189579b7144c (patch)
tree8a796590fa681d79f1e5fd61afaa2aee64d20bb0 /pkg/spanner
parente8709b21d7c474a0fb6b8ff13039702865fd83bb (diff)
all: spanner.coveragedb to pkg
Diffstat (limited to 'pkg/spanner')
-rw-r--r--pkg/spanner/coveragedb/coverage.go35
1 files changed, 35 insertions, 0 deletions
diff --git a/pkg/spanner/coveragedb/coverage.go b/pkg/spanner/coveragedb/coverage.go
new file mode 100644
index 000000000..b794806d1
--- /dev/null
+++ b/pkg/spanner/coveragedb/coverage.go
@@ -0,0 +1,35 @@
+// Copyright 2024 syzkaller project authors. All rights reserved.
+// Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
+
+package coveragedb
+
+import (
+ "context"
+ "time"
+
+ "cloud.google.com/go/civil"
+ "cloud.google.com/go/spanner"
+)
+
+type FilesRecord struct {
+ Session string
+ FilePath string
+ Instrumented int64
+ Covered int64
+}
+
+type HistoryRecord struct {
+ Session string
+ Time time.Time
+ Namespace string
+ Repo string
+ Commit string
+ Duration int64
+ DateTo civil.Date
+ TotalRows int64
+}
+
+func NewClient(ctx context.Context, projectID string) (*spanner.Client, error) {
+ database := "projects/" + projectID + "/instances/syzbot/databases/coverage"
+ return spanner.NewClient(ctx, database)
+}