Adds basic GH Workflow that runs tests on push and pr, coverage
is disabled.
The intention is to soft switch to GH Actions by just letting them
run next to travs for a while to get a feel for things
Signed-off-by: R.I.Pienaar <rip@devco.net>
Websocket support can be enabled with a new websocket
configuration block:
```
websocket {
# Specify a host and port to listen for websocket connections
# listen: "host:port"
# It can also be configured with individual parameters,
# namely host and port.
# host: "hostname"
# port: 4443
# This will optionally specify what host:port for websocket
# connections to be advertised in the cluster
# advertise: "host:port"
# TLS configuration is required
tls {
cert_file: "/path/to/cert.pem"
key_file: "/path/to/key.pem"
}
# If same_origin is true, then the Origin header of the
# client request must match the request's Host.
# same_origin: true
# This list specifies the only accepted values for
# the client's request Origin header. The scheme,
# host and port must match. By convention, the
# absence of port for an http:// scheme will be 80,
# and for https:// will be 443.
# allowed_origins [
# "http://www.example.com"
# "https://www.other-example.com"
# ]
# This enables support for compressed websocket frames
# in the server. For compression to be used, both server
# and client have to support it.
# compression: true
# This is the total time allowed for the server to
# read the client request and write the response back
# to the client. This include the time needed for the
# TLS handshake.
# handshake_timeout: "2s"
}
```
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
when go json marshal a unset []string it puts
null in the body and not [] which then makes
it an invalid list of strings.
Signed-off-by: R.I.Pienaar <rip@devco.net>
Also standardise some names of response structures and create
reusable types that can be included into others to construct
our standard API requests and responses.
Fixes some json tags.
Updates the design document of the JSON responses to reflect
the implementation that was done
Signed-off-by: R.I.Pienaar <rip@devco.net>
We were using a sync.Map. This did provide a benefit with massive contention from lots of Go routines. However this is only about 2x in the crazy extremes now and with a normal map and read locks we can assist the RemoveBatch which was a cause for performance issues.
Signed-off-by: Derek Collison <derek@nats.io>