Commit Graph

228 Commits

Author SHA1 Message Date
Philip Kuryloski 73e3196e1f Use non-conflicting aws resource names in integration suite 2021-05-06 10:08:39 +02:00
Philip Kuryloski 999bed402c Add rabbitmq_peer_discovery_aws to bazel
For mysterious reasons, it turns out that using rabbit_ct_helpers:exec
with the `[binary]` option cause `aws ec2 describe-instances ...` to
fail with "bad argument". Removing the option and using
`list_to_binary/1` on the response before json parsing seems to
alleviate the issue.

Also make RABBITMQ_IMAGE non-optional for integration_SUITE
2021-05-05 09:51:00 +02:00
Philip Kuryloski 60ba1fffcd Use Amazon ECS to test rabbitmq_peer_discovery_aws
in the integration_SUITE
2021-05-05 09:48:46 +02:00
Philip Kuryloski aefa431b08 Test autoscaled ec2 instance clustering via make/shell 2021-05-05 09:47:36 +02:00
Philip Kuryloski 22c4d358eb Test tagged ec2 instance clustering via make/shell 2021-05-05 09:47:36 +02:00
Philip Kuryloski 441550c58b Remove the integration_SUITE from peer discovery aws
#3015 will replace it with a working version as the current copy will block release pipelines
2021-05-04 15:52:16 +02:00
Michael Klishin e2893f44db
Correctly provide log arguments here 2021-04-08 23:13:48 +03:00
Michael Klishin ee6b9e4d10
Update a couple of AWS-related license headers 2021-04-08 21:09:18 +03:00
Michael Klishin 0a416929d3
Use a more typical unit test suite name here 2021-04-08 12:20:05 +03:00
Thuan Duong Ba e63d24a5a9 address review feedback 2021-04-06 15:42:47 -07:00
Thuan Duong Ba 74206c698d update parse 4xx responses from instance metadata service 2021-04-05 14:42:12 -07:00
Thuan Duong Ba 4e7eeb4309 Support rabbit_peer_discovery_aws to work with instance metadata service v2 (IMDSv2).
IMDSv2 uses session-oriented requests. With session-oriented requests, a session token is retrieved first
then used in subsequent GET requests for instance metadata values such as instance-id, credentials, etc.

Details could be found here https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html
2021-04-04 20:57:59 -07:00
Philip Kuryloski a63f169fcb Remove duplicate rabbitmq-components.mk and erlang.mk files
Also adjust the references in rabbitmq-components.mk to account for
post monorepo locations
2021-03-22 15:40:19 +01:00
kjnilsson 52f745dcde Update rabbitmq-components.mk
use v1.x branch of ra
2021-03-18 15:14:40 +00:00
Loïc Hoguin d5e3bdd623
Add ADDITIONAL_PLUGINS variable
This allows including additional applications or third party
plugins when creating a release, running the broker locally,
or just building from the top-level Makefile.

To include Looking Glass in a release, for example:

$ make package-generic-unix ADDITIONAL_PLUGINS="looking_glass"

A Docker image can then be built using this release and will
contain Looking Glass:

$ make docker-image

Beware macOS users! Applications such as Looking Glass include
NIFs. NIFs must be compiled in the right environment. If you
are building a Docker image then make sure to build the NIF
on Linux! In the two steps above, this corresponds to Step 1.

To run the broker with Looking Glass available:

$ make run-broker ADDITIONAL_PLUGINS="looking_glass"

This commit also moves Looking Glass dependency information
into rabbitmq-components.mk so it is available at all times.
2021-03-12 12:29:28 +01:00
Michael Klishin 97ff62d3b2
Drop trailing newlines from logged messages where possible
Lager strips trailing newline characters but OTP logger with the default
formatter adds a newline at the end. To avoid unintentional multi-line log
messages we have to revisit most messages logged.

Some log entries are intentionally multiline, others
are printed to stdout directly: newlines are required there
for sensible formatting.
2021-03-11 15:17:37 +01:00
Jean-Sébastien Pédron cdcf602749
Switch from Lager to the new Erlang Logger API for logging
The configuration remains the same for the end-user. The only exception
is the log root directory: it is now set through the `log_root`
application env. variable in `rabbit`. People using the Cuttlefish-based
configuration file are not affected by this exception.

The main change is how the logging facility is configured. It now
happens in `rabbit_prelaunch_logging`. The `rabbit_lager` module is
removed.

The supported outputs remain the same: the console, text files, the
`amq.rabbitmq.log` exchange and syslog.

The message text format slightly changed: the timestamp is more precise
(now to the microsecond) and the level can be abbreviated to always be
4-character long to align all messages and improve readability. Here is
an example:

    2021-03-03 10:22:30.377392+01:00 [dbug] <0.229.0> == Prelaunch DONE ==
    2021-03-03 10:22:30.377860+01:00 [info] <0.229.0>
    2021-03-03 10:22:30.377860+01:00 [info] <0.229.0>  Starting RabbitMQ 3.8.10+115.g071f3fb on Erlang 23.2.5
    2021-03-03 10:22:30.377860+01:00 [info] <0.229.0>  Licensed under the MPL 2.0. Website: https://rabbitmq.com

The example above also shows that multiline messages are supported and
each line is prepended with the same prefix (the timestamp, the level
and the Erlang process PID).

JSON is also supported as a message format and now for any outputs.
Indeed, it is possible to use it with e.g. syslog or the exchange. Here
is an example of a JSON-formatted message sent to syslog:

    Mar  3 11:23:06 localhost rabbitmq-server[27908] <0.229.0> - {"time":"2021-03-03T11:23:06.998466+01:00","level":"notice","msg":"Logging: configured log handlers are now ACTIVE","meta":{"domain":"rabbitmq.prelaunch","file":"src/rabbit_prelaunch_logging.erl","gl":"<0.228.0>","line":311,"mfa":["rabbit_prelaunch_logging","configure_logger",1],"pid":"<0.229.0>"}}

For quick testing, the values accepted by the `$RABBITMQ_LOGS`
environment variables were extended:
  * `-` still means stdout
  * `-stderr` means stderr
  * `syslog:` means syslog on localhost
  * `exchange:` means logging to `amq.rabbitmq.log`

`$RABBITMQ_LOG` was also extended. It now accepts a `+json` modifier (in
addition to the existing `+color` one). With that modifier, messages are
formatted as JSON intead of plain text.

The `rabbitmqctl rotate_logs` command is deprecated. The reason is
Logger does not expose a function to force log rotation. However, it
will detect when a file was rotated by an external tool.

From a developer point of view, the old `rabbit_log*` API remains
supported, though it is now deprecated. It is implemented as regular
modules: there is no `parse_transform` involved anymore.

In the code, it is recommended to use the new Logger macros. For
instance, `?LOG_INFO(Format, Args)`. If possible, messages should be
augmented with some metadata. For instance (note the map after the
message):

    ?LOG_NOTICE("Logging: switching to configured handler(s); following "
                "messages may not be visible in this log output",
                #{domain => ?RMQLOG_DOMAIN_PRELAUNCH}),

Domains in Erlang Logger parlance are the way to categorize messages.
Some predefined domains, matching previous categories, are currently
defined in `rabbit_common/include/logging.hrl` or headers in the
relevant plugins for plugin-specific categories.

At this point, very few messages have been converted from the old
`rabbit_log*` API to the new macros. It can be done gradually when
working on a particular module or logging.

The Erlang builtin console/file handler, `logger_std_h`, has been forked
because it lacks date-based file rotation. The configuration of
date-based rotation is identical to Lager. Once the dust has settled for
this feature, the goal is to submit it upstream for inclusion in Erlang.
The forked module is calld `rabbit_logger_std_h` and is based
`logger_std_h` in Erlang 23.0.
2021-03-11 15:17:36 +01:00
dcorbacho 61f7b2a723 Update to ranch 2.0 2021-03-08 23:11:05 +01:00
Michael Klishin b6c4831e75
Bump Lager to 3.9.1 2021-03-04 04:36:39 +03:00
Loïc Hoguin 66ac1bf5e9
Bump observer_cli to 1.6.1
More responsive when the system is overloaded with file calls.
2021-03-01 21:55:27 +03:00
Michael Klishin 8fe3df9343
Upgrade Lager to 3.9.0 for OTP 24 compatibility
`lager_util:expand_path/1` use changes are
due to erlang-lager/lager#540
2021-02-26 00:52:15 +03:00
Michael Klishin f73e851f9c
Bump observer_cli to 1.6.0 2021-02-24 12:53:55 +03:00
Michael Klishin a5098b28a7
Bump Lager to 3.8.2 for OTP 24 compatibility 2021-02-24 12:53:30 +03:00
Arnaud Cogoluègnes b921ac11a8
Merge pull request #2712 from rabbitmq/rabbitmq-stream-prometheus
Add stream prometheus plugin
2021-01-27 16:46:37 +01:00
Michael Klishin 52479099ec
Bump (c) year 2021-01-22 09:00:14 +03:00
Arnaud Cogoluègnes bf72683eb2
Add stream prometheus plugin 2021-01-11 16:49:56 +01:00
Arnaud Cogoluègnes 23d7e8114c
Introduce stream management plugin 2020-11-19 14:48:25 +01:00
Jean-Sébastien Pédron 47686ee1f0
Remove unused .github directories
They were valid until the switch to the "monorepository" when everything
was merged into a single Git repository.
2020-11-17 13:33:16 +01:00
Arnaud Cogoluègnes 0de3ed924d Update rabbitmq-components.mk 2020-11-03 14:27:44 +01:00
Michael Klishin b46d2ed626 Update rabbitmq-components.mk 2020-10-21 12:55:40 +03:00
Michael Klishin fe8157fd33 Correct returned error value to match the list_nodes/0 contract
References #39.
2020-09-28 10:38:53 +03:00
Stefan Moser 1a6ddadab9 return an error when an AWS API fails so that peer discovery will be retried 2020-09-25 07:01:16 -07:00
Luke Bakken ab742bcb4f Update rabbitmq-components.mk 2020-08-04 08:41:48 -07:00
Jean-Sébastien Pédron bbfb300480 Update rabbitmq-components.mk 2020-07-30 12:06:55 +02:00
Luke Bakken 409cc739a2 Update rabbitmq-components.mk 2020-07-29 10:02:04 -07:00
Jean-Sébastien Pédron b7783cad04 integration_SUITE: Bump timetrap to one hour
It takes more than 30 minutes to compile Erlang from source, even with
the larger VM we selected for CI.
2020-07-27 11:19:51 +02:00
dcorbacho e4d9e28cec Update erlang.mk 2020-07-21 14:33:03 +01:00
Michael Klishin ec8a2230dc Update rabbitmq-components.mk 2020-07-21 13:12:50 +03:00
Michael Klishin 7d0cf97cd6 Update rabbitmq-components.mk 2020-07-21 03:43:04 +03:00
dcorbacho 061c500433 Revert drop of Exhibit B on MPL 2.0 2020-07-20 17:01:58 +01:00
dcorbacho b746f8df61 Update LICENSE 2020-07-20 11:51:41 +01:00
Michael Klishin 4bf0e8b08c Update MPL2 license file, drop Exhibit B
and add a VMware copyright notice.

We did not mean to make this code Incompatible with Secondary Licenses
as defined in [1].

1. https://www.mozilla.org/en-US/MPL/2.0/FAQ/
2020-07-17 14:53:05 +03:00
Michael Klishin 5b03ac9aae Correct LICENSE file post the MPL2 transition 2020-07-14 16:07:06 +03:00
Michael Klishin 2c0846e994 Switch to MPL2 2020-07-14 15:32:09 +03:00
Jean-Sébastien Pédron 67380c7118 Update erlang.mk 2020-06-23 17:14:37 +02:00
Michael Klishin ee5ad3af64 Bump Recon to 2.5.1
for Erlang 23 compatibility of 'rabbitmq-diagnostics observer'

References zhongwencool/observer_cli#68.
2020-06-09 08:22:12 +03:00
Michael Klishin 1987be921f Test cases for short peer discovery mechanism alias 2020-06-03 01:51:18 +03:00
Michael Klishin 97a8f9810a Alias rabbit_peer_discovery_aws as rabbitmq_peer_discovery_aws
So that if someone assumes that the discovery module name is the same
as plugin name, they don't have to troubleshoot `undef' exceptions.

Closes rabbitmq/rabbitmq-peer-discovery-aws#34
2020-06-02 21:24:46 +03:00
Michael Klishin deb9f40aa4 Update type spec to include errors
This plugin chooses to return a blank list of nodes
in most cases so this simply brings the spec in line with
the behavior/interface.

Pair: @dumbbell.
2020-03-16 13:42:29 +03:00
Jean-Sébastien Pédron a2b90448be Update copyright (year 2020) 2020-03-10 16:40:23 +01:00
Gerhard Lazu 5f2ba7f941 Update rabbitmq-components.mk 2020-03-06 09:19:17 +00:00
Gerhard Lazu 33ad18a532 Update erlang.mk 2020-03-06 09:18:03 +00:00
Jean-Sébastien Pédron ebe058ab3e Travis CI: Update config from rabbitmq-common 2020-03-04 14:24:30 +01:00
Jean-Sébastien Pédron 0c7c40d563 Travis CI: Update config from rabbitmq-common 2020-03-04 11:17:16 +01:00
Jean-Sébastien Pédron 3998cf8d25 Travis CI: Update config from rabbitmq-common 2020-03-03 14:53:40 +01:00
Gerhard Lazu 732e26d054 Update rabbitmq-components.mk 2020-02-11 15:31:46 +00:00
Michael Klishin 9fdd105026 (c) bump 2019-12-29 05:50:32 +03:00
Jean-Sébastien Pédron c593680a5f Git: Ignore copied CLI 2019-12-12 15:01:47 +01:00
Jean-Sébastien Pédron ba8506502e Git: Ignore copied CLI 2019-12-12 15:00:47 +01:00
Jean-Sébastien Pédron 527aee375a Update rabbitmq-components.mk 2019-12-12 13:14:56 +01:00
Luke Bakken ecc7f4a1f7 Ensure rabbit_peer_discovery_httpc:maybe_configure_inet6 is called
Follow-up to rabbitmq/rabbitmq-peer-discovery-common#11

References rabbitmq/rabbitmq-peer-discovery-k8s#56
2019-10-24 11:09:18 -07:00
Michael Klishin 433d9e4b94 Travis CI: test on Ubuntu Bionic, OTP 22.1 2019-10-18 08:46:29 +03:00
kjnilsson ef9419dd2c Update rabbitmq-components.mk 2019-09-13 10:24:25 +01:00
Michael Klishin a146642464 Update README.md 2019-09-10 16:23:48 +03:00
kjnilsson c20bd0e794 Update rabbitmq-components.mk 2019-09-04 10:31:04 +01:00
Jean-Sébastien Pédron 06ca99270c Update erlang.mk 2019-08-29 20:45:32 +02:00
Michael Klishin 9b5725939b Update rabbitmq-components.mk 2019-08-11 01:48:00 +10:00
Jean-Sébastien Pédron 8726847fb3 Update erlang.mk 2019-08-02 09:54:20 +02:00
Michael Klishin d26d9cc7a9 Update rabbitmq-components.mk 2019-08-01 17:13:22 +03:00
Arnaud Cogoluègnes 9b6bf62784 Update rabbitmq-components.mk 2019-07-09 16:06:03 +02:00
Jean-Sébastien Pédron 020fe6fb2b Update rabbitmq-components.mk 2019-06-28 16:05:35 +02:00
Jean-Sébastien Pédron 5c0521934e Update erlang.mk 2019-06-28 16:02:26 +02:00
Gerhard Lazu 2338c4a3c2 Update rabbitmq-components.mk 2019-06-03 02:23:41 +01:00
Jean-Sébastien Pédron d1145d176d Update rabbitmq-components.mk 2019-05-17 15:17:22 +02:00
Michael Klishin dabde94d60 Update rabbitmq-components.mk 2019-05-17 08:36:55 +03:00
Michael Klishin 79db87ff78 Update rabbitmq-components.mk 2019-05-14 11:50:55 +03:00
Michael Klishin 315f073671 Update rabbitmq-components.mk 2019-05-13 16:40:39 +03:00
Luke Bakken ff670f2ce7 Add GitHub templates 2019-05-03 09:45:25 -07:00
Gerhard Lazu f672c431c8 Update rabbitmq-components.mk 2019-05-01 13:18:19 +01:00
Luke Bakken 8e39658ec4 Update rabbitmq-components.mk 2019-04-30 16:21:00 -07:00
Jean-Sébastien Pédron 0989a6945a Update rabbitmq-components.mk 2019-04-30 14:47:34 +02:00
Gerhard Lazu b5715d3629 Update rabbitmq-components.mk 2019-04-22 21:55:09 +01:00
Jean-Sébastien Pédron ab1746c9b0 Revert part of "URL Cleanup"
* `rabbit_peer_discovery_aws.erl`: The "instance-id" service is
  unavailable on HTTPS, thus breaking the plugin.
* `erlang.mk` is a generated file: there is no point in changing URLs
  because that change will be lost with the next update of the file.
  Furthermore, it makes it more difficult to track changes compared to
  upstream.

This reverts part of commit 53b971f487.
2019-03-20 15:49:43 +01:00
Spring Operator 53b971f487 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://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://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://169.254.169.254/latest/meta-data/instance-id (AnnotatedConnectException) with 1 occurrences migrated to:
  https://169.254.169.254/latest/meta-data/instance-id ([https](https://169.254.169.254/latest/meta-data/instance-id) result ConnectTimeoutException).
* http://erldb.org (UnknownHostException) with 1 occurrences migrated to:
  https://erldb.org ([https](https://erldb.org) result UnknownHostException).

## 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://cloudi.org/ with 27 occurrences migrated to:
  https://cloudi.org/ ([https](https://cloudi.org/) 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://ninenines.eu with 6 occurrences migrated to:
  https://ninenines.eu ([https](https://ninenines.eu) result 200).
* http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html with 1 occurrences migrated to:
  https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html ([https](https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) 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.rabbitmq.com/blog/2018/02/12/peer-discovery-subsystem-in-rabbitmq-3-7/ with 1 occurrences migrated to:
  https://www.rabbitmq.com/blog/2018/02/12/peer-discovery-subsystem-in-rabbitmq-3-7/ ([https](https://www.rabbitmq.com/blog/2018/02/12/peer-discovery-subsystem-in-rabbitmq-3-7/) result 200).
* http://www.rabbitmq.com/cluster-formation.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/cluster-formation.html ([https](https://www.rabbitmq.com/cluster-formation.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/plugins.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/plugins.html ([https](https://www.rabbitmq.com/plugins.html) result 200).
* http://www.rebar3.org with 1 occurrences migrated to:
  https://www.rebar3.org ([https](https://www.rebar3.org) result 200).
* 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://lasp-lang.org/ with 1 occurrences migrated to:
  https://lasp-lang.org/ ([https](https://lasp-lang.org/) 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://www.mozilla.org/MPL/ with 5 occurrences migrated to:
  https://www.mozilla.org/MPL/ ([https](https://www.mozilla.org/MPL/) 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).
2019-03-20 03:19:31 -05:00
Michael Klishin 7d1ba2cf5e Travis: use Erlang 21.3, Elixir 1.8.1 2019-03-20 10:33:18 +03:00
Michael Klishin e355d4efd5 Update rabbitmq-components.mk 2019-03-15 09:34:43 +03:00
Michael Klishin d62643ee5d Update rabbitmq-components.mk 2019-03-15 05:05:51 +03:00
Michael Klishin a3589b66c4 Update rabbitmq-components.mk 2019-02-12 23:24:01 +03:00
Michael Klishin b72a6b55e5 .travis.yml: use 21.2 as 21.2.2 builds are no available 2019-01-14 01:20:24 +03:00
Michael Klishin 61176a14af .travis.yml: sync Erlang and Elixir versions, require Erlang/OTP 21.2 2019-01-13 05:53:21 +03:00
Luke Bakken 0cf4a4bfc6 Set connect and request timeouts
httpc:request has a default timeout of infinity. This PR ensures that both the connect and request phase uses a timeout

Fixes #25
2019-01-11 10:21:33 -08:00
Luke Bakken c84ae8b242 Update rabbitmq-components.mk 2019-01-09 12:55:13 -08:00
Luke Bakken f8673c576a Update rabbitmq-components.mk 2019-01-08 11:58:31 -08:00
Michael Klishin 81f4a00477 Update rabbitmq-components.mk 2018-12-06 18:28:56 +03:00
Michael Klishin a5f5f5c464 Update rabbitmq-components.mk 2018-12-06 03:15:20 +03:00
Jean-Sébastien Pédron 7bf5473a1e Update rabbitmq-components.mk 2018-11-30 14:56:54 +01:00
Jean-Sébastien Pédron fbe441eeda Update rabbitmq-components.mk 2018-11-22 09:19:38 +01:00
kjnilsson 1247d5e5e5 Update rabbitmq-components.mk 2018-10-29 12:43:25 +00:00
Michael Klishin eadf14423d README updates 2018-10-26 01:39:02 +03:00
Jean-Sébastien Pédron 70ab0f27c7 Update rabbitmq-components.mk 2018-09-19 10:38:19 +02:00