Commit graph

203 commits

Author SHA1 Message Date
Elad Solomon
3a80b79497 Compile Zeek with MSVC
Allow Zeek to be embedded in another project
2022-11-09 18:15:30 +02:00
Tim Wojtulewicz
3fafe5c19f Merge remote-tracking branch 'origin/topic/johanna/ubuntu2210ci'
* origin/topic/johanna/ubuntu2210ci:
  Add Ubuntu 22.10 to ci
2022-11-03 08:56:43 -07:00
Johanna Amann
36484eaf34 Add Ubuntu 22.10 to ci 2022-11-03 10:08:12 +00:00
Tim Wojtulewicz
d442ea1bb9 egrep reported as obsolete by opensuse-tumbleweed builds 2022-10-27 11:48:43 -07:00
Tim Wojtulewicz
d8b31de1a2 Move fuzzer corpus files to another directory 2022-08-26 13:51:30 -07:00
Tim Wojtulewicz
a927c4a998 Switch macOS Monterey build to new m1-based VM 2022-08-25 12:54:12 -07:00
Tim Wojtulewicz
47bcd2cbeb GH-2258: Add skip decorator to DNS unit tests 2022-07-13 12:33:17 -07:00
Christian Kreibich
963b27f054 Add procps/procps-ng to several CI Docker images
It helps to have "ps" available for testing.
2022-07-09 00:52:44 -07:00
Christian Kreibich
39f98778e4 CI: Add OpenSUSE Tumbleweed 2022-07-05 16:21:47 -07:00
Christian Kreibich
2c263aa6c7 CI: drop Ubuntu 21.10, EOL 2022-07-14 2022-07-05 13:53:51 -07:00
Christian Kreibich
a2b73f3586 CI: drop Debian 9, EOL 2022-06-30 2022-07-05 13:53:36 -07:00
Christian Kreibich
bf9b1ebbbe Add helpers for syncing commit files with external testsuites
This provides "make sync-repos" to check out all locally available testsuites at
the commits indicated in their commit files, and "make sync-commits" to update
the commit files to the HEADs of the local testsuite repos.

Also adds the commit -> repo sync for the Makefile init target so initialization
always lands on the right version, and removes the corresponding explicit
checkout from the CI repo setup.
2022-06-28 13:20:14 -07:00
Johanna Amann
94e1d5786e CI: Add Fedora 36, remove Fedora 34 2022-06-21 18:06:00 +01:00
Johanna Amann
538e7977bc CI: Add OpenSuSE Leap 15.4, fix 15.3
15.3 included the wrong update repo in the Dockerfile
2022-06-15 09:43:00 +01:00
Johanna Amann
7a28b7458e CI: Add Ubuntu 22.04 (LTS Release, EOL 04/2027) 2022-06-14 09:37:53 +01:00
Tim Wojtulewicz
7bb5e196d7 Sort package names in Dockerfiles 2022-06-08 11:16:12 -07:00
Tim Wojtulewicz
d8df7e9b42 Dockerfile changes for consistency with Broker files 2022-06-03 14:57:21 -07:00
Tim Wojtulewicz
2977af93b5 Make some of the CI Dockerfiles more consistent 2022-06-03 14:28:48 -07:00
Robin Sommer
d99f041ac5
Add WebSocket support for exchanging events with external clients.
This exposes Broker's new WebSocket support in Zeek. To enable it,
call `Broker::listen_websocket()`. Zeek will then start listening on
port 9997 for incoming WebSocket connections.

See the Broker documentation for a description of the message format
expected over these WebSocket connections.
2022-06-02 10:31:52 +02:00
Tim Wojtulewicz
4f11a57159 Add DOCKERFILE_VERSION variable to all CI dockerfiles 2022-05-23 08:47:11 -07:00
Tim Wojtulewicz
b8f745ca84 Rework .cirrus.yml a bit to commonize some parts 2022-05-19 09:21:55 -07:00
Tim Wojtulewicz
d48a1b520f Enable ccache for Cirrus builds 2022-05-19 09:21:55 -07:00
Johanna Amann
4d66e4e16c Fix SSL tests on Centos Stream 9
SHA1 signatures are only allowed in the legacy policy. I have no idea
where this is documented - I found it in a patch for the OpenSSL source
package.

Also adding tar as a specific dependency, since we have a test that
requires it, and at least for me it was not present in a minimal
installation.

Fixes #2115
2022-05-19 15:00:12 +01:00
Tim Wojtulewicz
aaaca5d5a6 Merge remote-tracking branch 'origin/topic/bbannier/spicy'
* origin/topic/bbannier/spicy:
  Add NEWS item for new requirements due to default-enabled Spicy support.
  Include headers in binary dir before other headers.
  Increase memory in CI.
  Add tests for bundled Spicy infrastructure.
  Include spicy in build.
  Add `bare_mode` bif.
  Change test so included plugins can load notice framework.
  Do not log function arguments in test.
2022-05-17 08:50:33 -07:00
Tim Wojtulewicz
031036be9c Call pip using python -m flag during FreeBSD CI prep 2022-05-16 11:55:40 -07:00
Benjamin Bannier
95aff9a1e3 Include spicy in build. 2022-05-16 09:07:11 +02:00
Christian Kreibich
8e24f84857 CI update: add Ubuntu 21.10 2022-01-24 13:40:11 -08:00
Christian Kreibich
1de58030f2 CI update: remove OpenSUSE Leap 15.2 (EOL) 2022-01-24 13:40:11 -08:00
Christian Kreibich
404c43e36c CI update: add CentOS Stream 9 2022-01-24 13:40:11 -08:00
Johanna Amann
76a0cad1d0 Remove Fedora 33 from CI.
EOL date was 2021‑11‑30
2022-01-11 11:02:00 +00:00
Johanna Amann
46df2edfb1 Remove CentOS 8 from CI.
EOL was 2021-12-31
2022-01-05 10:24:46 +01:00
Benjamin Bannier
1f388e3f40 Format shell scripts with shfmt.
All changes in this patch were performed automatically with `shfmt` with
configuration flags specified in `.pre-commit-config.yaml`.

In addition to fixing whitespace the roundtrip through shfmt's AST also
transforms command substitutions

    `cmd`
    # becomes
    $(cmd)

and some redirects

    >&2 echo "msg"
    # becomes
    echo >&2 "msg"
2021-11-24 23:13:02 +01:00
Johanna Amann
0dc8dfacb7 Make cmake & ci like OpenSSL 3.0
Older cmake versions have problems with the version number. When
installing OpenSSL on a 64 bit linux one also needs to create an
additional symlink to get cmake to use the correct library.
2021-11-17 14:57:23 +00:00
Johanna Amann
ce38b5a056 Add OpenSSL 3.0 CI test 2021-11-17 13:33:49 +00:00
Benjamin Bannier
77e2e8278f Add pre-commit config.
This patch adds `clang-format` as only linter for now. This replaces the
previously used script from `auxil/run-clang-format` which we remove.

This requires the Python program `pre-commit`
(https://pypi.org/project/pre-commit/). With that one can then run
`clang-format` on the whole codebase with

    $ pre-commit run -a clang-format

or on just the staged files

    # Explicitly selecting linter.
    $ pre-commit run clang-format

    # Run all linters (currently just `clang-format`).
    $ pre-commit

`pre-commit` supports managing Git commit hooks so that linters are run
on commit. Linters can be installed with

    $ pre-commit install

The documentation at https://pre-commit.com/ covers these topics in
addition to more information.
2021-11-09 07:20:18 +01:00
Christian Kreibich
bac833a2f9 Add macOS Monterey and drop Catalina in CI 2021-11-03 16:22:06 -07:00
Christian Kreibich
f7d18eeb9e Add Fedora 35 to CI 2021-11-03 13:40:22 -07:00
Christian Kreibich
b66e607e5f Don't initialize private testsuite in CI when not running out of Zeek project
The initialization of the private testsuite currently fails builds run in
forks. Cirrus's encrypted variables won't work outsize of the Zeek project, so
skip that setting altogether.
2021-10-05 12:37:02 -07:00
Christian Kreibich
eadb8648e6 CI tweak: upgrade curl on FreeBSD to avoid cert expiration 2021-10-01 11:56:27 -07:00
Christian Kreibich
9eb2696895 CI tweak: add a datestamp to Debian 9 Dockerfiles to invalidate Cirrus build cache 2021-10-01 11:56:24 -07:00
Tim Wojtulewicz
dc4e273153 Fixing homebrew, again.
Homebrew apparently requires you to now specify the version of the package
you're updating. We previously could just run `brew update openssl` and it
would work. Now we must run `brew update openssl@1.1` for the command to
succeed.
2021-09-25 11:45:22 -07:00
Tim Wojtulewicz
1a4af90389 Use brew update instead of brew update-reset in CI macOS prepare script
Using `brew update-reset` causes homebrew to reset to homebrew's HEAD commit, which may
be buggy and broken. It appears whatever Cirrus was doing previously on their Catalina
VM is no longer a problem, and so update-reset isn't required anymore. Switch to
`brew update` to make sure we still get newer versions of the packages, but is
actually a versioned release of homebrew.
2021-09-21 13:05:33 -07:00
Tim Wojtulewicz
8354bff91c Disable script profiling/coverage on sanitizer builds 2021-09-21 09:43:08 -07:00
Tim Wojtulewicz
a3ba7f638b GH-386: Add clang-format config and scripts 2021-09-16 15:35:11 -07:00
Christian Kreibich
7b60800231 CI support refresh
- Add Debian 11 (Bullseye)
- Drop Ubuntu 16.04

Includes submodule bumps for corresponding updates
2021-08-26 13:32:02 -07:00
Christian Kreibich
959de22349 Use Cirrus's new greedy mode for parallelizing builds and tests
This oversubscribes our cores 2x, which testing shows we actually
run with at times: speedup is around a third on average for builds,
and a bit more than that for testing.

Also some light Bashification in ci/build.sh, for consistency.
2021-07-19 13:44:16 -07:00
Dominik Charousset
6d79b2a7cc Fix package name for CMake on CentOS 8 2021-06-29 13:42:14 +02:00
Tim Wojtulewicz
1a61771d2f Call brew update-reset in ci/macos/prepare.sh
This fixes some issues with the Catalina builds when it prepares the image
and the base Cirrus image has old recipes for Homebrew. The VM then has
to build a bunch of packages it shouldn't need to.
2021-06-23 13:09:23 -07:00
Tim Wojtulewicz
cbd4c5ebf9 GH-1368: Use --osx-sysroot for macOS CI builds 2021-06-23 13:09:00 -07:00
Christian Kreibich
0b510c9679 Drop Fedora 32 from CI, now past EOL 2021-06-17 18:32:02 -07:00