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

TykTechnologies / tyk / 7247
39%
master: %

Build:
Build:
LAST BUILD BRANCH: v2.9.4.8
DEFAULT BRANCH: master
Ran 30 Aug 2019 10:50AM UTC
Jobs 1
Files 81
Run time 10s
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

pending completion
7247

push

travis-ci

Tyk Bot
 tcp proxy (#2426)

The current code adds initial code for TCP proxy which multiplex to different services. 

Additionally refactored all code related to how we start a web server, in particular now you can run multiple APIs on different ports, and Tyk will dynamically open or close port listeners.

Added 2 new fields to API definition: `listen_port` and `protocol`. 
Valid protocol values: "", "http", "https", "tcp", "tls". 
By default, protocol is selected based on `http_server_options.use_ssl`, and can be either http or https.

Additionally in order to tell that your upstream should be `tcp` or `tls` one, in target URL you can specify protocol like this: "tls://upstream:<port>". So you can have GW listening on TLS, but pointing to TCP upstreaming, or the other way. 

Example service description:
```
"listen_port": 30001,
"protocol": "tls",
"certificate": ["<cert-id>"],
"proxy": {
    "target_url": "tls://upstream:9191"
}
```

All the TLS related features, like mutual TLS or certificate pinning work as expected. 

Adding "listen_port", means that you can now start HTTPS server on one port, HTTP on another port, and some TCP services on another port as well. The only requirement that each port should serve the same protocol (GW has checks preventing it).

Additionally, TCP proxying, support multiplexing based on SNI information, e.g. you can serve multiple TCP services on different domains, pointing to different upstream. 

- [x] Analytics support
- [x] ~Way to specific fixed ports and protocols they are support~Way to specific fixed ports and protocols they don't  support
- [x] Support load balancing and service discovery
- [x] Health checks
- [x] Graceful restarts
- [x] Proxy protocol https://github.com/TykTechnologies/tyk/issues/2300

(cherry picked from commit 56de48ca4)

9678 of 16124 relevant lines covered (60.02%)

136.49 hits per line

Jobs
ID Job ID Ran Files Coverage
2 7247.2 (LATEST_GO=true) 30 Aug 2019 10:50AM UTC 0
60.02
Travis Job 7247.2
Source Files on build 7247
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #7247
  • 8187ba79 on github
  • Prev Build on release-2.9 (#7245)
  • Next Build on release-2.9 (#7276)
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

© 2025 Coveralls, Inc