blob: 43ae56ff0b5446404761bc088c294d0afa9b7307 [file] [log] [blame] [edit]
include ../make/bazel.mk
include ../kube/kube.mk
.PHONY: default
default:
bazel build cmd/...
# Run a spanner emulator locally.
run_spanner_emulator:
docker ps -q | xargs -r docker rm -vf
docker run -d -p 5432:5432 gcr.io/cloud-spanner-pg-adapter/pgadapter-emulator:latest
run_cockroachdb_emulators:
../scripts/run_emulators/run_emulators start
# Requires the CockroachDB emulator to be running.
# `cockroach start-single-node --insecure`
generate_sql_schema:
cd ./go/sql/schema; go run ../exporter/tosql --output_file sql.go --output_pkg schema
go run ./go/sql/exportschema --out ./go/sql/expectedschema/schema.json
# Requires the Spanner emulator to be running.
generate_sql_schema_spanner:
cd ./go/sql/schema; go run ../exporter/tosql --output_file ./spanner/sql_spanner.go --output_pkg spanner --schemaTarget spanner
go run ./go/sql/exportschema --out ./go/sql/expectedschema/schema_spanner.json --databaseType spanner
.PHONY: frontend
frontend:
# Makes sure all the frontend pages and tests compile.
bazel build modules/...
# Build the gold-frontend container with Bazel and push it to GCR.
.PHONY: release_frontend_container
release_frontend_container:
$(BAZEL) run --config=mayberemote //golden:push_gold_frontend_container
# Build the gold-baseline-server container with Bazel and push it to GCR.
.PHONY: release_baseline_server_container
release_baseline_server_container:
$(BAZEL) run --config=mayberemote //golden:push_baseline_server_container
# Build the gold-diffcalculator container with Bazel and push it to GCR.
.PHONY: release_diffcalculator_container
release_diffcalculator_container:
$(BAZEL) run --config=mayberemote //golden:push_diffcalculator_container
# Build the gold-gitilesfollower container with Bazel and push it to GCR.
.PHONY: release_gitilesfollower_container
release_gitilesfollower_container:
$(BAZEL) run --config=mayberemote //golden:push_gitilesfollower_container
# Build the gold-ingestion container with Bazel and push it to GCR.
.PHONY: release_ingestion_container
release_ingestion_container:
$(BAZEL) run --config=mayberemote //golden:push_gold_ingestion_container
# Build the gold-periodictasks container with Bazel and push it to GCR.
.PHONY: release_periodictasks_container
release_periodictasks_container:
$(BAZEL) run --config=mayberemote //golden:push_periodictasks_container
.PHONY: mocks
mocks:
go generate ./...
# Run auth proxy (port 8003) in front of the local gold instance (port 8000).
.PHONY: run_auth_proxy_before_local_instance
run_auth_proxy_before_local_instance:
$(BAZEL) run --config=mayberemote //kube/cmd/auth-proxy -- \
--prom-port=:20003 \
--role=editor=google.com \
--authtype=mocked \
--mock_user=$(USER)@google.com \
--port=:8003 \
--target_port=http://127.0.0.1:8000 \
--local
run_local_frontend: run-spanner-emulator
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local --database_url="postgresql://localhost:5432/gold?sslmode=disable" --spanner
../_bazel_bin/golden/cmd/gold_frontend/gold_frontend_/gold_frontend \
--common_instance_config=./k8s-instances/local/local.json5 \
--config=./k8s-instances/local/local-frontend.json5
run_local_frontend_cdb:
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local
../_bazel_bin/golden/cmd/gold_frontend/gold_frontend_/gold_frontend \
--common_instance_config=./k8s-instances/local/local.json5 \
--config=./k8s-instances/local/local-frontend.json5
run_local_frontend: run_spanner_emulator run_local_frontend_spanner
run_local_periodictasks: run_spanner_emulator
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local --database_url="postgresql://localhost:5432/gold?sslmode=disable" --spanner
../_bazel_bin/golden/cmd/periodictasks/periodictasks_/periodictasks \
--common_instance_config=./k8s-instances/local/local.json5 \
--config=./k8s-instances/local/local-periodictasks.json5 \
--local
run_local_periodictasks_cdb:
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local
../_bazel_bin/golden/cmd/periodictasks/periodictasks_/periodictasks \
--common_instance_config=./k8s-instances/local/local-cdb.json5 \
--config=./k8s-instances/local/local-periodictasks.json5 \
--local
run_local_gitiles_follower: run_spanner_emulator
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local --database_url="postgresql://localhost:5432/gold?sslmode=disable" --spanner
../_bazel_bin/golden/cmd/gitilesfollower/gitilesfollower_/gitilesfollower \
--common_instance_config=./k8s-instances/local/local.json5 \
--config=./k8s-instances/local/local-gitilesfollower.json5
run_local_gitiles_follower_cdb:
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local
../_bazel_bin/golden/cmd/gitilesfollower/gitilesfollower_/gitilesfollower \
--common_instance_config=./k8s-instances/local/local-cdb.json5 \
--config=./k8s-instances/local/local-gitilesfollower.json5
run_local_gold_ingestion: run_spanner_emulator
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local --database_url="postgresql://localhost:5432/gold?sslmode=disable" --spanner
../_bazel_bin/golden/cmd/gold_ingestion/gold_ingestion_/gold_ingestion \
--common_instance_config=./k8s-instances/local/local.json5 \
--config=./k8s-instances/local/local-ingestion.json5
run_local_gold_ingestion_cdb:
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local
../_bazel_bin/golden/cmd/gold_ingestion/gold_ingestion_/gold_ingestion \
--common_instance_config=./k8s-instances/local/local-cdb.json5 \
--config=./k8s-instances/local/local-ingestion.json5
run_local_diffcalculator: run-spanner-emulator
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local --database_url="postgresql://localhost:5432/gold?sslmode=disable" --spanner
GOLD_DIFFCALC_IMAGESOURCE_TYPE=LOCAL ../_bazel_bin/golden/cmd/diffcalculator/diffcalculator_/diffcalculator \
--common_instance_config=./k8s-instances/local/local.json5 \
--config=./k8s-instances/local/local-diffcalculator.json5
run_local_diffcalculator_cdb:
$(BAZEL) build --config=mayberemote -c dbg //golden/...
go run ./go/local
GOLD_DIFFCALC_IMAGESOURCE_TYPE=LOCAL ../_bazel_bin/golden/cmd/diffcalculator/diffcalculator_/diffcalculator \
--common_instance_config=./k8s-instances/local/local-cdb.json5 \
--config=./k8s-instances/local/local-diffcalculator.json5