Skip to content

feat(serverless-spark): Add get_batch tool#1783

Merged
dborowitz merged 1 commit into
googleapis:mainfrom
dborowitz:serverless-spark
Oct 28, 2025
Merged

feat(serverless-spark): Add get_batch tool#1783
dborowitz merged 1 commit into
googleapis:mainfrom
dborowitz:serverless-spark

feat(serverless-spark): Add get_batch tool

001e07b
Select commit
Loading
Failed to load commit list.
Google Cloud Build / integration-test-pr (toolbox-testing-438616) succeeded Oct 28, 2025 in 15m 19s

Summary

Build Information

Trigger integration-test-pr
Build 85ea2a7b-b21f-47da-bd4f-252a7b24d8e9
Start 2025-10-28T13:35:20-07:00
Duration 5m59.879s
Status SUCCESS

Steps

Step Status Duration
install-dependencies SUCCESS 23.181s
compile-test-binary SUCCESS 58.863s
cloud-sql-pg SUCCESS 18.631s
alloydb SUCCESS 6.454s
alloydb-pg SUCCESS 22.883s
alloydb-ai-nl SUCCESS 10.839s
bigtable SUCCESS 17.912s
bigquery SUCCESS 4m29.409s
dataplex SUCCESS 2m13.263s
dataform SUCCESS 1m5.957s
postgres SUCCESS 22.872s
spanner SUCCESS 33.347s
neo4j SUCCESS 6.037s
cloud-sql-mssql SUCCESS 7.193s
cloud-sql-mysql SUCCESS 23.115s
mysql SUCCESS 23.235s
mssql SUCCESS 5.8s
http SUCCESS 3.49s
sqlite SUCCESS 5.699s
couchbase SUCCESS 31.135s
redis SUCCESS 6.786s
valkey SUCCESS 4.203s
oceanbase SUCCESS 10.789s
firestore SUCCESS 4.577s
looker SUCCESS 1m46.621s
cloud-sql SUCCESS 4.301s
tidb SUCCESS 6.73s
firebird SUCCESS 1m10.381s
clickhouse SUCCESS 10.635s
trino SUCCESS 8.96s
yugabytedb SUCCESS 12.289s
cassandra SUCCESS 12.199s
oracle SUCCESS 9.264s
serverless-spark SUCCESS 6.07s

Details

starting build "85ea2a7b-b21f-47da-bd4f-252a7b24d8e9"

FETCHSOURCE
From https://github.com/googleapis/genai-toolbox
 * branch            001e07b1cb4555052706c93ae417deb4e030a2e5 -> FETCH_HEAD
HEAD is now at 001e07b feat(serverless-spark): Add get_batch tool
GitCommit:
001e07b1cb4555052706c93ae417deb4e030a2e5
SETUPBUILD
BUILD
Starting Step #0 - "install-dependencies"
Step #0 - "install-dependencies": Pulling image: golang:1
Step #0 - "install-dependencies": 1: Pulling from library/golang
Step #0 - "install-dependencies": 795dbedde24d: Pulling fs layer
Step #0 - "install-dependencies": 89d573bf42b3: Pulling fs layer
Step #0 - "install-dependencies": 26dfe2fac1c4: Pulling fs layer
Step #0 - "install-dependencies": 1c596538aa11: Pulling fs layer
Step #0 - "install-dependencies": 91631faa732a: Pulling fs layer
Step #0 - "install-dependencies": 923089182cb9: Pulling fs layer
Step #0 - "install-dependencies": 4f4fb700ef54: Pulling fs layer
Step #0 - "install-dependencies": 91631faa732a: Waiting
Step #0 - "install-dependencies": 923089182cb9: Waiting
Step #0 - "install-dependencies": 4f4fb700ef54: Waiting
Step #0 - "install-dependencies": 1c596538aa11: Waiting
Step #0 - "install-dependencies": 89d573bf42b3: Verifying Checksum
Step #0 - "install-dependencies": 89d573bf42b3: Download complete
Step #0 - "install-dependencies": 795dbedde24d: Verifying Checksum
Step #0 - "install-dependencies": 795dbedde24d: Download complete
Step #0 - "install-dependencies": 26dfe2fac1c4: Verifying Checksum
Step #0 - "install-dependencies": 26dfe2fac1c4: Download complete
Step #0 - "install-dependencies": 923089182cb9: Download complete
Step #0 - "install-dependencies": 4f4fb700ef54: Download complete
Step #0 - "install-dependencies": 91631faa732a: Verifying Checksum
Step #0 - "install-dependencies": 91631faa732a: Download complete
Step #0 - "install-dependencies": 1c596538aa11: Verifying Checksum
Step #0 - "install-dependencies": 1c596538aa11: Download complete
Step #0 - "install-dependencies": 795dbedde24d: Pull complete
Step #0 - "install-dependencies": 89d573bf42b3: Pull complete
Step #0 - "install-dependencies": 26dfe2fac1c4: Pull complete
Step #0 - "install-dependencies": 1c596538aa11: Pull complete
Step #0 - "install-dependencies": 91631faa732a: Pull complete
Step #0 - "install-dependencies": 923089182cb9: Pull complete
Step #0 - "install-dependencies": 4f4fb700ef54: Pull complete
Step #0 - "install-dependencies": Digest: sha256:6bac879c5b77e0fc9c556a5ed8920e89dab1709bd510a854903509c828f67f96
Step #0 - "install-dependencies": Status: Downloaded newer image for golang:1
Step #0 - "install-dependencies": docker.io/library/golang:1
Step #0 - "install-dependencies": go: -d flag is deprecated. -d=true is a no-op
Step #0 - "install-dependencies": go: downloading google.golang.org/api v0.251.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/firestore v1.20.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/cloudsqlconn v1.18.1
Step #0 - "install-dependencies": go: downloading github.com/ClickHouse/clickhouse-go/v2 v2.40.3
Step #0 - "install-dependencies": go: downloading golang.org/x/oauth2 v0.32.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/dataplex v1.27.1
Step #0 - "install-dependencies": go: downloading github.com/jackc/pgx/v5 v5.7.6
Step #0 - "install-dependencies": go: downloading github.com/fsnotify/fsnotify v1.9.0
Step #0 - "install-dependencies": go: downloading github.com/couchbase/gocb/v2 v2.11.1
Step #0 - "install-dependencies": go: downloading github.com/couchbase/tools-common/http v1.0.9
Step #0 - "install-dependencies": go: downloading github.com/go-chi/chi/v5 v5.2.3
Step #0 - "install-dependencies": go: downloading github.com/goccy/go-yaml v1.18.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel v1.38.0
Step #0 - "install-dependencies": go: downloading github.com/go-chi/httplog/v2 v2.1.1
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel/trace v1.38.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel/metric v1.38.0
Step #0 - "install-dependencies": go: downloading github.com/google/uuid v1.6.0
Step #0 - "install-dependencies": go: downloading github.com/gocql/gocql v1.7.0
Step #0 - "install-dependencies": go: downloading github.com/go-chi/render v1.0.3
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/bigtable v1.40.1
Step #0 - "install-dependencies": go: downloading github.com/looker-open-source/sdk-codegen/go v0.25.16
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/geminidataanalytics v0.2.1
Step #0 - "install-dependencies": go: downloading go.mongodb.org/mongo-driver v1.17.4
Step #0 - "install-dependencies": go: downloading github.com/microsoft/go-mssqldb v1.9.3
Step #0 - "install-dependencies": go: downloading github.com/go-sql-driver/mysql v1.9.3
Step #0 - "install-dependencies": go: downloading github.com/neo4j/neo4j-go-driver/v5 v5.28.4
Step #0 - "install-dependencies": go: downloading github.com/sijms/go-ora/v2 v2.9.0
Step #0 - "install-dependencies": go: downloading github.com/go-playground/validator/v10 v10.28.0
Step #0 - "install-dependencies": go: downloading github.com/redis/go-redis/v9 v9.16.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/dataproc/v2 v2.14.1
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/spanner v1.86.1
Step #0 - "install-dependencies": go: downloading modernc.org/sqlite v1.39.1
Step #0 - "install-dependencies": go: downloading github.com/trinodb/trino-go-client v0.329.0
Step #0 - "install-dependencies": go: downloading github.com/valkey-io/valkey-go v1.0.67
Step #0 - "install-dependencies": go: downloading github.com/yugabyte/pgx/v5 v5.5.3-yb-5
Step #0 - "install-dependencies": go: downloading github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.53.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/bigquery v1.71.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/alloydbconn v1.15.5
Step #0 - "install-dependencies": go: downloading github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/trace v1.29.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/propagators/autoprop v0.62.0
Step #0 - "install-dependencies": go: downloading github.com/cenkalti/backoff/v5 v5.0.3
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.37.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.37.0
Step #0 - "install-dependencies": go: downloading github.com/thlib/go-timezone-local v0.0.7
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel/sdk/metric v1.37.0
Step #0 - "install-dependencies": go: downloading google.golang.org/genproto v0.0.0-20251007200510-49b9836ed3ff
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel/sdk v1.37.0
Step #0 - "install-dependencies": go: downloading github.com/spf13/cobra v1.10.1
Step #0 - "install-dependencies": go: downloading github.com/ajg/form v1.5.1
Step #0 - "install-dependencies": go: downloading github.com/couchbase/tools-common/errors v1.0.0
Step #0 - "install-dependencies": go: downloading github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78
Step #0 - "install-dependencies": go: downloading golang.org/x/crypto v0.42.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/compute/metadata v0.9.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.37.0
Step #0 - "install-dependencies": go: downloading github.com/json-iterator/go v1.1.12
Step #0 - "install-dependencies": go: downloading golang.org/x/sys v0.36.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go v0.121.6
Step #0 - "install-dependencies": go: downloading google.golang.org/protobuf v1.36.10
Step #0 - "install-dependencies": go: downloading github.com/google/go-cmp v0.7.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/propagators/aws v1.37.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/propagators/b3 v1.37.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/propagators/jaeger v1.37.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/propagators/ot v1.37.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/trace v1.11.6
Step #0 - "install-dependencies": go: downloading github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0
Step #0 - "install-dependencies": go: downloading google.golang.org/genproto/googleapis/rpc v0.0.0-20251002232023-7c0ddcbb5797
Step #0 - "install-dependencies": go: downloading google.golang.org/grpc v1.75.1
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/monitoring v1.24.2
Step #0 - "install-dependencies": go: downloading github.com/googleapis/gax-go/v2 v2.15.0
Step #0 - "install-dependencies": go: downloading google.golang.org/genproto/googleapis/api v0.0.0-20251002232023-7c0ddcbb5797
Step #0 - "install-dependencies": go: downloading github.com/jcmturner/gokrb5/v8 v8.4.4
Step #0 - "install-dependencies": go: downloading github.com/klauspost/compress v1.18.0
Step #0 - "install-dependencies": go: downloading github.com/pierrec/lz4 v2.6.1+incompatible
Step #0 - "install-dependencies": go: downloading filippo.io/edwards25519 v1.1.0
Step #0 - "install-dependencies": go: downloading gopkg.in/ini.v1 v1.67.0
Step #0 - "install-dependencies": go: downloading go.uber.org/multierr v1.11.0
Step #0 - "install-dependencies": go: downloading github.com/inconshreveable/mousetrap v1.1.0
Step #0 - "install-dependencies": go: downloading github.com/spf13/pflag v1.0.9
Step #0 - "install-dependencies": go: downloading github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
Step #0 - "install-dependencies": go: downloading github.com/modern-go/reflect2 v1.0.2
Step #0 - "install-dependencies": go: downloading github.com/golang/snappy v1.0.0
Step #0 - "install-dependencies": go: downloading github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed
Step #0 - "install-dependencies": go: downloading github.com/ClickHouse/ch-go v0.68.0
Step #0 - "install-dependencies": go: downloading gopkg.in/inf.v0 v0.9.1
Step #0 - "install-dependencies": go: downloading github.com/andybalholm/brotli v1.2.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/iam v1.5.2
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/longrunning v0.6.7
Step #0 - "install-dependencies": go: downloading github.com/gabriel-vasile/mimetype v1.4.10
Step #0 - "install-dependencies": go: downloading github.com/go-playground/universal-translator v0.18.1
Step #0 - "install-dependencies": go: downloading github.com/leodido/go-urn v1.4.0
Step #0 - "install-dependencies": go: downloading golang.org/x/text v0.29.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/alloydb v1.18.0
Step #0 - "install-dependencies": go: downloading golang.org/x/net v0.44.0
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/auth v0.16.5
Step #0 - "install-dependencies": go: downloading cloud.google.com/go/auth/oauth2adapt v0.2.8
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/detectors/gcp v1.36.0
Step #0 - "install-dependencies": go: downloading github.com/couchbase/gocbcore/v10 v10.8.1
Step #0 - "install-dependencies": go: downloading github.com/couchbase/gocbcoreps v0.1.4
Step #0 - "install-dependencies": go: downloading github.com/couchbase/goprotostellar v1.0.2
Step #0 - "install-dependencies": go: downloading github.com/couchbaselabs/gocbconnstr/v2 v2.0.0
Step #0 - "install-dependencies": go: downloading go.uber.org/zap v1.27.0
Step #0 - "install-dependencies": go: downloading github.com/jackc/puddle/v2 v2.2.2
Step #0 - "install-dependencies": go: downloading golang.org/x/time v0.13.0
Step #0 - "install-dependencies": go: downloading github.com/cespare/xxhash/v2 v2.3.0
Step #0 - "install-dependencies": go: downloading github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f
Step #0 - "install-dependencies": go: downloading github.com/golang-sql/civil v0.0.0-20220223132316-b832511892a9
Step #0 - "install-dependencies": go: downloading github.com/golang-sql/sqlexp v0.1.0
Step #0 - "install-dependencies": go: downloading github.com/jcmturner/dnsutils/v2 v2.0.0
Step #0 - "install-dependencies": go: downloading github.com/jcmturner/gofork v1.7.6
Step #0 - "install-dependencies": go: downloading github.com/jcmturner/goidentity/v6 v6.0.1
Step #0 - "install-dependencies": go: downloading github.com/paulmach/orb v0.11.1
Step #0 - "install-dependencies": go: downloading github.com/shopspring/decimal v1.4.0
Step #0 - "install-dependencies": go: downloading go.yaml.in/yaml/v3 v3.0.4
Step #0 - "install-dependencies": go: downloading github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp v1.5.3
Step #0 - "install-dependencies": go: downloading go.opencensus.io v0.24.0
Step #0 - "install-dependencies": go: downloading github.com/apache/arrow/go/v15 v15.0.2
Step #0 - "install-dependencies": go: downloading golang.org/x/sync v0.17.0
Step #0 - "install-dependencies": go: downloading github.com/go-logr/logr v1.4.3
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/proto/otlp v1.7.0
Step #0 - "install-dependencies": go: downloading github.com/go-playground/locales v0.14.1
Step #0 - "install-dependencies": go: downloading github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.29.0
Step #0 - "install-dependencies": go: downloading github.com/go-faster/city v1.0.1
Step #0 - "install-dependencies": go: downloading github.com/go-faster/errors v0.7.1
Step #0 - "install-dependencies": go: downloading github.com/pierrec/lz4/v4 v4.1.22
Step #0 - "install-dependencies": go: downloading github.com/segmentio/asm v1.2.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.62.0
Step #0 - "install-dependencies": go: downloading github.com/grpc-ecosystem/go-grpc-middleware v1.4.0
Step #0 - "install-dependencies": go: downloading github.com/jackc/pgpassfile v1.0.0
Step #0 - "install-dependencies": go: downloading github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761
Step #0 - "install-dependencies": go: downloading github.com/hashicorp/go-uuid v1.0.3
Step #0 - "install-dependencies": go: downloading github.com/gorilla/websocket v1.5.3
Step #0 - "install-dependencies": go: downloading github.com/go-logr/stdr v1.2.2
Step #0 - "install-dependencies": go: downloading go.opentelemetry.io/auto/sdk v1.1.0
Step #0 - "install-dependencies": go: downloading github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8
Step #0 - "install-dependencies": go: downloading github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.1
Step #0 - "install-dependencies": go: downloading github.com/google/s2a-go v0.1.9
Step #0 - "install-dependencies": go: downloading github.com/googleapis/enterprise-certificate-proxy v0.3.6
Step #0 - "install-dependencies": go: downloading github.com/jcmturner/aescts/v2 v2.0.0
Step #0 - "install-dependencies": go: downloading github.com/jcmturner/rpc/v2 v2.0.3
Step #0 - "install-dependencies": go: downloading github.com/felixge/httpsnoop v1.0.4
Step #0 - "install-dependencies": go: downloading github.com/envoyproxy/go-control-plane/envoy v1.32.4
Step #0 - "install-dependencies": go: downloading github.com/spiffe/go-spiffe/v2 v2.5.0
Step #0 - "install-dependencies": go: downloading github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443
Step #0 - "install-dependencies": go: downloading github.com/go-jose/go-jose/v4 v4.1.1
Step #0 - "install-dependencies": go: downloading github.com/zeebo/errs v1.4.0
Step #0 - "install-dependencies": go: downloading cel.dev/expr v0.24.0
Step #0 - "install-dependencies": go: downloading github.com/envoyproxy/protoc-gen-validate v1.2.1
Step #0 - "install-dependencies": go: downloading golang.org/x/tools v0.36.0
Step #0 - "install-dependencies": go: downloading golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da
Step #0 - "install-dependencies": go: downloading github.com/google/flatbuffers v25.2.10+incompatible
Step #0 - "install-dependencies": go: downloading golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b
Step #0 - "install-dependencies": go: downloading github.com/xdg-go/scram v1.1.2
Step #0 - "install-dependencies": go: downloading github.com/xdg-go/stringprep v1.0.4
Step #0 - "install-dependencies": go: downloading github.com/montanaflynn/stats v0.7.1
Step #0 - "install-dependencies": go: downloading github.com/goccy/go-json v0.10.5
Step #0 - "install-dependencies": go: downloading github.com/zeebo/xxh3 v1.0.2
Step #0 - "install-dependencies": go: downloading github.com/xdg-go/pbkdf2 v1.0.0
Step #0 - "install-dependencies": go: downloading github.com/klauspost/cpuid/v2 v2.2.11
Step #0 - "install-dependencies": go: downloading github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10
Step #0 - "install-dependencies": go: downloading golang.org/x/mod v0.27.0
Step #0 - "install-dependencies": go: downloading modernc.org/libc v1.66.10
Step #0 - "install-dependencies": go: downloading modernc.org/memory v1.11.0
Step #0 - "install-dependencies": go: downloading github.com/mattn/go-isatty v0.0.20
Step #0 - "install-dependencies": go: downloading github.com/dustin/go-humanize v1.0.1
Step #0 - "install-dependencies": go: downloading github.com/ncruces/go-strftime v0.1.9
Step #0 - "install-dependencies": go: downloading modernc.org/mathutil v1.7.1
Step #0 - "install-dependencies": go: downloading github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec
Finished Step #0 - "install-dependencies"
Starting Step #1 - "compile-test-binary"
Step #1 - "compile-test-binary": Already have image (with digest): golang:1
Step #1 - "compile-test-binary": go: downloading github.com/nakagami/firebirdsql v0.9.15
Step #1 - "compile-test-binary": go: downloading github.com/nakagami/chacha20 v0.1.0
Step #1 - "compile-test-binary": go: downloading github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0
Step #1 - "compile-test-binary": go: downloading gitlab.com/nyarla/go-crypt v0.0.0-20160106005555-d9a5dc2b789b
Step #1 - "compile-test-binary": ?   	github.com/googleapis/genai-toolbox/tests	[no test files]
Finished Step #1 - "compile-test-binary"
Starting Step #19 - "couchbase"
Starting Step #2 - "cloud-sql-pg"
Starting Step #33 - "serverless-spark"
Starting Step #12 - "neo4j"
Starting Step #8 - "dataplex"
Starting Step #7 - "bigquery"
Starting Step #27 - "firebird"
Starting Step #6 - "bigtable"
Starting Step #11 - "spanner"
Starting Step #5 - "alloydb-ai-nl"
Starting Step #4 - "alloydb-pg"
Starting Step #26 - "tidb"
Starting Step #14 - "cloud-sql-mysql"
Starting Step #25 - "cloud-sql"
Starting Step #16 - "mssql"
Starting Step #24 - "looker"
Starting Step #17 - "http"
Step #19 - "couchbase": Already have image (with digest): golang:1
Step #12 - "neo4j": Already have image (with digest): golang:1
Starting Step #23 - "firestore"
Step #2 - "cloud-sql-pg": Already have image (with digest): golang:1
Starting Step #9 - "dataform"
Step #33 - "serverless-spark": Already have image (with digest): golang:1
Step #4 - "alloydb-pg": Already have image (with digest): golang:1
Step #7 - "bigquery": Already have image (with digest): golang:1
Step #27 - "firebird": Already have image (with digest): golang:1
Starting Step #22 - "oceanbase"
Step #6 - "bigtable": Already have image (with digest): golang:1
Starting Step #21 - "valkey"
Step #16 - "mssql": Already have image (with digest): golang:1
Step #24 - "looker": Already have image (with digest): golang:1
Step #11 - "spanner": Already have image (with digest): golang:1
Starting Step #15 - "mysql"
Step #14 - "cloud-sql-mysql": Already have image (with digest): golang:1
Step #26 - "tidb": Already have image (with digest): golang:1
Step #23 - "firestore": Already have image (with digest): golang:1
Step #5 - "alloydb-ai-nl": Already have image (with digest): golang:1
Step #8 - "dataplex": Already have image (with digest): golang:1
Step #25 - "cloud-sql": Already have image (with digest): golang:1
Step #17 - "http": Already have image (with digest): golang:1
Step #21 - "valkey": Already have image (with digest): golang:1
Step #22 - "oceanbase": Already have image (with digest): golang:1
Starting Step #18 - "sqlite"
Starting Step #31 - "cassandra"
Starting Step #20 - "redis"
Step #15 - "mysql": Already have image (with digest): golang:1
Starting Step #10 - "postgres"
Starting Step #32 - "oracle"
Step #9 - "dataform": Already have image (with digest): golang:1
Starting Step #30 - "yugabytedb"
Starting Step #29 - "trino"
Starting Step #13 - "cloud-sql-mssql"
Starting Step #28 - "clickhouse"
Starting Step #3 - "alloydb"
Step #18 - "sqlite": Already have image (with digest): golang:1
Step #31 - "cassandra": Already have image (with digest): golang:1
Step #20 - "redis": Already have image (with digest): golang:1
Step #10 - "postgres": Already have image (with digest): golang:1
Step #13 - "cloud-sql-mssql": Already have image (with digest): golang:1
Step #32 - "oracle": Already have image (with digest): golang:1
Step #30 - "yugabytedb": Already have image (with digest): golang:1
Step #28 - "clickhouse": Already have image (with digest): golang:1
Step #29 - "trino": Already have image (with digest): golang:1
Step #3 - "alloydb": Already have image (with digest): golang:1
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints
Step #8 - "dataplex": === RUN   TestDataplexToolEndpoints
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/get_my-simple-tool
Step #23 - "firestore": 2025-10-28T20:36:50.122315312Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-simple-tool/" method: "GET" path: "/api/tool/my-simple-tool/" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000001"} httpResponse: {status: 200 bytes: 601 elapsed: 0.651170} 
Step #23 - "firestore":     firestore_integration_test.go:205: got map[my-simple-tool:map[authRequired:[] description:Simple tool to test end to end functionality. parameters:[map[authSources:[] description:Array of relative document paths to retrieve from Firestore (e.g., 'users/userId' or 'users/userId/posts/postId'). Note: These are relative paths, NOT absolute paths like 'projects/{project_id}/databases/{database_id}/documents/...' items:map[authSources:[] description:Relative document path name:item required:true type:string] name:documentPaths required:true type:array]]]], want map[my-simple-tool:map[authRequired:[] description:Simple tool to test end to end functionality. parameters:[map[authSources:[] description:Array of document paths to retrieve from Firestore. items:map[authSources:[] description:Document path name:item required:true type:string] name:documentPaths required:true type:array]]]]
Step #23 - "firestore": 2025-10-28T20:36:50.124984791Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000002"} httpResponse: {status: 200 bytes: 196 elapsed: 0.773249} 
Step #23 - "firestore": 2025-10-28T20:36:50.1259738Z INFO Response: 202 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000003"} httpResponse: {status: 202 bytes: 0 elapsed: 0.207120} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/MCP_Invoke_my-param-tool
Step #23 - "firestore": 2025-10-28T20:36:50.162554624Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000004"} httpResponse: {status: 200 bytes: 384 elapsed: 35.468816} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/MCP_Invoke_invalid_tool
Step #23 - "firestore": 2025-10-28T20:36:50.164016264Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000005"} httpResponse: {status: 200 bytes: 131 elapsed: 0.367870} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/MCP_Invoke_my-param-tool_without_parameters
Step #23 - "firestore": 2025-10-28T20:36:50.165323813Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000006"} httpResponse: {status: 200 bytes: 160 elapsed: 0.280470} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/MCP_Invoke_my-auth-required-tool
Step #23 - "firestore": 2025-10-28T20:36:50.166567993Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000007"} httpResponse: {status: 200 bytes: 165 elapsed: 0.262409} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/MCP_Invoke_my-fail-tool
Step #3 - "alloydb": === RUN   TestAlloyDBToolEndpoints
Step #23 - "firestore": 2025-10-28T20:36:50.206279315Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000008"} httpResponse: {status: 200 bytes: 140 elapsed: 38.779003} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/get_single_document
Step #23 - "firestore": 2025-10-28T20:36:50.239467801Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-get-docs/invoke" method: "POST" path: "/api/tool/firestore-get-docs/invoke" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000009"} httpResponse: {status: 200 bytes: 312 elapsed: 31.893406} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/get_multiple_documents
Step #3 - "alloydb": === RUN   TestAlloyDBToolEndpoints/get_my-simple-tool
Step #3 - "alloydb": 2025-10-28T20:36:50.249252977Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-simple-tool/" method: "GET" path: "/api/tool/my-simple-tool/" remoteIP: "127.0.0.1:59888" proto: "HTTP/1.1" requestID: "701fbe686f04/ev2ncE4drf-000001"} httpResponse: {status: 200 bytes: 505 elapsed: 0.484740} 
Step #3 - "alloydb": 2025-10-28T20:36:50.251157326Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59888" proto: "HTTP/1.1" requestID: "701fbe686f04/ev2ncE4drf-000002"} httpResponse: {status: 200 bytes: 196 elapsed: 0.513930} 
Step #3 - "alloydb": 2025-10-28T20:36:50.252224886Z INFO Response: 202 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/mcp" method: "POST" path: "/mcp" remoteIP: "127.0.0.1:59888" proto: "HTTP/1.1" requestID: "701fbe686f04/ev2ncE4drf-000003"} httpResponse: {status: 202 bytes: 0 elapsed: 0.293970} 
Step #3 - "alloydb": === RUN   TestAlloyDBToolEndpoints/MCP_Invoke_my-param-tool
Step #23 - "firestore": 2025-10-28T20:36:50.274606636Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-get-docs/invoke" method: "POST" path: "/api/tool/firestore-get-docs/invoke" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000010"} httpResponse: {status: 200 bytes: 607 elapsed: 34.056465} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/get_non-existent_document
Step #23 - "firestore": 2025-10-28T20:36:50.308454131Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-get-docs/invoke" method: "POST" path: "/api/tool/firestore-get-docs/invoke" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000011"} httpResponse: {status: 200 bytes: 88 elapsed: 32.213705} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/missing_documentPaths_parameter
Step #23 - "firestore": 2025-10-28T20:36:50.309625731Z INFO Response: 400 Client Error service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-get-docs/invoke" method: "POST" path: "/api/tool/firestore-get-docs/invoke" remoteIP: "127.0.0.1:59874" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000012"} httpResponse: {status: 400 bytes: 109 elapsed: 0.244260} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/empty_documentPaths_array
Step #23 - "firestore": 2025-10-28T20:36:50.310952731Z INFO Response: 400 Client Error service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-get-docs/invoke" method: "POST" path: "/api/tool/firestore-get-docs/invoke" remoteIP: "127.0.0.1:59896" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000013"} httpResponse: {status: 400 bytes: 104 elapsed: 0.284289} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/query_collection_with_filter
Step #23 - "firestore": 2025-10-28T20:36:50.354645552Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-query-coll/invoke" method: "POST" path: "/api/tool/firestore-query-coll/invoke" remoteIP: "127.0.0.1:59902" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000014"} httpResponse: {status: 200 bytes: 799 elapsed: 42.804631} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/query_collection_with_orderBy
Step #23 - "firestore": 2025-10-28T20:36:50.391459266Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-query-coll/invoke" method: "POST" path: "/api/tool/firestore-query-coll/invoke" remoteIP: "127.0.0.1:59902" proto: "HTTP/1.1" requestID: "a6053b8d58a3/NXFuLrJa5Y-000015"} httpResponse: {status: 200 bytes: 799 elapsed: 35.782635} 
Step #23 - "firestore": === RUN   TestFirestoreToolEndpoints/query_collection_with_multiple_filters
Step #17 - "http": === RUN   TestHttpToolEndpoints
Step #23 - "firestore": 2025-10-28T20:36:50.426180841Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/firestore-query-coll/invoke" method: "POST" path: "/api/tool/firestore-query-coll/in
...
[Logs truncated due to log size limitations. For full logs, see https://console.cloud.google.com/logs/viewer?advancedFilter=resource.type%3D%22build%22+AND+resource.labels.build_id%3D%2285ea2a7b-b21f-47da-bd4f-252a7b24d8e9%22+AND+resource.labels.build_trigger_id%3D%22785da918-06f1-47bb-860c-fbabc80b5977%22&project=toolbox-testing-438616.]
...
npacking node-escodegen (2.1.0+dfsg+~0.0.8-1) ...
Step #9 - "dataform": Selecting previously unselected package node-commondir.
Step #9 - "dataform": Preparing to unpack .../230-node-commondir_1.0.1+~1.0.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-commondir (1.0.1+~1.0.0-1) ...
Step #9 - "dataform": Selecting previously unselected package node-is-number.
Step #9 - "dataform": Preparing to unpack .../231-node-is-number_7.0.0-4_all.deb ...
Step #9 - "dataform": Unpacking node-is-number (7.0.0-4) ...
Step #9 - "dataform": Selecting previously unselected package node-repeat-string.
Step #9 - "dataform": Preparing to unpack .../232-node-repeat-string_1.6.1+repack-1_all.deb ...
Step #9 - "dataform": Unpacking node-repeat-string (1.6.1+repack-1) ...
Step #9 - "dataform": Selecting previously unselected package node-to-regex-range.
Step #9 - "dataform": Preparing to unpack .../233-node-to-regex-range_5.0.1-4_all.deb ...
Step #9 - "dataform": Unpacking node-to-regex-range (5.0.1-4) ...
Step #9 - "dataform": Selecting previously unselected package node-fill-range.
Step #9 - "dataform": Preparing to unpack .../234-node-fill-range_7.1.1+~7.0.3-1_all.deb ...
Step #9 - "dataform": Unpacking node-fill-range (7.1.1+~7.0.3-1) ...
Step #9 - "dataform": Selecting previously unselected package node-braces.
Step #9 - "dataform": Preparing to unpack .../235-node-braces_3.0.3+~3.0.5-1_all.deb ...
Step #9 - "dataform": Unpacking node-braces (3.0.3+~3.0.5-1) ...
Step #9 - "dataform": Selecting previously unselected package node-normalize-path.
Step #9 - "dataform": Preparing to unpack .../236-node-normalize-path_3.0.0+~3.0.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-normalize-path (3.0.0+~3.0.0-1) ...
Step #9 - "dataform": Selecting previously unselected package node-anymatch.
Step #9 - "dataform": Preparing to unpack .../237-node-anymatch_3.1.3+~cs4.6.1-2_all.deb ...
Step #9 - "dataform": Unpacking node-anymatch (3.1.3+~cs4.6.1-2) ...
Step #9 - "dataform": Selecting previously unselected package node-micromatch.
Step #9 - "dataform": Preparing to unpack .../238-node-micromatch_4.0.7+~4.0.9-1_all.deb ...
Step #9 - "dataform": Unpacking node-micromatch (4.0.7+~4.0.9-1) ...
Step #9 - "dataform": Selecting previously unselected package node-pify.
Step #9 - "dataform": Preparing to unpack .../239-node-pify_5.0.0+~cs5.0.1-1_all.deb ...
Step #9 - "dataform": Unpacking node-pify (5.0.0+~cs5.0.1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-path-type.
Step #9 - "dataform": Preparing to unpack .../240-node-path-type_4.0.0-3_all.deb ...
Step #9 - "dataform": Unpacking node-path-type (4.0.0-3) ...
Step #9 - "dataform": Selecting previously unselected package node-n3.
Step #9 - "dataform": Preparing to unpack .../241-node-n3_1.16.3+~1.2.3+~1.10.4-1_all.deb ...
Step #9 - "dataform": Unpacking node-n3 (1.16.3+~1.2.3+~1.10.4-1) ...
Step #9 - "dataform": Selecting previously unselected package node-slash.
Step #9 - "dataform": Preparing to unpack .../242-node-slash_4.0.0-3_all.deb ...
Step #9 - "dataform": Unpacking node-slash (4.0.0-3) ...
Step #19 - "couchbase": Calculating coverage for Couchbase...
Step #9 - "dataform": Selecting previously unselected package node-globby.
Step #9 - "dataform": Preparing to unpack .../243-node-globby_13.1.3+~cs16.25.40-3_all.deb ...
Step #9 - "dataform": Unpacking node-globby (13.1.3+~cs16.25.40-3) ...
Step #9 - "dataform": Selecting previously unselected package node-graceful-fs.
Step #9 - "dataform": Preparing to unpack .../244-node-graceful-fs_4.2.10-1_all.deb ...
Step #9 - "dataform": Unpacking node-graceful-fs (4.2.10-1) ...
Step #9 - "dataform": Selecting previously unselected package node-is-path-cwd.
Step #9 - "dataform": Preparing to unpack .../245-node-is-path-cwd_2.2.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-is-path-cwd (2.2.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-path-is-inside.
Step #9 - "dataform": Preparing to unpack .../246-node-path-is-inside_1.0.2+~1.0.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-path-is-inside (1.0.2+~1.0.0-1) ...
Step #9 - "dataform": Selecting previously unselected package node-is-path-inside.
Step #9 - "dataform": Preparing to unpack .../247-node-is-path-inside_3.0.3-2_all.deb ...
Step #9 - "dataform": Unpacking node-is-path-inside (3.0.3-2) ...
Step #9 - "dataform": Selecting previously unselected package node-escape-string-regexp.
Step #9 - "dataform": Preparing to unpack .../248-node-escape-string-regexp_4.0.0-2_all.deb ...
Step #19 - "couchbase": Couchbase total coverage: 61.2%
Step #9 - "dataform": Unpacking node-escape-string-regexp (4.0.0-2) ...
Step #19 - "couchbase": Coverage for Couchbase is sufficient.
Step #9 - "dataform": Selecting previously unselected package node-indent-string.
Step #9 - "dataform": Preparing to unpack .../249-node-indent-string_4.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-indent-string (4.0.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-p-map.
Step #9 - "dataform": Preparing to unpack .../250-node-p-map_4.0.0+~3.1.0+~3.0.1-2_all.deb ...
Step #9 - "dataform": Unpacking node-p-map (4.0.0+~3.1.0+~3.0.1-2) ...
Step #9 - "dataform": Selecting previously unselected package node-del.
Step #9 - "dataform": Preparing to unpack .../251-node-del_7.1.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-del (7.1.0-1) ...
Step #9 - "dataform": Selecting previously unselected package node-make-dir.
Step #9 - "dataform": Preparing to unpack .../252-node-make-dir_3.1.0-3_all.deb ...
Step #9 - "dataform": Unpacking node-make-dir (3.1.0-3) ...
Step #9 - "dataform": Selecting previously unselected package node-p-limit.
Step #9 - "dataform": Preparing to unpack .../253-node-p-limit_4.0.0+~cs4.0.0-5_all.deb ...
Step #9 - "dataform": Unpacking node-p-limit (4.0.0+~cs4.0.0-5) ...
Step #9 - "dataform": Selecting previously unselected package node-p-locate.
Step #9 - "dataform": Preparing to unpack .../254-node-p-locate_6.0.0-12_all.deb ...
Step #9 - "dataform": Unpacking node-p-locate (6.0.0-12) ...
Step #9 - "dataform": Selecting previously unselected package node-locate-path.
Step #7 - "bigquery": 2025-10-28T20:37:18.837805318Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-exec-sql-tool/invoke" method: "POST" path: "/api/tool/my-exec-sql-tool/invoke" remoteIP: "127.0.0.1:38920" proto: "HTTP/1.1" requestID: "78cdaea20afb/J4awOn5LiU-000032"} httpResponse: {status: 200 bytes: 44 elapsed: 986.872213} 
Step #7 - "bigquery": === RUN   TestBigQueryToolEndpoints/invoke_my-exec-sql-tool_drop_table
Step #9 - "dataform": Preparing to unpack .../255-node-locate-path_7.1.1-2_all.deb ...
Step #9 - "dataform": Unpacking node-locate-path (7.1.1-2) ...
Step #9 - "dataform": Selecting previously unselected package node-path-exists.
Step #9 - "dataform": Preparing to unpack .../256-node-path-exists_5.0.0-8_all.deb ...
Step #9 - "dataform": Unpacking node-path-exists (5.0.0-8) ...
Step #7 - "bigquery": 2025-10-28T20:37:18.921085433Z INFO Response: 400 Client Error service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-exec-sql-tool/invoke" method: "POST" path: "/api/tool/my-exec-sql-tool/invoke" remoteIP: "127.0.0.1:38920" proto: "HTTP/1.1" requestID: "78cdaea20afb/J4awOn5LiU-000033"} httpResponse: {status: 400 bytes: 215 elapsed: 82.388708} 
Step #7 - "bigquery": === RUN   TestBigQueryToolEndpoints/invoke_my-exec-sql-tool_insert_entry
Step #9 - "dataform": Selecting previously unselected package node-find-up.
Step #9 - "dataform": Preparing to unpack .../257-node-find-up_6.3.0-7_all.deb ...
Step #9 - "dataform": Unpacking node-find-up (6.3.0-7) ...
Step #9 - "dataform": Selecting previously unselected package node-pkg-dir.
Step #9 - "dataform": Preparing to unpack .../258-node-pkg-dir_5.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-pkg-dir (5.0.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-find-cache-dir.
Step #9 - "dataform": Preparing to unpack .../259-node-find-cache-dir_3.3.2+~3.2.1-1_all.deb ...
Step #9 - "dataform": Unpacking node-find-cache-dir (3.3.2+~3.2.1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-signal-exit.
Step #9 - "dataform": Preparing to unpack .../260-node-signal-exit_4.1.0-7_all.deb ...
Step #9 - "dataform": Unpacking node-signal-exit (4.1.0-7) ...
Step #9 - "dataform": Selecting previously unselected package node-foreground-child.
Step #9 - "dataform": Preparing to unpack .../261-node-foreground-child_3.1.1-2_all.deb ...
Step #9 - "dataform": Unpacking node-foreground-child (3.1.1-2) ...
Step #9 - "dataform": Selecting previously unselected package node-is-stream.
Step #9 - "dataform": Preparing to unpack .../262-node-is-stream_3.0.0-4_all.deb ...
Step #9 - "dataform": Unpacking node-is-stream (3.0.0-4) ...
Step #9 - "dataform": Selecting previously unselected package node-is-windows.
Step #9 - "dataform": Preparing to unpack .../263-node-is-windows_1.0.2+~cs1.0.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-is-windows (1.0.2+~cs1.0.0-1) ...
Step #9 - "dataform": Selecting previously unselected package node-ampproject-remapping.
Step #9 - "dataform": Preparing to unpack .../264-node-ampproject-remapping_2.2.0+~cs5.15.37-1_all.deb ...
Step #9 - "dataform": Unpacking node-ampproject-remapping (2.2.0+~cs5.15.37-1) ...
Step #9 - "dataform": Selecting previously unselected package node-sprintf-js.
Step #9 - "dataform": Preparing to unpack .../265-node-sprintf-js_1.1.2+ds1+~1.1.2-1_all.deb ...
Step #9 - "dataform": Unpacking node-sprintf-js (1.1.2+ds1+~1.1.2-1) ...
Step #9 - "dataform": Selecting previously unselected package node-argparse.
Step #9 - "dataform": Preparing to unpack .../266-node-argparse_2.0.1-2_all.deb ...
Step #9 - "dataform": Unpacking node-argparse (2.0.1-2) ...
Step #9 - "dataform": Selecting previously unselected package node-js-yaml.
Step #9 - "dataform": Preparing to unpack .../267-node-js-yaml_4.1.0+dfsg+~4.0.5-7_all.deb ...
Step #9 - "dataform": Unpacking node-js-yaml (4.1.0+dfsg+~4.0.5-7) ...
Step #9 - "dataform": Selecting previously unselected package node-nopt.
Step #9 - "dataform": Preparing to unpack .../268-node-nopt_5.0.0-4_all.deb ...
Step #9 - "dataform": Unpacking node-nopt (5.0.0-4) ...
Step #9 - "dataform": Selecting previously unselected package node-npm-run-path.
Step #9 - "dataform": Preparing to unpack .../269-node-npm-run-path_5.1.0+~4.0.0-8_all.deb ...
Step #9 - "dataform": Unpacking node-npm-run-path (5.1.0+~4.0.0-8) ...
Step #9 - "dataform": Selecting previously unselected package node-shebang-regex.
Step #9 - "dataform": Preparing to unpack .../270-node-shebang-regex_3.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-shebang-regex (3.0.0-2) ...
Step #11 - "spanner": --- PASS: TestSpannerToolEndpoints (28.03s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/get_my-simple-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-simple-tool (0.45s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-tool (0.13s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-tool-by-id_with_nil_response (0.13s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-tool-by-name_with_nil_response (0.05s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-tool_without_parameters (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-tool_with_insufficient_parameters (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-array-tool (0.02s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-tool_with_auth_token (0.04s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-tool_with_invalid_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-tool_without_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-required-tool_with_auth_token (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-required-tool_with_invalid_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-required-tool_without_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-client-auth-tool_with_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-client-auth-tool_without_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-client-auth-tool_with_invalid_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-tool (0.02s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_invalid_tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-tool_without_parameters (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-tool_with_insufficient_parameters (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-auth-required-tool (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-auth-required-tool_with_invalid_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-auth-required-tool_without_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-client-auth-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-client-auth-tool_without_access_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-client-auth-tool_with_invalid_access_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/MCP_Invoke_my-fail-tool (0.02s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_create-table-templateParams-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_insert-table-templateParams-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_insert-table-templateParams-tool#01 (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_select-templateParams-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_select-templateParams-combined-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_select-templateParams-combined-tool_with_no_results (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_select-fields-templateParams-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_select-filter-templateParams-combined-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_drop-table-templateParams-tool (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_list-tables-read-only (0.03s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_list-tables (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool-read-only (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool-read-only_with_data_present_in_table (0.02s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool-read-only_create_table (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool-read-only_drop_table (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool-read-only_insert_entry (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool_without_body (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool_create_table (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool_drop_table (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool_insert_entry (0.03s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/invoke_my-exec-sql-tool_without_body#01 (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-exec-sql-tool_with_auth_token (0.01s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-exec-sql-tool_with_invalid_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/Invoke_my-auth-exec-sql-tool_without_auth_token (0.00s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/list_all_tables_with_detailed_format (0.25s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/list_tables_with_simple_format (0.26s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/list_specific_tables (0.25s)
Step #11 - "spanner":     --- PASS: TestSpannerToolEndpoints/list_non-existent_table (0.01s)
Step #11 - "spanner": PASS
Step #9 - "dataform": Selecting previously unselected package node-shebang-command.
Step #9 - "dataform": Preparing to unpack .../271-node-shebang-command_2.0.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-shebang-command (2.0.0-1) ...
Step #11 - "spanner": coverage: 5.5% of statements in ./internal/sources/..., ./internal/tools/...
Step #9 - "dataform": Selecting previously unselected package node-strip-bom.
Step #9 - "dataform": Preparing to unpack .../272-node-strip-bom_4.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-strip-bom (4.0.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-has-flag.
Step #9 - "dataform": Preparing to unpack .../273-node-has-flag_5.0.1-1_all.deb ...
Step #9 - "dataform": Unpacking node-has-flag (5.0.1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-supports-color.
Step #9 - "dataform": Preparing to unpack .../274-node-supports-color_8.1.1+~8.1.1-1_all.deb ...
Step #9 - "dataform": Unpacking node-supports-color (8.1.1+~8.1.1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-util.
Step #9 - "dataform": Preparing to unpack .../275-node-util_0.12.5+~1.0.10-1_all.deb ...
Step #9 - "dataform": Unpacking node-util (0.12.5+~1.0.10-1) ...
Step #9 - "dataform": Selecting previously unselected package node-assert.
Step #9 - "dataform": Preparing to unpack .../276-node-assert_2.0.0+~cs3.9.8-2_all.deb ...
Step #9 - "dataform": Unpacking node-assert (2.0.0+~cs3.9.8-2) ...
Step #9 - "dataform": Selecting previously unselected package node-babel-plugin-add-module-exports.
Step #9 - "dataform": Preparing to unpack .../277-node-babel-plugin-add-module-exports_1.0.4+dfsg1~cs5.8.0-4_all.deb ...
Step #9 - "dataform": Unpacking node-babel-plugin-add-module-exports (1.0.4+dfsg1~cs5.8.0-4) ...
Step #9 - "dataform": Selecting previously unselected package node-regenerator-runtime.
Step #9 - "dataform": Preparing to unpack .../278-node-regenerator-runtime_0.15.2+~0.10.8-1_all.deb ...
Step #9 - "dataform": Unpacking node-regenerator-runtime (0.15.2+~0.10.8-1) ...
Finished Step #19 - "couchbase"
Step #9 - "dataform": Selecting previously unselected package node-babel7-runtime.
Step #9 - "dataform": Preparing to unpack .../279-node-babel7-runtime_7.20.15+ds1+~cs214.269.168-8_all.deb ...
Step #9 - "dataform": Unpacking node-babel7-runtime (7.20.15+ds1+~cs214.269.168-8) ...
Step #9 - "dataform": Selecting previously unselected package node-babel-helper-define-polyfill-provider.
Step #9 - "dataform": Preparing to unpack .../280-node-babel-helper-define-polyfill-provider_0.3.3~0~20220913+ds1-1_all.deb ...
Step #9 - "dataform": Unpacking node-babel-helper-define-polyfill-provider (0.3.3~0~20220913+ds1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-babel-plugin-polyfill-corejs2.
Step #9 - "dataform": Preparing to unpack .../281-node-babel-plugin-polyfill-corejs2_0.3.3~0~20220913+ds1-1_all.deb ...
Step #9 - "dataform": Unpacking node-babel-plugin-polyfill-corejs2 (0.3.3~0~20220913+ds1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-caniuse-lite.
Step #9 - "dataform": Preparing to unpack .../282-node-caniuse-lite_1.0.30001723+dfsg+~1.0.5-1_all.deb ...
Step #9 - "dataform": Unpacking node-caniuse-lite (1.0.30001723+dfsg+~1.0.5-1) ...
Step #9 - "dataform": Selecting previously unselected package node-electron-to-chromium.
Step #9 - "dataform": Preparing to unpack .../283-node-electron-to-chromium_1.5.166-1_all.deb ...
Step #9 - "dataform": Unpacking node-electron-to-chromium (1.5.166-1) ...
Step #9 - "dataform": Selecting previously unselected package node-picocolors.
Step #9 - "dataform": Preparing to unpack .../284-node-picocolors_1.0.0-4_all.deb ...
Step #9 - "dataform": Unpacking node-picocolors (1.0.0-4) ...
Step #9 - "dataform": Selecting previously unselected package node-browserslist.
Step #9 - "dataform": Preparing to unpack .../285-node-browserslist_4.25.0+~cs6.3.22-1_all.deb ...
Step #9 - "dataform": Unpacking node-browserslist (4.25.0+~cs6.3.22-1) ...
Step #9 - "dataform": Selecting previously unselected package node-core-js-compat.
Step #9 - "dataform": Preparing to unpack .../286-node-core-js-compat_3.33.2-1_all.deb ...
Step #9 - "dataform": Unpacking node-core-js-compat (3.33.2-1) ...
Step #9 - "dataform": Selecting previously unselected package node-babel-plugin-polyfill-corejs3.
Step #9 - "dataform": Preparing to unpack .../287-node-babel-plugin-polyfill-corejs3_0.6.0~0~20220913+ds1-1_all.deb ...
Step #9 - "dataform": Unpacking node-babel-plugin-polyfill-corejs3 (0.6.0~0~20220913+ds1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-babel-plugin-polyfill-regenerator.
Step #9 - "dataform": Preparing to unpack .../288-node-babel-plugin-polyfill-regenerator_0.4.1~0~20220913+ds1-1_all.deb ...
Step #9 - "dataform": Unpacking node-babel-plugin-polyfill-regenerator (0.4.1~0~20220913+ds1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-color-name.
Step #9 - "dataform": Preparing to unpack .../289-node-color-name_1.1.4+~1.1.1-2_all.deb ...
Step #9 - "dataform": Unpacking node-color-name (1.1.4+~1.1.1-2) ...
Step #9 - "dataform": Selecting previously unselected package node-color-convert.
Step #9 - "dataform": Preparing to unpack .../290-node-color-convert_2.0.1+~cs2.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-color-convert (2.0.1+~cs2.0.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-ansi-styles.
Step #9 - "dataform": Preparing to unpack .../291-node-ansi-styles_6.2.1-3_all.deb ...
Step #9 - "dataform": Unpacking node-ansi-styles (6.2.1-3) ...
Step #9 - "dataform": Selecting previously unselected package node-chalk.
Step #9 - "dataform": Preparing to unpack .../292-node-chalk_5.3.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-chalk (5.3.0-1) ...
Step #9 - "dataform": Selecting previously unselected package node-for-in.
Step #9 - "dataform": Preparing to unpack .../293-node-for-in_1.0.2-4_all.deb ...
Step #9 - "dataform": Unpacking node-for-in (1.0.2-4) ...
Step #9 - "dataform": Selecting previously unselected package node-for-own.
Step #9 - "dataform": Preparing to unpack .../294-node-for-own_1.0.0-3_all.deb ...
Step #9 - "dataform": Unpacking node-for-own (1.0.0-3) ...
Step #9 - "dataform": Selecting previously unselected package node-is-plain-object.
Step #9 - "dataform": Preparing to unpack .../295-node-is-plain-object_5.0.0-7_all.deb ...
Step #9 - "dataform": Unpacking node-is-plain-object (5.0.0-7) ...
Step #9 - "dataform": Selecting previously unselected package node-is-extendable.
Step #9 - "dataform": Preparing to unpack .../296-node-is-extendable_1.0.1-3_all.deb ...
Step #9 - "dataform": Unpacking node-is-extendable (1.0.1-3) ...
Step #9 - "dataform": Selecting previously unselected package node-clone-deep.
Step #9 - "dataform": Preparing to unpack .../297-node-clone-deep_4.0.1+~cs7.0.2-1_all.deb ...
Step #9 - "dataform": Unpacking node-clone-deep (4.0.1+~cs7.0.2-1) ...
Step #9 - "dataform": Selecting previously unselected package node-commander.
Step #9 - "dataform": Preparing to unpack .../298-node-commander_9.4.1-1_all.deb ...
Step #9 - "dataform": Unpacking node-commander (9.4.1-1) ...
Step #9 - "dataform": Selecting previously unselected package node-core-js.
Step #9 - "dataform": Preparing to unpack .../299-node-core-js_3.33.2-1_all.deb ...
Step #9 - "dataform": Unpacking node-core-js (3.33.2-1) ...
Step #11 - "spanner": Calculating coverage for Spanner...
Step #7 - "bigquery": 2025-10-28T20:37:21.058397849Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-exec-sql-tool/invoke" method: "POST" path: "/api/tool/my-exec-sql-tool/invoke" remoteIP: "127.0.0.1:38930" proto: "HTTP/1.1" requestID: "78cdaea20afb/J4awOn5LiU-000034"} httpResponse: {status: 200 bytes: 70 elapsed: 2136.117318} 
Step #7 - "bigquery": === RUN   TestBigQueryToolEndpoints/invoke_my-exec-sql-tool_without_body#01
Step #7 - "bigquery": 2025-10-28T20:37:21.05981086Z INFO Response: 400 Client Error service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-exec-sql-tool/invoke" method: "POST" path: "/api/tool/my-exec-sql-tool/invoke" remoteIP: "127.0.0.1:38930" proto: "HTTP/1.1" requestID: "78cdaea20afb/J4awOn5LiU-000035"} httpResponse: {status: 400 bytes: 99 elapsed: 0.243477} 
Step #7 - "bigquery": === RUN   TestBigQueryToolEndpoints/Invoke_my-auth-exec-sql-tool_with_auth_token
Step #11 - "spanner": Spanner total coverage: 84.1%
Step #11 - "spanner": Coverage for Spanner is sufficient.
Step #9 - "dataform": Selecting previously unselected package node-core-js-pure.
Step #9 - "dataform": Preparing to unpack .../300-node-core-js-pure_3.33.2-1_all.deb ...
Step #9 - "dataform": Unpacking node-core-js-pure (3.33.2-1) ...
Step #9 - "dataform": Selecting previously unselected package node-fs-readdir-recursive.
Step #9 - "dataform": Preparing to unpack .../301-node-fs-readdir-recursive_1.1.0+~1.1.0-1_all.deb ...
Step #9 - "dataform": Unpacking node-fs-readdir-recursive (1.1.0+~1.1.0-1) ...
Step #9 - "dataform": Selecting previously unselected package node-js-tokens.
Step #9 - "dataform": Preparing to unpack .../302-node-js-tokens_8.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-js-tokens (8.0.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-jsesc.
Step #9 - "dataform": Preparing to unpack .../303-node-jsesc_3.0.2+~3.0.1-1_all.deb ...
Step #9 - "dataform": Unpacking node-jsesc (3.0.2+~3.0.1-1) ...
Step #7 - "bigquery": 2025-10-28T20:37:21.738610014Z INFO Response: 200 OK service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-auth-exec-sql-tool/invoke" method: "POST" path: "/api/tool/my-auth-exec-sql-tool/invoke" remoteIP: "127.0.0.1:38936" proto: "HTTP/1.1" requestID: "78cdaea20afb/J4awOn5LiU-000036"} httpResponse: {status: 200 bytes: 27 elapsed: 677.612604} 
Step #7 - "bigquery": === RUN   TestBigQueryToolEndpoints/Invoke_my-auth-exec-sql-tool_with_invalid_auth_token
Step #9 - "dataform": Selecting previously unselected package node-json5.
Step #7 - "bigquery": 2025-10-28T20:37:21.741921082Z INFO Response: 401 Client Error service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-auth-exec-sql-tool/invoke" method: "POST" path: "/api/tool/my-auth-exec-sql-tool/invoke" remoteIP: "127.0.0.1:38936" proto: "HTTP/1.1" requestID: "78cdaea20afb/J4awOn5LiU-000037"} httpResponse: {status: 401 bytes: 119 elapsed: 0.209915} 
Step #7 - "bigquery": === RUN   TestBigQueryToolEndpoints/Invoke_my-auth-exec-sql-tool_without_auth_token
Step #7 - "bigquery": 2025-10-28T20:37:21.743351599Z INFO Response: 401 Client Error service: "httplog" httpRequest: {url: "http://127.0.0.1:5000/api/tool/my-auth-exec-sql-tool/invoke" method: "POST" path: "/api/tool/my-auth-exec-sql-tool/invoke" remoteIP: "127.0.0.1:60310" proto: "HTTP/1.1" requestID: "78cdaea20afb/J4awOn5LiU-000038"} httpResponse: {status: 401 bytes: 119 elapsed: 0.145828} 
Step #7 - "bigquery": === RUN   TestBigQueryToolEndpoints/Invoke_my-client-auth-exec-sql-tool_with_auth_token
Step #9 - "dataform": Preparing to unpack .../304-node-json5_2.2.3+dfsg-1_all.deb ...
Step #9 - "dataform": Unpacking node-json5 (2.2.3+dfsg-1) ...
Step #9 - "dataform": Selecting previously unselected package node-quick-lru.
Step #9 - "dataform": Preparing to unpack .../305-node-quick-lru_6.1.1-4_all.deb ...
Step #9 - "dataform": Unpacking node-quick-lru (6.1.1-4) ...
Step #9 - "dataform": Selecting previously unselected package node-regenerator-transform.
Step #9 - "dataform": Preparing to unpack .../306-node-regenerator-transform_0.15.2+~0.10.8-1_all.deb ...
Step #9 - "dataform": Unpacking node-regenerator-transform (0.15.2+~0.10.8-1) ...
Step #9 - "dataform": Selecting previously unselected package node-regjsgen.
Step #9 - "dataform": Preparing to unpack .../307-node-regjsgen_0.7.1+ds-1_all.deb ...
Step #9 - "dataform": Unpacking node-regjsgen (0.7.1+ds-1) ...
Step #9 - "dataform": Selecting previously unselected package node-regjsparser.
Step #9 - "dataform": Preparing to unpack .../308-node-regjsparser_0.9.1+ds-2_all.deb ...
Step #9 - "dataform": Unpacking node-regjsparser (0.9.1+ds-2) ...
Step #9 - "dataform": Selecting previously unselected package node-unicode-canonical-property-names-ecmascript.
Step #9 - "dataform": Preparing to unpack .../309-node-unicode-canonical-property-names-ecmascript_2.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-unicode-canonical-property-names-ecmascript (2.0.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-unicode-property-aliases-ecmascript.
Step #9 - "dataform": Preparing to unpack .../310-node-unicode-property-aliases-ecmascript_2.1.0+ds-1_all.deb ...
Step #9 - "dataform": Unpacking node-unicode-property-aliases-ecmascript (2.1.0+ds-1) ...
Step #9 - "dataform": Selecting previously unselected package node-unicode-match-property-ecmascript.
Step #9 - "dataform": Preparing to unpack .../311-node-unicode-match-property-ecmascript_2.0.0-2_all.deb ...
Step #9 - "dataform": Unpacking node-unicode-match-property-ecmascript (2.0.0-2) ...
Step #9 - "dataform": Selecting previously unselected package node-unicode-match-property-value-ecmascript.
Step #9 - "dataform": Preparing to unpack .../312-node-unicode-match-property-value-ecmascript_2.1.0+ds-1_all.deb ...
Step #9 - "dataform": Unpacking node-unicode-match-property-value-ecmascript (2.1.0+ds-1) ...
Step #9 - "dataform": Selecting previously unselected package node-regexpu-core.
Step #9 - "dataform": Preparing to unpack .../313-node-regexpu-core_5.2.2-3_all.deb ...

Build Log: https://console.cloud.google.com/logs/viewer?advancedFilter=resource.type%3D%22build%22+AND+resource.labels.build_id%3D%2285ea2a7b-b21f-47da-bd4f-252a7b24d8e9%22+AND+resource.labels.build_trigger_id%3D%22785da918-06f1-47bb-860c-fbabc80b5977%22&project=toolbox-testing-438616