Commit Graph

35 Commits

Author SHA1 Message Date
Michael Klishin b12d1c5be4 .gitignore: whitelist ./deps/oauth2_client 2024-02-10 20:12:15 +01:00
Jean-Sébastien Pédron c1b845fb5d
Git: Do not ignore `deps/rabbitmq_prelaunch`
[Why]
It was moved from `deps/rabbit/apps` to `deps` and thus is not covered
by the rule on `deps/rabbit` anymore.
2024-01-18 13:58:36 +01:00
Rin Kuryloski 231465f35e Use rules_erlang 3.13.1
This version of rules_erlang adds coverage support

Bazel has sort of standardized on lcov for coverage, so that is what
we use.

Example:
1. `bazel coverage //deps/rabbit:eunit -t-`
2. `genhtml --output genhtml "$(bazel info
output_path)/_coverage/_coverage_report.dat"`
3. `open genhtml/index.html`

Multiple tests can be run with results aggregated, i.e. `bazel
coverage //deps/rabbit:all -t-`

Running coverage with RBE has a lot of caveats,
https://bazel.build/configure/coverage#remote-execution, so the above
commands won't work as is with RBE.
2023-10-17 11:22:36 -04:00
Michael Klishin 5e8b12002e Fix a .gitignore typo 2023-09-21 13:01:41 -04:00
Michael Klishin 2131d052a0 gitignore .tools-versions 2023-09-21 13:00:39 -04:00
Iliia Khaprov 75cec6ff40 fix python PEP668 dependency thing 2023-07-08 13:10:53 +02:00
Iliia Khaprov d757cc524f .gitignore *.tmp 2023-01-26 16:28:47 +01:00
Rin Kuryloski a8658ae68d Add "bazel run //tools:symlink_deps_for_erlang_ls"
for symlinking 3rd party deps into a place that erlang_ls can use them
2023-01-05 13:02:02 +01:00
Rin Kuryloski e799daa24e Use rules_erlang 3.8.5 2022-12-19 11:16:04 +01:00
David Ansari 5bf8192982 Support code coverage
Previously it was not possible to see code coverage for the majority of
test cases: integration tests that create RabbitMQ nodes.
It was only possible to see code coverage for unit tests.
This commit allows to see code coverage for tests that create RabbitMQ
nodes.

The only thing you need to do is setting the `COVER` variable, for example
```
make -C deps/rabbitmq_mqtt ct COVER=1
```
will show you coverage across all tests in the MQTT plugin.

Whenever a RabbitMQ node is started `ct_cover:add_nodes/1` is called.
Contrary to the documentation which states

> To have effect, this function is to be called from init_per_suite/1 (see common_test) before any tests are performed.

I found that it also works in init_per_group/1 or even within the test cases themselves.

Whenever a RabbitMQ node is stopped or killed `ct_cover:remove_nodes/1`
is called to transfer results from the RabbitMQ node to the CT node.

Since the erlang.mk file writes a file called `test/ct.cover.spec`
including the line:
```
{export,".../rabbitmq-server/deps/rabbitmq_mqtt/cover/ct.coverdata"}.
```
results across all test suites will be accumulated in that file.

The accumulated result can be seen through the link `Coverage log` on the test suite result pages.
2022-11-10 15:04:31 +01:00
Luke Bakken eb14b0af3d
Ignore `.exrc` file 2022-10-24 10:30:43 -07:00
Luke Bakken 7fe159edef
Yolo-replace format strings
Replaces `~s` and `~p` with their unicode-friendly counterparts.

```
git ls-files *.erl | xargs sed -i.ORIG -e s/~s>/~ts/g -e s/~p>/~tp/g
```
2022-10-10 10:32:03 +04:00
Michael Klishin 89fa75ee1b
Fold trust_store_http into this repo
It does not have any external users and we'd prefer
to evolve it together with the RabbitMQ tier 1 plugin that
depends on it.

Pair: @pjk25
2022-07-28 15:15:36 +04:00
Jean-Sébastien Pédron 0fd051234e
Git: Don't ignore `rabbitmq_ct_helpers` and `rabbitmq_ct_client_helpers` in deps 2022-06-28 11:08:29 +02:00
Karl Nilsson 5ede74b448 Move all rebar.config files into the root directory
Some tools such as nvim + erlang_ls sometimes change the cwd if
they encounter a rebar.config. Here we move all rebar.config files
into the root of the project to avoid this and also have a single
point for formatting configuration.
2022-05-18 09:37:38 +01:00
Michael Klishin b3f1460f34
Ignore VS Code and IDEA workspace directories 2022-05-10 16:19:12 +04:00
Luke Bakken fb5068a80e
Begin work migrating to native hex publishing
Use hex for credentials_obfuscation dep
2022-04-19 13:21:52 -07:00
Michal Kuratczyk 8542bdfb93 Add docker-image build artefacts to .gitignore 2022-04-19 15:49:50 +02:00
Ilya Khaprov f7ac2fc059
ignore crash dump 2021-07-19 14:57:50 +02:00
Philip Kuryloski 18e460c129 Use a split .bazelrc so we can check most of the file into the repo
Now a base .bazelrc is provided, which will import a user.bazelrc
file, allowing local additions and overrides (like credentials and/or
os specific config). user-template.bazelrc provides an example.
2021-07-12 22:03:28 +02:00
Michael Klishin f8fbb544df
Ignore *.lock files 2021-06-28 21:59:17 +03:00
dcorbacho 38f474688f Stream common library 2021-06-11 17:24:00 +02:00
Philip Kuryloski 388654c542
Add a partial Bazel build (#2938)
Adds WORKSPACE.bazel, BUILD.bazel & *.bzl files for partial build & test with Bazel. Introduces a build-time dependency on https://github.com/rabbitmq/bazel-erlang
2021-03-29 11:01:43 +02:00
kjnilsson 52f745dcde Update rabbitmq-components.mk
use v1.x branch of ra
2021-03-18 15:14:40 +00:00
Michael Klishin 775459f5b9
Ignore commonly used profiling file names 2021-02-16 17:14:11 +03:00
Arnaud Cogoluègnes bf72683eb2
Add stream prometheus plugin 2021-01-11 16:49:56 +01:00
Arnaud Cogoluègnes ed12ae0bbf
Add permission tests for stream management 2020-11-23 16:32:14 +01:00
Michael Klishin d83da4e87e
Drive by change: ignore ebin/*
(cherry picked from commit c80818fe90)
2020-11-17 14:17:52 +03:00
Philip Kuryloski 4ca56d6f42 Add rabbitmq_stream to .gitignore 2020-11-16 13:39:38 +01:00
Philip Kuryloski e32b93b3e6 Add support for bringing topic branches into the monorepo
Once the monorepo is built, from within it one can run `make
fetch-topic-branch-${TOPIC_BRANCH}` then `make
topic-branch-${TOPIC_BRANCH}` to rebase the commits from all the
sources back onto the monorepo
2020-11-13 14:41:22 +01:00
Philip Kuryloski 44b77e8b1e Monorepo GitHub Actions
Add GitHub Actions workflows for Erlang/OTP 22.3 & 23.0.

The workflows run tests for each component that is now part of this
repo, with test suite parallelization specifically for the rabbit
erlang application.
2020-11-13 14:41:22 +01:00
Jean-Sébastien Pédron ba19ba552b
Git: Ignore copied CLI 2019-12-12 15:06:05 +01:00
Gerhard Lazu 7a1ee1c1e3 Ignore .envrc files
I'm using direnv to set XML_CATALOG_FILES so that I can compile on OS X
2017-04-13 12:34:36 +01:00
Jean-Sébastien Pédron 874439d24d
Makefile: Rename project to rabbitmq_server_release 2016-09-23 10:45:08 +02:00
Jean-Sébastien Pédron db7f0a0f38
Initial commit of RabbitMQ release handling bits
Everything comes from the rabbitmq-server repository. The goals of this
move are:
    1. separate unrelated files: the broker sources and release
       handling comprising plugins;
    2. resolve an important dependency cycle: plugins depend on the
       broker to run, but the broker depends on plugins to build a
       release.

[#130659985]
2016-09-20 18:19:24 +02:00