Commit Graph

594 Commits

Author SHA1 Message Date
Tyler Treat
1e964e4aab Address CR feedback 2017-06-14 16:48:11 -05:00
Tyler Treat
e4ccaa25bd Remove unused switch case 2017-06-14 12:09:01 -05:00
Tyler Treat
77a973fc8d Send error when we drop a client subscription 2017-06-14 12:08:44 -05:00
Tyler Treat
6e3f58f48c Fix tests and cleanup log output 2017-06-14 10:38:21 -05:00
Tyler Treat
ac04d555f2 Merge branch 'master' of github.com:nats-io/gnatsd into users_reload 2017-06-14 09:28:18 -05:00
Peter Miron
5724da1c27 Merge pull request #512 from nats-io/random_port_extended
Random port extended
2017-06-14 08:08:45 -04:00
Tyler Treat
4675603b60 Remove impossible branch logic 2017-06-13 16:23:07 -05:00
Tyler Treat
44966230db Handle permissions changes on config reload 2017-06-13 16:04:38 -05:00
Peter Miron
c655c2939e added additional opts tests to increase coverage. 2017-06-12 18:28:53 -04:00
Peter Miron
00744ff426 converted MonitorAddr and ClusterAddr to *net.TCPAddr 2017-06-12 17:40:36 -04:00
Tyler Treat
fa12181094 Add support for reloading users credentials 2017-06-12 13:17:30 -05:00
Tyler Treat
d11a3979fc Log changes to AuthTimeout and TLSTimeout 2017-06-12 12:13:32 -05:00
Tyler Treat
9ba55f0f21 Add support for reloading single-user and token authentication 2017-06-12 11:52:11 -05:00
Peter Miron
606502091c Updated based on @tylertreat feedback. 2017-06-12 10:48:30 -04:00
Peter Miron
5e640f099d clean up of log files. removed FatalError function to make sure I'm minimizing changes to actual server. 2017-06-11 16:20:04 -04:00
Peter Miron
da1cb9abb2 missed go fmt'ing. 2017-06-10 10:39:09 -04:00
Peter Miron
d1f38f38a2 changes to support random ports for clusters and profiler. 2017-06-10 10:35:01 -04:00
Derek Collison
855ca705c3 Merge pull request #510 from nats-io/fix_test_logoutput
Fix leaking log output in unit tests
2017-06-09 08:02:57 -07:00
Derek Collison
7a8fc9b3e6 Merge pull request #509 from nats-io/remote_monitoring_port
Added ability to use random ports to limit unit test port contention.
2017-06-09 06:56:40 -07:00
Derek Collison
482b6a9e46 Merge pull request #507 from nats-io/fix_opts_copy
Fix Options Clone
2017-06-09 06:55:36 -07:00
Ivan Kozlovic
923735ac74 Updated test to suppress stdout output
The parsing of write_deadline may produce a warning to stdout
since there is no logger set at this stage.
Updated the test to suppress stdout to not polute the tests output.
2017-06-08 19:40:06 +02:00
Tyler Treat
00d0e3d7cb Fix leaking log output in unit tests 2017-06-08 10:55:43 -05:00
Peter Miron
f2a9cc8cb0 fixed go fmt'ing 2017-06-08 11:37:23 -04:00
Tyler Treat
6bdc906288 Add User clone test for nil Permissions 2017-06-08 10:17:33 -05:00
Peter Miron
43a3f1ef1d cleaned up naming to MonitorAddr instead of HttpPort (as it could be either Http or Https). added test for nil to improve coverage. 2017-06-08 10:46:55 -04:00
Peter Miron
41aa44cd8d Added ability to use random ports to limit unit test port contention. 2017-06-08 10:19:56 -04:00
Tyler Treat
4c33177bd3 Bump up TLS timeout in test configs 2017-06-07 18:05:28 -05:00
Tyler Treat
648b7367c0 Fix data race 2017-06-07 17:40:17 -05:00
Tyler Treat
30db4be965 Ensure old connection still works in TLS reload test 2017-06-07 17:03:33 -05:00
Tyler Treat
5d36a7797e Fix Options Clone
Ensure Options.Clone() only initializes Users and Routes when the
Options it's cloning has them initialized.
2017-06-07 16:54:40 -05:00
Tyler Treat
d172ca5801 Add unit tests around TLS config reload 2017-06-07 16:34:39 -05:00
Tyler Treat
b7211f6dc8 Improve readability of TLSVerify assignment 2017-06-07 14:58:30 -05:00
Tyler Treat
b70e2c2fc2 Implement config reload support for TLS
Allows reloading TLS config. This includes enabling/disabling TLS,
rotating keys/certs, enabling/disabling client verification, etc.
2017-06-07 12:25:56 -05:00
Stephen JANNIN
7db8a49468 fix windows build 2017-06-07 15:43:11 +02:00
Tyler Treat
687a20be1c Implement config reload support for debug
Add config reload support for `debug` option.
2017-06-06 11:30:06 -05:00
Tyler Treat
4f28bf7630 Remove use of getOpts() in log.go 2017-06-06 08:51:34 -05:00
Tyler Treat
cc30af8ede Address code review feedback 2017-06-05 17:43:42 -05:00
Tyler Treat
c468abd15f Merge branch 'master' of github.com:nats-io/gnatsd into config_reload 2017-06-05 13:41:04 -05:00
Derek Collison
cba3170c1e Merge pull request #502 from nats-io/fix_test_race
[FIXED] Intermittent failing test
2017-06-05 10:15:55 -07:00
Tyler Treat
d2fd0b7190 Reduce AuthTimeout in test 2017-06-05 09:51:05 -05:00
Tyler Treat
0bda6da60e [FIXED] Intermittent failing test
Added the sleep back in to TestAuthorizationTimeout which got removed in #493.
This was causing the test to fail intermittently, though it would
usually pass on Travis CI or with the -race flag since these slowed it
down enough.
2017-06-01 16:38:02 -05:00
Tyler Treat
677ff0aae0 Rename opts to diffOpts in diffOptions for clarity 2017-06-01 14:22:41 -05:00
Tyler Treat
e109c3fa65 Remove SIGHUP handling
Do not expose config reloading yet until we are ready.
2017-06-01 14:11:16 -05:00
Tyler Treat
c8280aaee4 Get rid of defer in Server.getOpts()
Defer adds a bit of overhead which can affect fast-paths.
2017-06-01 11:50:28 -05:00
Tyler Treat
28160f1de2 Remove global logger
gnatsd currently uses a global logger. This can cause some problems
(especially around the config-reload work), but global variables are
also just an anti-pattern in general. The current behavior is
particularly surprising because the global logger is configured through
calls to the Server.

This addresses issue #500 by removing the global logger and making it a
field on Server.
2017-05-31 16:06:31 -05:00
Tyler Treat
43ee0ce6df Fix unit tests 2017-05-31 12:52:20 -05:00
Tyler Treat
b95dd5dfd0 Add tests around config reload 2017-05-30 21:09:35 -05:00
Tyler Treat
9902c3da84 First pass at implementing config reload 2017-05-30 16:18:36 -05:00
Ivan Kozlovic
773b25af85 [FIXED] Shutdown stops http server when started manually
In case one creates a server instance with New() and then starts
the http server manually (s.StartHTTPMonitoring()), calling
s.Shutdown() would not stop the http server because Shutdown()
would return without doing anything if `running` was not true.
This boolean was set to true only in `s.Start()`.

Also added StartMonitoring() to perform the options check and
selectively start http or https server to replace individual calls.
This is useful for NATS Streaming server that will now be able
to call s.StartMonitoring() without having to duplicate code
about options checks and http server code.

This is related to PR #481
2017-05-25 17:01:35 -06:00
Ivan Kozlovic
513c0a0971 [FIXED] Specifying HTTP and HTTPs ports produces unexpected behavior
The server will now print a Fatal error if user tries to configure
both HTTP and HTTPs ports.

Resolves #495
2017-05-24 13:06:04 -06:00