/locate

M-Lab Locate Service, a load balancer providing consistent “expected measurement quality” using access control

Primary LanguageGoApache License 2.0Apache-2.0

locate

Version Build Status Coverage Status GoDoc Go Report Card

M-Lab Locate Service, a load balancer providing consistent “expected measurement quality” using access control.

Local Development

Typically the locate service will run within a GCP environment, either AppEngine or GKE. In these cases, the locate service reads signer and verifier keys from GCP's secret manager. This dependency is not needed for local development.

Create JSON Web Keys for local development:

jwk-keygen --use=sig --alg=EdDSA --kid=localdev_20220415

You may reuse the same key for signer and verifier, or create multiple keys.

./locate \
    -key-source=local \
    -signer-secret-name ./jwk_sig_EdDSA_localdev_20220415 \
    -verify-secret-name ./jwk_sig_EdDSA_localdev_20220415.pub

Now you may visit localhost:8080 in your browser to see a response generating access_tokens using these keys. Of course, the URLs returns will not be valid for the public platform.