Commit Graph

909 Commits

Author SHA1 Message Date
Ilya Khaprov 39693cfb07
Send www-authenticate header when basic auth present but it's wrong
close #3181
2021-07-20 21:44:36 +02:00
Philip Kuryloski d6399bbb5b
Mixed version testing in bazel (#3200)
Unlike with gnu make, mixed version testing with bazel uses a package-generic-unix for the secondary umbrella rather than the source. This brings the benefit of being able to mixed version test releases built with older erlang versions (even though all nodes will run under the single version given to bazel)

This introduces new test labels, adding a `-mixed` suffix for every existing test. They can be skipped if necessary with `--test_tag_filters` (see the github actions workflow for an example)

As part of the change, it is now possible to run an old release of rabbit with rabbitmq_run rule, such as:

`bazel run @rabbitmq-server-generic-unix-3.8.17//:rabbitmq-run run-broker`
2021-07-19 14:33:25 +02:00
Philip Kuryloski 2fc112e29c Correct some test cleanup in rabbit_mgmt_http_SUITE 2021-07-07 18:05:55 +02:00
Michael Klishin 2826225cde
Drive-by change: speed up two tests in rabbit_mgmt_rabbitmqadmin_SUITE
This makes sure rabbitmqadmin suite doesn't spend minutes resolving
a non-existent hostname in environments with certain DNS client
settings.
2021-06-13 12:32:03 +08:00
Michael Klishin 300196ea4e
Second attempt at upgrading JSX to 3.1 2021-06-12 08:03:18 +08:00
dcorbacho 930c78795c Rename consumer_utilisation to consumer_capacity
Capacity is 100% when there are online consumers and no messages
2021-02-24 16:20:52 +01:00
Michael Klishin 52479099ec
Bump (c) year 2021-01-22 09:00:14 +03:00
Michael Klishin 10ced3cbd4
Adapt HTTP API test suite expectations 2020-12-10 15:27:17 +03:00
Luke Bakken 55c3f3670f wait_for_confirms timeout is in seconds
References rabbitmq/rabbitmq-erlang-client#138

cc @dumbbell
2020-11-02 11:20:15 -08:00
Jean-Sébastien Pédron ac303a2c74 rabbit_mgmt_http_health_checks_SUITE: Remove trailing whitespaces 2020-10-22 15:00:04 +02:00
Jean-Sébastien Pédron 6864929fe8 rabbit_mgmt_http_health_checks_SUITE: Don't import unused functions 2020-10-22 14:59:41 +02:00
Jean-Sébastien Pédron d39b691216 rabbit_mgmt_http_health_checks_SUITE: Pay attention to rabbit_ct_broker_helpers:enable_feature_flag() return value
If it returns `{skip, _}`, we must skip the test group.
2020-10-22 14:58:47 +02:00
Michael Klishin 22f447157f Include top-level port property for TLS listeners
This value is used at listener registration and will show up in
`rabbitmq-diagnostics listeners' output.

Closes #857
2020-10-19 13:48:21 +03:00
Michael Klishin c2350b1f59 Update tests to not use foobar x-arguments
Queues now validate x-arguments in addition to policy definitions.
2020-10-19 12:58:38 +03:00
Michael Klishin 07ec5b6fc3 Merge pull request #856 from rabbitmq/rabbitmq-management-855
Take error scenarios into account in aliveness test
2020-10-16 05:43:17 +03:00
Michael Klishin b6f775fa24 /api/auth-attempts/ => /api/auth/attempts 2020-10-14 08:03:17 +03:00
dcorbacho db637b6d56 Split get auth attempts API into global counters and detailed by source 2020-10-14 05:18:49 +03:00
dcorbacho 86bc48fc81 Query and rest auth attempt metrics 2020-10-14 05:18:48 +03:00
Luke Bakken a2b0df6524 Use -include directive when appropriate 2020-10-13 12:00:33 -07:00
Michael Klishin f3b4caa996 Finish cluster-wide and local alarm health check tests 2020-10-07 22:14:49 +03:00
dcorbacho 9d04d95250 Test health checks 2020-10-07 15:27:00 +01:00
Michael Klishin c2e7d0e04b HTTP API health check test suite WIP 2020-10-07 12:40:08 +03:00
dcorbacho ad805eb091 Introduce health checks
GET /api/health/checks/certificate-expiration
GET /api/health/checks/port-listener
GET /api/health/checks/protocol-listener
GET /api/health/checks/virtual-hosts
GET /api/health/checks/node-is-mirror-sync-critical
GET /api/health/checks/node-is-quorum-critical
2020-10-06 12:11:23 +01:00
kjnilsson a8947ac6f0 Uncomment some tests 2020-09-30 14:29:01 +01:00
dcorbacho 0686190f15 Stream queue
[#171206871]
2020-09-30 14:29:01 +01:00
Michael Klishin 641bc625b2 More test massaging 2020-09-24 14:18:18 +03:00
Michael Klishin ca84821a4c Regular HTTP API suite: bring back samples test
Per discussion with @dcorbacho
2020-09-24 13:59:52 +03:00
Michael Klishin 502c74579e Test suite massaging to reduce flakiness of some tests
Some tests are timing-sensitive in nature. Given enough cores,
the assumptions in some of them are no longer true.

In addition, some sample test assertions only make sense when
stats collection is disabled; removed them from the "regular" HTTP
API suite per discussion with @dcorbacho.

While at it, remove some overly opinionated assertions
and a test for the deprecated One True Health Check™.
2020-09-24 12:59:43 +03:00
Michael Klishin 46f94711cb Respond with a Bad Request when client provides double-encoded JSON
instead of a 500.

Closes #839.
2020-09-23 15:23:26 -07:00
Michael Klishin ba26c7721f Extract user limits FF tests into its own group
So that they are easy to skip in mixed-version clusters where
this feature flag can't be guaranteed to be available.

References #rabbitmq/rabbitmq-server#2380.
2020-09-03 06:05:15 +03:00
Michael Klishin 3bceaad700 Use await_condition in this timing-sensitive test 2020-09-02 17:44:23 +03:00
Michael Klishin b7de77e21d Wording 2020-08-31 09:05:32 +03:00
Michael Klishin a647cc4826 Naming and cosmetics 2020-08-31 09:05:32 +03:00
Michael Klishin 639fb6823e Avoid using deprecated http_uri:encode/1
It will be removed in Erlang 25.
2020-08-31 09:05:32 +03:00
Ayanda-D 6018abed6a Per user-limits tests 2020-08-31 09:02:46 +03:00
dcorbacho 449414a7e9 Switch to Mozilla Public License 2.0 (MPL 2.0) 2020-07-13 16:45:00 +01:00
Jean-Sébastien Pédron 6e563037a0 Change copyright holder from Pivotal to VMware 2020-06-17 14:06:10 +02:00
Michael Klishin c52f34e989 Make it possible to configure db cache multiplier via rabbitmq.conf
Closes rabbitmq/rabbitmq-management#821.
2020-06-10 11:30:43 +03:00
Philip Kuryloski 968c644401 Dedupe calls to rabbit_mgmt_test_util:reset_management_setting/1
It was called as a setup step in init_per_group, but also in every init_per_testcase.
2020-05-11 16:56:57 +02:00
Jean-Sébastien Pédron da1f4f6795 rabbit_mgmt_rabbitmqadmin_SUITE: Reset $HOME in end_per_testcase
It polluted the common_test node and caused inter-node communication
failures: a new `.erlang.cookie` file was re-generated in the overriden
$HOME directory, and this new cookie was used by RabbitMQ nodes started
after this testsuite.
2020-05-05 17:39:43 +02:00
Michael Klishin ce6fbba80d rabbitmqadmin: make --cli-switches take precedence over config file values
With most CLI tools, command line arguments
take precedence over values in the configuration file.

This was not the case in rabbitmqadmin, and very likely
unintentionally so, at least I could not find
any evidence of the contrary.

There was a test case that implicitly depended
on this behavior. Again, no indication of this
being an intentional design choice.

While this can be a breaking change, most
users either use CLI flags or the config file;
this is why this behavior has gone unnoticed
for at least 8 years. We therefore treat
this change as low risk and worth
shipping e.g. in a patch release.
rabbitmqadmin is installed manually and
therefore won't be replaced during a node
upgrade anyway. Operators would
have to opt-in.

Closes #804.
2020-04-18 21:29:33 +03:00
Michael Klishin 67f80ce900 One more test 2020-04-15 19:35:13 +03:00
Michael Klishin 8fe756d9f6 Remove a function that's no longer used 2020-04-15 18:39:44 +03:00
Michael Klishin 584b06069c Simplify and adapt listener_config_SUITE
Part of #800
2020-04-15 18:30:35 +03:00
Michael Klishin d4f7f85fef Squash a compilation warning
(cherry picked from commit 1ec6f64658)
2020-04-15 15:29:15 +03:00
Michael Klishin 3de47a2f2b Use rabbit_ct_helpers:await_condition/2 to detect rate changes 2020-04-10 11:07:12 +03:00
Jean-Sébastien Pédron 004e0569ce Update copyright (year 2020) 2020-03-10 15:43:34 +01:00
Luke Bakken a4ae371aa6 Revert "Fixes a function_clause in httpc:request/5"
This reverts commit 234b1341a0.
2020-02-01 16:44:33 +00:00
Michael Klishin 234b1341a0 Fixes a function_clause in httpc:request/5
Since get_static is not a method/verb httpc supports.
2020-02-01 16:12:39 +03:00
Luke Bakken 4a31161482 Add test for CSP headers
Tests both API call and static file

Part of #767

Depends on rabbitmq/rabbitmq-ct-helpers#37
2020-01-31 22:30:06 +00:00
dcorbacho 723133f493 POST /login endpoint
Closes #764
2020-01-17 12:50:33 +01:00
Michael Klishin 2e4255c1e7 (c) bump 2019-12-29 05:50:30 +03:00
Michael Klishin f7bb072b4b Merge pull request #753 from rabbitmq/mgmt-less-improvements
Display queue replicas and totals in metrics-less UI
2019-11-27 08:31:20 +03:00
Michael Klishin 93f051ad77 A follow-up to f502aa7f34, rabbitmq/rabbitmq-server#2171 2019-11-27 08:00:03 +03:00
Michael Klishin f502aa7f34 Adapt another test for rabbitmq/rabbitmq-server#2171 2019-11-27 07:30:38 +03:00
Michael Klishin 965ac8440d Adapt a test for rabbitmq/rabbitmq-server#2171 2019-11-22 20:56:33 +03:00
dcorbacho aef931f750 Option to list queue totals when statistics are disabled
[#169802101]
2019-11-18 11:41:42 +00:00
dcorbacho 9576aaf43c Reintroduce replicas information 2019-11-15 12:04:27 +00:00
Michael Klishin 258e2b84f2 Definition import: refactor for future ctl command 2019-11-15 07:15:22 +03:00
Michael Klishin 045f9775f4 Move definition import machinery to core
Part of #749.
2019-11-12 03:30:48 +03:00
Luke Bakken fcd83bc287 Add test that fails for rabbitmq-management#739
fixup
2019-10-01 10:12:54 -07:00
Michael Klishin 33082f2d2d Two more management.ssl.* options
The options are not very useful for HTTPS clients but we should support
them for consistency and completeness.

Closes #735.
2019-09-16 19:36:32 +03:00
Diana Corbacho 046d89864e Handle vhost description and tags fields
[#166298298]
2019-08-30 11:53:43 +02:00
Gerhard Lazu c5b1d07ada Ensure that a request without auth header does not return a basic auth prompt
When basic auth is disabled, we don't want to display the basic auth
prompt just to return the same 401 that we would because basic auth is
disabled.

rabbitmq/rabbitmq-management#724

[#158496849]
2019-08-08 18:30:42 +01:00
Diana Corbacho ebabd54fae Validate flags to disable features on runtime
[#167754496]
2019-08-07 17:32:51 +01:00
Michael Klishin 7b47850015 Merge branch 'master' into disable-basic-http-auth 2019-08-02 19:58:33 +03:00
Michael Klishin f1ade9c9a6 Merge pull request #722 from rabbitmq/mgmt-oauth
Management UI can obtain an OAuth 2 token from UAA/CF SSO service
2019-08-02 19:19:18 +03:00
Diana Corbacho c9d054ea66 Disable basic auth for definitions
[#158496849]
2019-07-30 16:19:33 +01:00
Diana Corbacho 3260db87f5 Disable basic HTTP auth
Config parameter: {disable_basic_auth, <bool>}
Defaults to 'false'

[#158496849]
2019-07-30 16:19:20 +01:00
Michael Klishin ceea3f9589 Update tests 2019-07-27 15:23:12 +03:00
Michael Klishin 2e0b6146d0 Parse routing keys with values of `null` and `undefined` to their respective atoms
See #723 for background.

Currently there are three main ways to declare a binding:

 * Use an AMQP 0-9-1 client
 * Use an HTTP API client
 * Definition import

For the sake of this change we will fold the latter two options into
one as they are effectively identical as far as data formats go.

An HTTP API client can do things that an AMQP 0-9-1 would not be able
to because of framing/parser/generator restrictions, and vice versa.

With HTTP API and definition import the following importance

 * When a binding is added, routing key can be omitted or set to `null` 
(or `undefined`)
 * When a binding is deleted, a blank routing key can only be specified
   using a convention since an empty URI path arguments are not 
supported
   by Cowboy REST and would make no sense to the developer.

Omitted or `null` `routing_key` values are parsed to their respective 
atoms.
Those atoms are then stored in binding records. When a binding is 
retrieved
or deleted (the case in #723), the conventionally encoded routing key 
that
contained "null" for name was parsed to "null" (a string). This 
discrepancy
led to false 404 responses from the API.

Note that this solution is merely a band aid over a fundamental 
difference
in two APIs. Rejecting `null` or undefined values might be a better 
option
but we cannot adopt it in 3.7.x. It remains to be discussed whether that
would improve user experience.

Another problematic scenario is routing keys with the value of "null"
(a string) used at binding time. This change would break deletion for
those. We'll assume that no developer would intentionally use such
routing key as the confusion and risk are more or less obvious.
2019-07-27 10:22:51 +03:00
Diana Corbacho 9732fb54be Minor fixes
[#158496811]
2019-07-25 16:28:58 +01:00
Diana Corbacho 10a8c61c2b Test /auth endpoint
[#158496811]
2019-07-24 12:31:39 +01:00
Michael Klishin b02243523f Update exports and tests for 4960f0117d
References #711, #715.
2019-07-16 20:14:57 +03:00
Michael Klishin 83d48bd36d Merge branch 'master' into management-only-api 2019-07-08 18:41:37 +03:00
Michael Klishin 33a93d7a93 Merge pull request #711 from rabbitmq/definitions_import_timeout
Definitions import timeout
2019-06-18 15:59:54 +03:00
Michael Klishin 521da23dba Prefer assertMatch over pattern matching for better failure reporting 2019-06-18 15:29:57 +03:00
Michael Klishin ec1cdc9a86 Use fewer vhosts in this test 2019-06-18 00:45:47 +03:00
Daniil Fedotov a0d7382b80 Report definitions import progress to the client.
This does not address the idle_timeout issue, but may
prevent clients from timing out and closing connection
when importing definitions.
2019-06-17 16:31:47 -04:00
Daniil Fedotov dc54d87a75 Test long definitions import 2019-06-17 16:31:19 -04:00
Daniil Fedotov 6083eb0bef Propagate validation error when importing definitions from a directory.
When definitions import fails it returns {error, Reason}, which is ignored
when importing multiple definitions and fails silently.
Fix that by checking result of every import.
2019-06-17 11:19:58 -04:00
Diana Corbacho 83d4fd71b3 Test disabling the stats on the HTTP API using the query string
?disable_stats=true

[#166445368]
2019-06-11 13:24:25 +01:00
Diana Corbacho cadc15856e Management only UI and HTTP API
Slimmed down version of the API without metrics.
Stats can be disabled from app config or in the HTTP request.
rabbitmq_management.disable_management_stats = true

Disabling the collectors in the agent now allows the management
application to start, but strictly in management-only mode.

[#166445368]
2019-06-10 22:09:41 +01:00
Luke Bakken e9ed88277d Allow but ignore charset if set for HTTP request
Fixes #703
2019-05-14 12:46:41 -07:00
Michael Klishin 47650d2908 Merge sendfile default using maps 2019-04-29 22:22:56 +03:00
Daniil Fedotov 26e01b365b Disable sendfile in cowboy by default.
Kernel sendfile can behave weirdly sometimes:
https://groups.google.com/forum/#!msg/rabbitmq-users/jyqVkwP_a24/qwWectTcCgAJ
Sendfile functionality should not impact performance much and
may be disabled by default.
It still can be enabled via cowboy_options.

[#164633826]
2019-04-25 17:30:40 -04:00
Gerhard Lazu 84641f59c8 Add stats HTTP redirect test 2019-04-24 10:24:39 +01:00
Michael Klishin ac7ab8c9e8 Update a test to be forward compatible with rabbit:status/0 format changes
See rabbitmq/rabbitmq-cli#340.
2019-04-12 13:14:02 +04:00
Daniil Fedotov 8762881b0b Fix function clause in bindings when using CORS headers. Enable OPTIONS method for bulk delete.
Bug reported in https://groups.google.com/forum/#!topic/rabbitmq-users/AtGYGGhxODc
When using CORS headers, bindings endpoint was failing with function clause.
rabbit_mgmt_wm_bindings module is using non-standard handler state, which was
unmatched with undefined.
2019-04-04 10:46:26 -07:00
Spring Operator 5ffa1fd9a9 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.

* http://blog.listincomprehension.com/search/label/procket (200) with 1 occurrences could not be migrated:
   ([https](https://blog.listincomprehension.com/search/label/procket) result ClosedChannelException).
* http://dozzie.jarowit.net/trac/wiki/TOML (200) with 1 occurrences could not be migrated:
   ([https](https://dozzie.jarowit.net/trac/wiki/TOML) result SSLHandshakeException).
* http://dozzie.jarowit.net/trac/wiki/subproc (200) with 1 occurrences could not be migrated:
   ([https](https://dozzie.jarowit.net/trac/wiki/subproc) result SSLHandshakeException).
* http://e2project.org (200) with 1 occurrences could not be migrated:
   ([https](https://e2project.org) result AnnotatedConnectException).
* http://erik.eae.net/archives/2007/07/27/18.54.15/ (200) with 1 occurrences could not be migrated:
   ([https](https://erik.eae.net/archives/2007/07/27/18.54.15/) result SSLHandshakeException).
* http://javascript.nwbox.com/IEContentLoaded/ (200) with 1 occurrences could not be migrated:
   ([https](https://javascript.nwbox.com/IEContentLoaded/) result SSLHandshakeException).
* http://nitrogenproject.com/ (200) with 2 occurrences could not be migrated:
   ([https](https://nitrogenproject.com/) result ConnectTimeoutException).
* http://proper.softlab.ntua.gr (200) with 1 occurrences could not be migrated:
   ([https](https://proper.softlab.ntua.gr) result SSLHandshakeException).
* http://sammyjs.org (200) with 2 occurrences could not be migrated:
   ([https](https://sammyjs.org) result SSLHandshakeException).
* http://sammyjs.org/docs/plugins (200) with 2 occurrences could not be migrated:
   ([https](https://sammyjs.org/docs/plugins) result SSLHandshakeException).
* http://sammyjs.org/docs/routes (200) with 2 occurrences could not be migrated:
   ([https](https://sammyjs.org/docs/routes) result SSLHandshakeException).
* http://webfx.eae.net/dhtml/boxsizing/boxsizing.html (200) with 1 occurrences could not be migrated:
   ([https](https://webfx.eae.net/dhtml/boxsizing/boxsizing.html) result SSLHandshakeException).
* http://yaws.hyber.org (200) with 1 occurrences could not be migrated:
   ([https](https://yaws.hyber.org) result AnnotatedConnectException).
* http://choven.ca (503) with 1 occurrences could not be migrated:
   ([https](https://choven.ca) result ConnectTimeoutException).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* http://fixprotocol.org/ (301) with 1 occurrences migrated to:
  https://fixtrading.org ([https](https://fixprotocol.org/) result SSLHandshakeException).
* http://jsperf.com/getall-vs-sizzle/2 (301) with 1 occurrences migrated to:
  https://jsperf.com/getall-vs-sizzle/2 ([https](https://jsperf.com/getall-vs-sizzle/2) result ReadTimeoutException).
* http://erldb.org (UnknownHostException) with 1 occurrences migrated to:
  https://erldb.org ([https](https://erldb.org) result UnknownHostException).
* http://some-host-that-does-not-exist:15672/ (UnknownHostException) with 1 occurrences migrated to:
  https://some-host-that-does-not-exist:15672/ ([https](https://some-host-that-does-not-exist:15672/) result UnknownHostException).
* http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ (301) with 1 occurrences migrated to:
  https://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ ([https](https://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/) result 404).
* http://www.JSON.org/js.html (404) with 1 occurrences migrated to:
  https://www.JSON.org/js.html ([https](https://www.JSON.org/js.html) result 404).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* http://bugs.jquery.com/ticket/12359 with 1 occurrences migrated to:
  https://bugs.jquery.com/ticket/12359 ([https](https://bugs.jquery.com/ticket/12359) result 200).
* http://bugs.jquery.com/ticket/13378 with 1 occurrences migrated to:
  https://bugs.jquery.com/ticket/13378 ([https](https://bugs.jquery.com/ticket/13378) result 200).
* http://cloudi.org/ with 27 occurrences migrated to:
  https://cloudi.org/ ([https](https://cloudi.org/) result 200).
* http://code.quirkey.com/sammy/ with 1 occurrences migrated to:
  https://code.quirkey.com/sammy/ ([https](https://code.quirkey.com/sammy/) result 200).
* http://erlware.org/ with 1 occurrences migrated to:
  https://erlware.org/ ([https](https://erlware.org/) result 200).
* http://inaka.github.io/cowboy-trails/ with 1 occurrences migrated to:
  https://inaka.github.io/cowboy-trails/ ([https](https://inaka.github.io/cowboy-trails/) result 200).
* http://jquery.com/ with 3 occurrences migrated to:
  https://jquery.com/ ([https](https://jquery.com/) result 200).
* http://jsperf.com/thor-indexof-vs-for/5 with 1 occurrences migrated to:
  https://jsperf.com/thor-indexof-vs-for/5 ([https](https://jsperf.com/thor-indexof-vs-for/5) result 200).
* http://ninenines.eu with 6 occurrences migrated to:
  https://ninenines.eu ([https](https://ninenines.eu) result 200).
* http://ninenines.eu/ with 1 occurrences migrated to:
  https://ninenines.eu/ ([https](https://ninenines.eu/) result 200).
* http://sizzlejs.com/ with 2 occurrences migrated to:
  https://sizzlejs.com/ ([https](https://sizzlejs.com/) result 200).
* http://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ with 1 occurrences migrated to:
  https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ ([https](https://web.archive.org/web/20100324014747/https://blindsignals.com/index.php/2009/07/jquery-delay/) result 200).
* http://www.actordb.com/ with 2 occurrences migrated to:
  https://www.actordb.com/ ([https](https://www.actordb.com/) result 200).
* http://www.cs.kent.ac.uk/projects/wrangler/Home.html with 1 occurrences migrated to:
  https://www.cs.kent.ac.uk/projects/wrangler/Home.html ([https](https://www.cs.kent.ac.uk/projects/wrangler/Home.html) result 200).
* http://www.enhanceie.com/ie/bugs.asp with 1 occurrences migrated to:
  https://www.enhanceie.com/ie/bugs.asp ([https](https://www.enhanceie.com/ie/bugs.asp) result 200).
* http://www.rabbitmq.com/amqp-0-9-1-reference.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/amqp-0-9-1-reference.html ([https](https://www.rabbitmq.com/amqp-0-9-1-reference.html) result 200).
* http://www.rabbitmq.com/configure.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/configure.html ([https](https://www.rabbitmq.com/configure.html) result 200).
* http://www.rabbitmq.com/confirms.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/confirms.html ([https](https://www.rabbitmq.com/confirms.html) result 200).
* http://www.rabbitmq.com/consumers.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/consumers.html ([https](https://www.rabbitmq.com/consumers.html) result 200).
* http://www.rabbitmq.com/github.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/github.html ([https](https://www.rabbitmq.com/github.html) result 200).
* http://www.rabbitmq.com/ha.html with 3 occurrences migrated to:
  https://www.rabbitmq.com/ha.html ([https](https://www.rabbitmq.com/ha.html) result 200).
* http://www.rabbitmq.com/management-cli.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/management-cli.html ([https](https://www.rabbitmq.com/management-cli.html) result 200).
* http://www.rabbitmq.com/management.html with 7 occurrences migrated to:
  https://www.rabbitmq.com/management.html ([https](https://www.rabbitmq.com/management.html) result 200).
* http://www.rabbitmq.com/memory-use.html with 3 occurrences migrated to:
  https://www.rabbitmq.com/memory-use.html ([https](https://www.rabbitmq.com/memory-use.html) result 200).
* http://www.rabbitmq.com/memory.html with 3 occurrences migrated to:
  https://www.rabbitmq.com/memory.html ([https](https://www.rabbitmq.com/memory.html) result 200).
* http://www.rabbitmq.com/nettick.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/nettick.html ([https](https://www.rabbitmq.com/nettick.html) result 200).
* http://www.rabbitmq.com/partitions.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/partitions.html ([https](https://www.rabbitmq.com/partitions.html) result 200).
* http://www.rabbitmq.com/persistence-conf.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/persistence-conf.html ([https](https://www.rabbitmq.com/persistence-conf.html) result 200).
* http://www.rabbitmq.com/services.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/services.html ([https](https://www.rabbitmq.com/services.html) result 200).
* http://www.rebar3.org with 1 occurrences migrated to:
  https://www.rebar3.org ([https](https://www.rebar3.org) result 200).
* http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html with 1 occurrences migrated to:
  https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html ([https](https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html) result 200).
* http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html with 1 occurrences migrated to:
  https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html ([https](https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html) result 200).
* http://www.w3.org/TR/2011/REC-css3-selectors-20110929/ with 2 occurrences migrated to:
  https://www.w3.org/TR/2011/REC-css3-selectors-20110929/ ([https](https://www.w3.org/TR/2011/REC-css3-selectors-20110929/) result 200).
* http://www.w3.org/TR/CSS21/syndata.html with 2 occurrences migrated to:
  https://www.w3.org/TR/CSS21/syndata.html ([https](https://www.w3.org/TR/CSS21/syndata.html) result 200).
* http://www.w3.org/TR/DOM-Level-3-Events/ with 1 occurrences migrated to:
  https://www.w3.org/TR/DOM-Level-3-Events/ ([https](https://www.w3.org/TR/DOM-Level-3-Events/) result 200).
* http://www.w3.org/TR/selectors/ with 4 occurrences migrated to:
  https://www.w3.org/TR/selectors/ ([https](https://www.w3.org/TR/selectors/) result 200).
* http://code.google.com/p/stringencoders/ with 1 occurrences migrated to:
  https://code.google.com/p/stringencoders/ ([https](https://code.google.com/p/stringencoders/) result 301).
* http://code.google.com/p/stringencoders/source/browse/ with 2 occurrences migrated to:
  https://code.google.com/p/stringencoders/source/browse/ ([https](https://code.google.com/p/stringencoders/source/browse/) result 301).
* http://contributor-covenant.org with 1 occurrences migrated to:
  https://contributor-covenant.org ([https](https://contributor-covenant.org) result 301).
* http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to:
  https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/) result 301).
* http://dev.w3.org/csswg/cssom/ with 1 occurrences migrated to:
  https://dev.w3.org/csswg/cssom/ ([https](https://dev.w3.org/csswg/cssom/) result 301).
* http://inaka.github.com/apns4erl with 1 occurrences migrated to:
  https://inaka.github.com/apns4erl ([https](https://inaka.github.com/apns4erl) result 301).
* http://inaka.github.com/edis/ with 1 occurrences migrated to:
  https://inaka.github.com/edis/ ([https](https://inaka.github.com/edis/) result 301).
* http://jquery.org/license with 2 occurrences migrated to:
  https://jquery.org/license ([https](https://jquery.org/license) result 301).
* http://lasp-lang.org/ with 1 occurrences migrated to:
  https://lasp-lang.org/ ([https](https://lasp-lang.org/) result 301).
* http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx with 1 occurrences migrated to:
  https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx ([https](https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx) result 301).
* http://msdn.microsoft.com/en-us/library/ie/ms536648 with 1 occurrences migrated to:
  https://msdn.microsoft.com/en-us/library/ie/ms536648 ([https](https://msdn.microsoft.com/en-us/library/ie/ms536648) result 301).
* http://rabbitmq.com with 5 occurrences migrated to:
  https://rabbitmq.com ([https](https://rabbitmq.com) result 301).
* http://rabbitmq.com/ae.html with 1 occurrences migrated to:
  https://rabbitmq.com/ae.html ([https](https://rabbitmq.com/ae.html) result 301).
* http://rabbitmq.com/consumers.html with 1 occurrences migrated to:
  https://rabbitmq.com/consumers.html ([https](https://rabbitmq.com/consumers.html) result 301).
* http://rabbitmq.com/dlx.html with 2 occurrences migrated to:
  https://rabbitmq.com/dlx.html ([https](https://rabbitmq.com/dlx.html) result 301).
* http://rabbitmq.com/maxlength.html with 2 occurrences migrated to:
  https://rabbitmq.com/maxlength.html ([https](https://rabbitmq.com/maxlength.html) result 301).
* http://rabbitmq.com/passwords.html with 1 occurrences migrated to:
  https://rabbitmq.com/passwords.html ([https](https://rabbitmq.com/passwords.html) result 301).
* http://rabbitmq.com/priority.html with 1 occurrences migrated to:
  https://rabbitmq.com/priority.html ([https](https://rabbitmq.com/priority.html) result 301).
* http://rabbitmq.com/ttl.html with 2 occurrences migrated to:
  https://rabbitmq.com/ttl.html ([https](https://rabbitmq.com/ttl.html) result 301).
* http://saleyn.github.com/erlexec with 1 occurrences migrated to:
  https://saleyn.github.com/erlexec ([https](https://saleyn.github.com/erlexec) result 301).
* http://support.microsoft.com/kb/186063 with 1 occurrences migrated to:
  https://support.microsoft.com/kb/186063 ([https](https://support.microsoft.com/kb/186063) result 301).
* http://technet.microsoft.com/en-us/sysinternals/bb896655 with 2 occurrences migrated to:
  https://technet.microsoft.com/en-us/sysinternals/bb896655 ([https](https://technet.microsoft.com/en-us/sysinternals/bb896655) result 301).
* http://www.erlang.org/doc/man/sasl_app.html with 1 occurrences migrated to:
  https://www.erlang.org/doc/man/sasl_app.html ([https](https://www.erlang.org/doc/man/sasl_app.html) result 301).
* http://www.mozilla.org/MPL/ with 86 occurrences migrated to:
  https://www.mozilla.org/MPL/ ([https](https://www.mozilla.org/MPL/) result 301).
* http://www.mozilla.org/mpl/ with 3 occurrences migrated to:
  https://www.mozilla.org/mpl/ ([https](https://www.mozilla.org/mpl/) result 301).
* http://www.rabbitmq.com/man/rabbitmq-plugins.1.man.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/man/rabbitmq-plugins.1.man.html ([https](https://www.rabbitmq.com/man/rabbitmq-plugins.1.man.html) result 301).
* http://www.w3.org/TR/css3-selectors/ with 1 occurrences migrated to:
  https://www.w3.org/TR/css3-selectors/ ([https](https://www.w3.org/TR/css3-selectors/) result 301).
* http://www.whatwg.org/specs/web-apps/current-work/ with 1 occurrences migrated to:
  https://www.whatwg.org/specs/web-apps/current-work/ ([https](https://www.whatwg.org/specs/web-apps/current-work/) result 301).
* http://zhongwencool.github.io/observer_cli with 1 occurrences migrated to:
  https://zhongwencool.github.io/observer_cli ([https](https://zhongwencool.github.io/observer_cli) result 301).
* http://developer.mozilla.org/en/docs/Canvas_tutorial:Drawing_shapes with 1 occurrences migrated to:
  https://developer.mozilla.org/en/docs/Canvas_tutorial:Drawing_shapes ([https](https://developer.mozilla.org/en/docs/Canvas_tutorial:Drawing_shapes) result 302).
* http://javascript.crockford.com/jsmin.html with 1 occurrences migrated to:
  https://javascript.crockford.com/jsmin.html ([https](https://javascript.crockford.com/jsmin.html) result 302).
* http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx with 2 occurrences migrated to:
  https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx ([https](https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx) result 302).
* http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context with 1 occurrences migrated to:
  https://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context ([https](https://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context) result 302).

# Ignored
These URLs were intentionally ignored.

* http://localhost with 2 occurrences
* http://localhost/ with 2 occurrences
* http://localhost:15672/ with 1 occurrences
* http://localhost:15672/api/channels?sort=message_stats.publish_details.rate&amp;sort_reverse=true&amp;columns=name,message_stats.publish_details.rate,message_stats.deliver_get_details.rate with 2 occurrences
* http://localhost:15672/api/exchanges/%2F/my-new-exchange with 4 occurrences
* http://localhost:15672/api/vhosts with 2 occurrences
* http://localhost:15672/api/vhosts/foo with 2 occurrences
2019-03-20 03:17:48 -05:00
Michael Klishin c57092db42 Add some tests for #665 2019-03-12 04:30:39 +03:00
Josh Soref b1b5213896 spelling: integer 2019-02-12 23:51:50 -05:00
Michael Klishin 4aaf086ebe Consume request body in full
Closes #657.
2019-02-11 02:49:04 +03:00
Jean-Sébastien Pédron a3cc3755a4 rabbit_mgmt_http_SUITE: Skip quorum queue tests if quorum queues are unsupported 2019-02-01 17:55:06 +01:00
Arnaud Cogoluègnes 7f41cc17fd Add consumer activity status column
[#163298456]

References rabbitmq/rabbitmq-server#1838
2019-01-24 10:53:30 +01:00
Arnaud Cogoluègnes 7b14a5b77d Add help and link to explain active consumer flag
[#163298456]

References rabbitmq/rabbitmq-server#1838
2019-01-18 15:49:54 +01:00
kjnilsson 1d24f05f60 fix consumer_created test setup 2019-01-17 16:26:10 +00:00
Arnaud Cogoluègnes 7f977fce14 Add column for single active consumer in consumers view
[#163089472]

References #649
2019-01-15 15:18:55 +01:00
Luke Bakken cadf37bff5 Modify test so generated ciphers are in the expected order 2018-12-31 12:04:48 -08:00
Michael Klishin 611341a50c Support cipher suites and more TLS listener options 2018-12-27 03:04:59 +03:00
Michael Klishin f235493955 Use more realistic hash values in tests
References #641.
2018-12-25 12:56:09 +03:00
Michael Klishin 6fbfab1449 declare user: support --hashing_algorithm, improve mandatory option formatting, more tests
References #641.
2018-12-25 12:49:28 +03:00
John W Higgins bb18616744 Allow for password_hash instead of password when declaring users 2018-12-24 12:01:47 -08:00
Michael Klishin 0432ec1369 Add a basic definition import case that includes a vhost connection limit param
References #628.
2018-11-23 19:05:06 +08:00
Daniil Fedotov 840f22d2e2 Add parameters to vhost definitions export/import.
There are more parameters than just policies and they were missing
from the vhost-specific definitions.

Fixes #628
[#161790576]
2018-11-22 11:17:58 +00:00
Michael Klishin 2fd3e8d3aa Merge pull request #626 from rabbitmq/plugin-disable-ordering
Test that listeners are removed from mnesia when web dispatch is disabled
2018-11-03 08:50:35 +03:00
Diana Corbacho 6cc71c8c22 Test that listeners are removed from mnesia when web dispatch is disabled
web dispatch and management have to be disabled in the right order
[#161558295]
2018-11-02 16:00:18 +00:00
Michael Klishin 39bbfd83e1 Configuration schema keys for CSP and HSTS
References #263, #264.

[#161584215]
2018-10-30 15:54:14 +03:00
kjnilsson 5c5b0dfad6 Ensure connection is closed for quorum queue test 2018-10-26 12:43:48 +01:00
Diana Corbacho f20374ada4 Test metrics removal on queue delete for quorum queues 2018-10-26 12:43:48 +01:00
Michael Klishin 62bb884f58 Support advanced Cowboy options via management.{tcp,ssl}.*
References #563.

[#156776853]
2018-10-22 16:36:27 +03:00
Michael Klishin 5b21ad09ef Introduce new configuration settings for separate TCP and TLS listeners
To make it possible to serve both HTTPS and HTTP-only clients at the same time.
Consistent with web-stomp and web-mqtt plugins.

References #563.

[#156776853]
2018-10-18 17:01:25 +03:00
Diana Corbacho d4f1752521 Add connection/queue/channel churn rates tests
[#160943831]
2018-10-09 15:35:50 +01:00
Gerhard Lazu a72baa5108 Add tests for /cli & /api redirects 2018-09-07 23:48:21 +01:00
Michael Klishin 16014616e2 Expose more Cowboy listener options in Cuttlefish schema
Part of #596.

[#159556318]
2018-08-06 20:32:23 +03:00
Michael Klishin d17ed87781 Expose more Cowboy listener options in Cuttlefish schema
Closes #596.

[#159556318]
2018-08-06 20:06:32 +03:00
Michael Klishin 1e475ae965 Expose more Cowboy listeners in Cuttlefish schema (WIP)
Part of #596.

[#159556318]
2018-08-06 13:40:29 +03:00
Michael Klishin ff41f7d91e Expose Cowboy listeners in Cuttlefish schema (WIP)
Part of #596.

[#159556318]
2018-08-06 09:20:11 +03:00
Michael Klishin 9e87cd6876 Switch management.login_session_timeout to minutes
Login session timeout in seconds doesn't really make sense.
2018-06-22 00:18:46 +03:00
Luke Bakken dc9810a45d Add test to config_schema_SUITE for new management.login_session_timeout setting 2018-06-21 07:48:57 -07:00
Daniil Fedotov 201fa7815e Make login session expiration configurable
Add new configuration parameter login_session_timeout.
Add login_session_timeout to whoami response.
Use it as an expiration timeout for auth cookie.

[#157940664]
2018-06-21 15:25:23 +01:00
Jean-Sébastien Pédron daf3811cdc rabbit_mgmt_http_SUITE: Percent-encode `^` in URLs
This character is neither reserved nor unreserved and thus is an unsafe
character according to RFC 1738 and RFC 3986. Therefore it should be
percent-encoded.

Many implementations accept and/or produce URLs with raw `^`. However,
the URI parser in Erlang 21 is strict and will refuse that character.
Therefore, we now percent-encode it in the testsuite.

[#157964874]
2018-06-12 11:39:20 +02:00
Jean-Sébastien Pédron 673c6135cf Use %2F instead of %2f to percent-encode the `/` vhost
The meaning is the same. However, the RFC recommends to use uppercase in
percent-encoded characters. Morever, the new URI normalization in Erlang
21 would transform the percent-encoded characters to uppercase.

And because our `rabbit_web_dispatch_util:relativise()` uses exact
matches, it will consider e.g `%2f` and `%2F` to be different
characters. Therefore when we use Erlang 21, the relative redirection
returned by the management plugin will be different than the one
returned with Erlang 20 if we use lowercase percent-encoded `/`.

Thus the easy fix is to use uppercase.

A better fix would be to improve `relativise()` and the testsuite to
compare percent-decoded components.

[#157964874]
2018-06-12 11:34:34 +02:00
Michael Klishin e00a5adb58 Update tests to fail in more informative ways
[#157817330]
2018-05-24 09:23:11 +01:00
Michael Klishin 5aba2e8221 Use assertEqual in rabbitmqadmin tests
Otherwise failures are not as informative.
References #568.
2018-05-04 04:53:56 -05:00
Michael Klishin 6dbf6686e6 Make sure import failures trigger Common Test failures
[#157045132]
2018-04-24 13:37:37 +02:00
Michael Klishin 83371434f5 Add a test case for #565.
[#157045132]
2018-04-24 13:21:26 +02:00
Michael Klishin 6be80e45a3 Don't depend on transient metrics; use the same counter as everywhere else 2018-03-08 01:40:58 +03:00
Michael Klishin ad1e5962ff Bump stats incremention timeouts 2018-03-07 19:57:29 +03:00
Michael Klishin 85697bd477 Support both python2 and python2.7 in this test 2018-03-07 19:56:54 +03:00
Michael Klishin 95f5426c83 Wait longer for stats here 2018-03-07 17:52:42 +03:00
Michael Klishin 60e76dfe31 Rework clustering_SUITE
* Use Erlang client connections more
 * Improve assertions
 * Allow for more time for stats emission
 * Improve naming
2018-03-07 09:37:12 +03:00
Michael Klishin b95502e71e Accept 201 and 204 responses 2018-03-07 06:46:31 +03:00
Michael Klishin e6285cb722 Don't mind leftover messages in this test 2018-03-07 06:45:42 +03:00
Michael Klishin ef06256914 Revert "Assert on consumer stats before closing the channel"
This reverts commit c751703441.

It wasn't the root cause of the failures.
2018-03-07 05:59:10 +03:00
Michael Klishin c751703441 Assert on consumer stats before closing the channel
Troubleshooting a Concourse failure.
2018-03-07 04:54:48 +03:00
Michael Klishin 29f05e08d3 Wait longer for stats refresh
Because underpowered Concourse workers.
2018-03-07 04:47:24 +03:00
Luke Bakken 9a97054e4a Ensure definition value is passed as proplist, not map
Fixes #552

Related to rabbitmq/rabbitmq-federation#67
2018-02-13 14:36:51 -08:00
Loïc Hoguin de014de9cb Remove unnecessary call to xmerl_ucs:from_utf8
This commit removes a call to xmerl_ucs:from_utf8 which was used
for two purposes: converting the binary payload into an Erlang
Unicode string (a list of integer code points), and validating
that the payload is indeed utf8.

The call was necessary when it was introduced because mochijson
only supported Unicode strings. Nowadays JSON libraries also
support utf8 binaries so converting is not necessary.

The function also starts by doing a binary_to_list/1 call which
creates a lot of garbage and can lead to OOM situations when the
queue is large. We ended up with the payload binary, the temporary
list and the final Unicode string in memory. With this patch we
only ever have the binary in memory and the memory consumption
is divided by more or less 3.

To validate that the payload is utf8 and keep the functionality
intact a small function was added that makes use of the /utf8
binary matching specifier.

Since this was the only xmerl function used in the management
plugin I have also removed xmerl from the LOCAL_DEPS.

I have added a test for the different encodings that can be
requested to make sure that nothing was broken when doing
the change.

(cherry picked from commit 6a08e3d1f8)
2018-02-06 21:13:51 +01:00
Michael Klishin ad79856f0b Add management.path_prefix to Cuttlefish schema
Closes #547.

[#154880285]
2018-02-02 17:27:00 +01:00
Michael Klishin de29085013 Update user tags when password is cleared
or not provided.

Fixes #533.

[#153436163]

(cherry picked from commit 47d08c5fc3)
2018-01-10 17:32:22 +03:00
Michael Klishin c636862e18 Definition import: coerce maps to proplists
Because rabbitmqctl set_global_parameter does.

Part of #528.

[#153990873]
2018-01-03 03:49:00 +08:00
Michael Klishin 86e64555a7 As of rabbitmq/rabbitmq-server#1459 amq.rabbitmq.log is no longer declared by default
(cherry picked from commit a9a9cb67cf)
2017-12-30 05:01:07 +08:00
Michael Klishin f99f9b489b rabbit_mgmt_http_SUITE: compute number of pages here
(cherry picked from commit 43e583d5df)
2017-12-30 04:37:34 +08:00
Michael Klishin 91b6b5e97b More rabbit_mgmt_http_SUITE stability improvements
* Ask the node how many objects there are total where we can
 * Wait for stats event propagation in more places

(cherry picked from commit b97dba53b8)
2017-12-30 04:14:06 +08:00
Michael Klishin d5e1f3a57e As of rabbitmq/rabbitmq-server#1459 amq.rabbitmq.log is no longer declared by default
The user has to opt-in.
2017-12-30 03:48:29 +08:00
Michael Klishin 1c612f5076 Give stats a chance to refresh in this test, too
(cherry picked from commit 4aa250c9f6)
2017-12-30 03:33:00 +08:00
Michael Klishin dd652e5808 Increase the margin some more 2017-11-05 01:47:45 +02:00
Michael Klishin eb597d9254 Allow for a safety marging in this fragile test 2017-11-04 06:21:17 +02:00
Michael Klishin bd305dbc3a Compile on OTP 20 2017-10-31 14:12:43 +03:00
Luke Bakken 61c7c53866 fixup 2017-10-30 18:19:57 -07:00
Luke Bakken dffde95b82 Merge branch 'stable' 2017-10-30 17:59:00 -07:00
Luke Bakken 2e49c203c1 Add path_prefix tests and fixup existing test suite to pass 2017-10-26 15:33:08 -07:00
Luke Bakken a9c91adcd3 Add new test group to run all tests with path_prefix setting 2017-10-26 15:33:07 -07:00
Daniil Fedotov 6ea84f7e19 Merge branch 'stable' 2017-10-26 17:11:19 +01:00
Daniil Fedotov 64b6473b78 Report unused memory in different color.
If `rss` or `allocator` memory calculation strategy is used,
show the unallocated and unused memory using other color then
system memory.
2017-10-25 16:45:56 +01:00
Michael Klishin e0efa5c1dc Merge branch 'stable'
Conflicts:
	priv/www/css/main.css
	priv/www/js/tmpl/paths.ejs
2017-10-19 01:07:34 +03:00
Michael Klishin 778e7f9dd5 Add CORS settings to Cuttlefish schema 2017-10-18 02:06:26 +03:00
Michael Klishin cd1a9964d5 Squash a couple of warnings 2017-10-17 16:55:33 +03:00
Michael Klishin 6f25d78681 Two more test cases 2017-09-28 09:31:20 +03:00
Michael Klishin 504da8c360 Initial definitions import test 2017-09-27 12:21:39 +03:00
Daniil Fedotov 7f54319279 API to restart a crashed vhost.
Administrator should be able to restart vhosts if they believe
it can be recovered.
Added buttons to vhost status tables and
the new HTTP API endpoint: /vhosts/:vhost/start/:node

Part of rabbitmq/rabbitmq-server#1321
[#149484305]
2017-08-04 11:34:39 +01:00
Michael Klishin 7928309de7 Ditto 2017-08-03 18:29:25 +03:00
Michael Klishin 1113095d49 Update test expectations 2017-08-03 16:59:51 +03:00
Michael Klishin a0ce2d5140 Grant administrators access to all policies, update test suite
References #461.
2017-08-02 19:29:26 +03:00
Michael Klishin fdb1cbf5d5 Authorize users tagged with 'administrator' can perform vhost-scoped operations
This way an administrator without any permissions can access every form
on pages such as user permission management. Some users and RabbitMQ team
members administrators should have unconditional access to all vhosts.

Closes #461 as well as a number of similar issues.
2017-08-01 18:31:19 +03:00
Michael Klishin ff67545867 Merge branch 'master' into rabbitmq-server-1303 2017-07-28 14:03:03 -07:00
Daniil Fedotov a9ba921d3f Test stopped queue deletion 2017-07-27 14:40:48 +01:00
kjnilsson 4fd5c4563e merge from master 2017-07-27 09:30:50 +01:00
kjnilsson f25f0c2e1d Change users bulk delete to use a deletion resource.
DELETE with a payload doesn't have prescribed semantics and at least
older version of the HTTP spec prescribe that the request uri should
full identify the resource to be deleted.

This change introduces a /users/bulk-delete resource to which we POST the
users that are to be deleted.

[#149484991]
2017-07-27 09:25:50 +01:00
Daniil Fedotov bf4ef76557 Test stopped queues in management. 2017-07-26 17:05:17 +01:00
Diana Corbacho ba383af81f Rename orphan -> without-permissions 2017-07-26 14:52:14 +02:00
Michael Klishin e9e46cd850 Merge branch 'master' into rabbitmq-management-447
Conflicts:
	src/rabbit_mgmt_wm_users.erl
	test/rabbit_mgmt_http_SUITE.erl
2017-07-26 15:40:48 +03:00
Diana Corbacho 8ace0f9909 Introduce an endpoint that lists orphaned users
rabbitmq-management#447
[#149484841]
2017-07-26 13:47:30 +02:00
Karl Nilsson 1c052baa40 Merge pull request #449 from rabbitmq/rabbitmq-management-446
Report down vhosts in UI
2017-07-25 18:39:24 +01:00
Michael Klishin 5002e77371 Merge pull request #450 from rabbitmq/rabbitmq-management-448
Introduce an endpoint for bulk delete users
2017-07-25 20:20:19 +03:00
Diana Corbacho 27f3e7eeac Test endpoint for bulk delete users
rabbitmq-management#448
[#149484991]
2017-07-25 17:52:36 +01:00
Diana Corbacho 89da9aa193 Fix tests that check vhost permissions
rabbitmq-management#444
2017-07-25 17:28:46 +01:00
Diana Corbacho 3fedc28c1f Introduce an endpoint for bulk delete users
rabbitmq-management#448
[#149484991]
2017-07-25 16:46:40 +01:00
Diana Corbacho c319bc23c6 Check vhost state on tests
rabbitmq-management#446
2017-07-25 14:10:44 +01:00
Michael Klishin cc4c5dca20 Merge branch 'stable'
Conflicts:
	src/rabbit_mgmt_db.erl
	src/rabbit_mgmt_wm_user.erl
	test/rabbit_mgmt_http_SUITE.erl
2017-07-22 13:48:35 +03:00
Luke Bakken f575deecf0 Merge pull request #442 from rabbitmq/rabbitmq-management-441
Allow permissions to be "preconfigured" when user is created
2017-07-20 14:37:41 -07:00
Michael Klishin 5737e884f0 Allow permissions to be "preconfigured" when user is created
Closes #441.

[Finishes #149174229]
2017-07-20 22:29:22 +03:00
Michael Klishin 2086756812 Merge pull request #436 from rabbitmq/rabbitmq-server-1294
Revert "rabbit_mgmt_http_SUITE: Comment out test on memory breakdow values"
2017-07-20 17:53:23 +03:00
Michael Klishin 74e507ab1e More tests for user creation 2017-07-20 14:29:54 +03:00
Michael Klishin 9a3db89902 Merge branch 'master' into rabbitmq-management-423
Conflicts:
	test/rabbit_mgmt_http_SUITE.erl
2017-07-19 20:53:01 +03:00
Michael Klishin d5bfc50c24 Don't use ports in --base-uri tests as test runner already specifies one
and that port is non-standard.
2017-07-19 19:34:57 +03:00
Michael Klishin 122525358c Don't use ports in --base-uri tests as test runner already specifies one
and that port is non-standard.
2017-07-19 19:34:16 +03:00
Michael Klishin 2ef40ad07c Merge branch 'stable'
Conflicts:
	test/rabbit_mgmt_http_SUITE.erl
2017-07-19 04:25:39 +03:00
Michael Klishin bd0397ff5d rabbitmqadmin: add --base-uri
When specified, hostname, port, username and password
are taken from the URI. URI path is intentionally ignored
because AMQP(S) URIs use path to configure target virtual host
but HTTP APIs typically use URI paths to specify an endpoint
prefix (--path-prefix in rabbitmqadmin).

To avoid confusion we log a warning and ask the user to
specify --vhost and/or --path-prefix explicitly.

Closes #437.
2017-07-19 01:01:53 +03:00
Daniil Fedotov dfcb144b17 Revert "rabbit_mgmt_http_SUITE: Comment out test on memory breakdown values"
This reverts commit ed1c106a39.
The assertion can be uncommented because the bug has been fixed.
[related to rabbitmq/rabbitmq-server#1294]
[#149066379]
2017-07-18 12:44:42 +01:00
Karl Nilsson 4456b6afea Merge pull request #435 from rabbitmq/rabbitmq-management-383
Allow users w/o password or password hash to be created
2017-07-18 09:43:15 +01:00
Jean-Sébastien Pédron d90a441d25 Merge branch 'stable' 2017-07-18 10:16:39 +02:00
Jean-Sébastien Pédron ed1c106a39 rabbit_mgmt_http_SUITE: Comment out test on memory breakdown values
This is a temporary measure.

Since rabbitmq/rabbitmq-server@0872a15a05,
`total` has no relationship with the other counters: total is the
resident memory footprint of the OS process (so pages in physical
memory), but the other counters are based on what was actually
allocated. Those counters should be compared to the total reported by
erlang:memory() instead.
2017-07-18 10:12:51 +02:00
Jean-Sébastien Pédron 00eda66815 rabbit_mgmt_http_SUITE: Use spaces to indent 2017-07-18 10:04:38 +02:00
Michael Klishin 49a9bb93a7 Allow users w/o password or password hash to be created
* This is a valid case for environments where external
   authn mechanisms (x509 certificates) or backends (e.g. HTTP) are used.
 * We already allow this for existing users.

Closes #383.
2017-07-17 18:56:23 +03:00
Luke Bakken 47b70d8a8a Add TODO for queue limit validation
Validation code in place, how to display?

Take existing queue count into consideration

Server-side validation takes existing queue count into consideration. Improve error message sent back to web application.

Improve messaging, remove unused template

Take existing queues into account when importing definitions for all vhosts. Fix test suite.
2017-07-10 07:58:34 -07:00
Jean-Sébastien Pédron 7e8b67feed Merge branch 'stable' 2017-07-10 12:00:56 +02:00
Jean-Sébastien Pédron 142c5e90c4 rabbit_mgmt_http_SUITE: Wait in a loop for the connection to disappear
... instead of polling it once after 200 ms. This was failing from time
to time because of that timer:sleep() was sometimes too short.

Signed-off-by: Karl Nilsson <knilsson@pivotal.io>
2017-07-10 11:52:03 +02:00
Michael Klishin b7b324e213 Adapt this test for master (maps and all) 2017-06-19 23:59:34 +03:00