run := "bazel run --config=quiet" # default rule, lists available rules default: list # list available rules list: @just --list --list-prefix ' -- ' chariot port: kubectl port-forward -n chariot deployment/chariot {{port}}:8080 sql-proxy port instance impersonate="" : {{run}} //hack/tools:cloud_sql_proxy -- {{instance}} \ -i \ -p {{port}} \ {{ if impersonate != "" {"--impersonate-service-account='" + impersonate + "'"} else {""} }} \ --auto-iam-authn alias cloud_sql_proxy := sql-proxy alias cloud-sql := sql-proxy sql-proxy-dev0 port: just sql-proxy {{port}} "ret-edge-dev0-foreman:us-central1:edge-dev0" bff-sa@ret-edge-dev0-foreman.iam.gserviceaccount.com sql-proxy-dev1 port: just sql-proxy {{port}} "ret-edge-dev1-foreman:us-east1:edge-dev1-migrated" bff-sa@ret-edge-dev1-foreman.iam.gserviceaccount.com # Connection to use the readonly user with user/pw combo sql-proxy-dev1-readonly port: just sql-proxy {{port}} "ret-edge-dev1-foreman:us-east1:edge-dev1-migrated" sql-proxy-stage1 port: just sql-proxy {{port}} "ret-edge-stage1-foreman:us-east1:edge-stage1-migrated" bff-sa@ret-edge-stage1-foreman.iam.gserviceaccount.com sql-proxy-stage2 port: just sql-proxy {{port}} "ret-edge-stage2-foreman:us-east1:edge-stage2-migrated" bff-sa@ret-edge-stage2-foreman.iam.gserviceaccount.com sql-proxy-prod port: just sql-proxy {{port}} "ret-edge-prod1-foreman:us-east1:edge-prod1-migrated" bff-sa@ret-edge-prod1-foreman.iam.gserviceaccount.com sql-proxy-sandbox port: just sql-proxy {{port}} "ret-edge-dev-sandbox1:us-central1:apiplayground" apiplayground-db-user@ret-edge-dev-sandbox1.iam.gserviceaccount.com sql-proxy-backend-sandbox port: just sql-proxy {{port}} "ret-edge-backend-sandbox0:us-east1:backend-sandbox0-migrated" bff-sa@ret-edge-backend-sandbox0.iam.gserviceaccount.com sql-proxy-napac1 port: just sql-proxy {{port}} "ret-edge-napac1-foreman:asia-southeast1:edge-napac1-migrated" bff-sa@ret-edge-napac1-foreman.iam.gserviceaccount.com sql-proxy-emea1 port: just sql-proxy {{port}} "ret-edge-emea1-foreman:europe-west1:edge-emea1-migrated" bff-sa@ret-edge-emea1-foreman.iam.gserviceaccount.com generate-mocks: #!/usr/bin/env bash set -e GENTARGETS=($(bazel query 'filter(".*gomock$", //pkg/...)')) for target in "${GENTARGETS[@]}" do {{run}} "${target}" done {{run}} //:gazelle alias update-mocks := generate-mocks generate-gql: {{run}} graph:gqlgen alias update-gql := generate-gql # verifies graphql generation output is up-to-date verify-gql: #!/usr/bin/env bash set -eu just update-gql if [ -z "$(git status --porcelain)" ]; then echo 'graphql code generation is up-to-date' else echo 'graphql code generation is not up-to-date, run just update-gql' echo 'the following files are not up-to-date:' git status exit 1 fi sandbox_project_id := "ret-edge-backend-sandbox0" sandbox_warehouse_repo := "us-east1-docker.pkg.dev/" + sandbox_project_id + "/warehouse" edge_infra_path := `bazel info workspace` lift_path := edge_infra_path + "/" + `bazel build //cmd/f8n/warehouse/lift && bazel cquery --output=files //cmd/f8n/warehouse/lift` lift_env := "WAREHOUSE_PATH=" + edge_infra_path + " WAREHOUSE_REPO=" + sandbox_warehouse_repo lift := "cd " + edge_infra_path + " && " + lift_env + " " + lift_path default_tag := "latest" # modify the `hack/build/rules/container/BUILD.bazel` file so lift pushes to the sandbox artifact registry repositories. modify-hack-build-rules-container-for-lift-pack-push: #!/usr/bin/env bash set -euxo pipefail cd {{edge_infra_path}}/hack/build/rules/container cat BUILD.bazel | sed "s/ret-edge-pltf-infra/{{sandbox_project_id}}/g" | tee BUILD.bazel > /dev/null lift-pack pallet tag=default_tag: #!/usr/bin/env bash set -euxo pipefail # defer cleanup of the BUILD.bazel file trap "git -C {{edge_infra_path}} checkout -- hack/build/rules/container/BUILD.bazel" EXIT just modify-hack-build-rules-container-for-lift-pack-push {{lift}} pack --push --tag="{{tag}}" {{pallet}}