Migrate the scouting database to postgres

The existing database is sqlite3. That is not usable by Tableau which
is the visualization tool we use. Tableau also appears incapable of
scraping, say, JSON from our scouting app.

This patch migrates our application to use postgres instead of
sqlite3. That database will be accessible by Tableau.

I created a `testdb_server` application that sets up postgres in the
linux-sandbox in a bazel test. This is useful in the various tests
that we run on the scouting application.

Signed-off-by: Philipp Schrader <philipp.schrader@gmail.com>
Change-Id: I9cd260f8998b9607e1e3229ab70f243cdded5ec5
diff --git a/scouting/db/testdb_server/BUILD b/scouting/db/testdb_server/BUILD
new file mode 100644
index 0000000..881d189
--- /dev/null
+++ b/scouting/db/testdb_server/BUILD
@@ -0,0 +1,22 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
+
+go_library(
+    name = "testdb_server_lib",
+    srcs = ["main.go"],
+    importpath = "github.com/frc971/971-Robot-Code/scouting/db/testdb_server",
+    target_compatible_with = ["@platforms//cpu:x86_64"],
+    visibility = ["//visibility:private"],
+    deps = ["@com_github_phst_runfiles//:go_default_library"],
+)
+
+go_binary(
+    name = "testdb_server",
+    data = [
+        "postgres_test.conf",
+        "@postgresql_amd64//:initdb",
+        "@postgresql_amd64//:postgres",
+    ],
+    embed = [":testdb_server_lib"],
+    target_compatible_with = ["@platforms//cpu:x86_64"],
+    visibility = ["//visibility:public"],
+)