• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

m-lab / ndt7-client-go
71%
main: 71%

Build:
Build:
LAST BUILD BRANCH: fix/version
DEFAULT BRANCH: main
Repo Added 04 May 2019 08:48AM UTC
Files 13
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH feat/cri
branch: feat/cri
CHANGE BRANCH
x
Reset
  • feat/cri
  • KwadroNaut-patch-1
  • allow-suffixed-paths
  • bassosimone-patch-1
  • chore/updatedeps
  • dependabot/go_modules/github.com/prometheus/client_golang-1.11.1
  • dependabot/go_modules/golang.org/x/crypto-0.1.0
  • dependabot/go_modules/golang.org/x/sys-0.1.0
  • develop
  • feat/update-deps
  • feature/counterflowupload
  • feature/go
  • feature/go.mod
  • feature/install_instructions
  • feature/mlabns
  • feature/openssl2
  • feature/readme
  • feature/spec-v0.8.0
  • fix/extensibility
  • fix/help
  • fix/misspells
  • fix/version
  • issue/15
  • issue/16
  • issue/34
  • main
  • master
  • mm-patches
  • netreplica-branch2
  • normalize-newjson
  • patch-1
  • sandbox-cristinaleon-1.20
  • sandbox-kinkade
  • sandbox-roberto-bump-version
  • sandbox-roberto-detect-arch
  • sandbox-roberto-fix-test
  • sandbox-roberto-improve-summary
  • sandbox-roberto-latency-on-upload
  • sandbox-roberto-message-scaling
  • sandbox-roberto-override-clientname
  • sandbox-roberto-remove-memory-alloc
  • sandbox-roberto-rename-flag
  • sandbox-roberto-retry-loop
  • sandbox-roberto-server-side-measurement
  • sandbox-roberto-summary
  • sandbox-roberto-update-go-dep
  • sandbox-roberto-update-readme
  • sandbox-roberto-update-version
  • sandbox-roberto-use-minrtt
  • sandbox-saied-go118
  • sandbox-soltesz
  • sandbox-soltesz-argsfromenv
  • sandbox-soltesz-locate-v2
  • stephen-soltesz-patch-1
  • stephen-soltesz-patch-2
  • v0.1.0
  • v0.2.0
  • v0.3.0
  • v0.4.0
  • v0.4.1
  • v0.5.0
  • v0.6.0
  • v0.6.1
  • v0.6.2
  • v0.7.0
  • x

19 Jan 2026 09:04PM UTC coverage: 71.385% (+0.7%) from 70.637%
21151399754

Pull #107

github

bassosimone
feat(cmd/ndt7-client): add client-integration token support

This commit implements client-integration registration support in
the ndt7 Go client command, completing the Go-side component of the
client-integration registration system.

The following design is being implemented (from token-exchange
https://github.com/m-lab/token-exchange/pull/7):

1. Organizations maintaining client integrations register with the system
and obtain API keys

2. The organization provisions a backend that stores its API keys

3. The backend receives queries from clients when they initiate a test

4. The backend queries m-lab/token-exchange to exchange an API key for
a short-lived JWT

5. The backend returns the JWT to the client

6. The client queries m-lab/locate, including the JWT via the Authorization
header

7. m-lab/locate uses the JWT to route the client and perform accounting/access
control

8. The JWT is included in URLs to m-lab/ndt-server for access control

This commit implements step 6, adding a new optional flag `-locate.token
<token>` that enables registered integrators to provide a JWT obtained
from their backend.

**BYOT (Bring Your Own Token) Design**

The library follows a "bring your own token" model where integrators
are responsible for token acquisition (steps 3-5) and ndt7-client-go
is responsible only for token usage (step 6). This maintains separation
of concerns: integrators control their own authentication and security
posture, while the measurement library focuses on network testing.

When `-locate.token <token>` is provided:

- The client uses the priority endpoint `/v2/priority/nearest` instead
of `/v2/nearest`, enabling registered integrations to receive higher
rate limits and priority server selection. If `-locate.url <url>` was
explicitly provided, the URL path is not modified (on the assumption
that the user wants full control -- see discussion below)

- The token is included as an `Authorization: Bearer <token>` header in
requests to the ... (continued)
Pull Request #107: feat(cmd/ndt7-client): add client-integration token support

42 of 42 new or added lines in 2 files covered. (100.0%)

701 of 982 relevant lines covered (71.38%)

16798.88 hits per line

Relevant lines Covered
Build:
Build:
982 RELEVANT LINES 701 COVERED LINES
16798.88 HITS PER LINE
Source Files on feat/cri
  • Tree
  • List 13
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
21151399754 feat/cri feat(cmd/ndt7-client): add client-integration token support This commit implements client-integration registration support in the ndt7 Go client command, completing the Go-side component of the client-integration registration system. The followi... Pull #107 19 Jan 2026 09:06PM UTC bassosimone github
71.38
See All Builds (466)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc