Commit graph

225 commits

Author SHA1 Message Date
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
Tim Wojtulewicz
d62e966234 Fix macOS Big Sur builds on Cirrus
- Upgrade the Big Sur VM to use the Xcode 12.5 version. This has a newer
  version of brew installed on it that fixes an issue with an EOL package host
  that finally shut down for good recently.
- Use 'brew upgrade' for openssl and cmake, since those are both present on the
  base VM. This prevents 'brew install' from printing an error if the package
  exists but is out of date.
2021-06-09 09:11:37 -07:00
Johanna Amannn
aed17a1aaf Add OpenSUSE Leap 15.3 to testing
It was released a few days ago.
2021-06-08 10:47:11 +01:00
Christian Kreibich
c9e91ada8c Add Fedora 34 to CI 2021-06-02 09:46:27 -07:00
Jon Siwek
2beaee9318 Add ssh to Alpine Dockerfile for retrieving external test repos 2021-03-31 11:59:04 -07:00
Jon Siwek
631f19377e Change ci/init-external-repos.sh to use base64 -d
The BusyBox version of `base64` does not have `--decode`.
2021-03-31 10:48:07 -07:00
Jon Siwek
ade37c1dfc Teach ci/init-external-repos.sh to consider user permissions
Any errors while setting up external/private test repo should fail the
task for PRs submitted by a user with write/admin permission.
2021-03-31 10:31:39 -07:00
Jon Siwek
f75da8bb08 Merge remote-tracking branch 'origin/topic/johanna/opensuse-leap'
* origin/topic/johanna/opensuse-leap:
  CI: Add OpenSUSE Leap 15.2
2021-03-31 09:56:30 -07:00
Johanna Amann
2f39b66828 CI: Add OpenSUSE Leap 15.2 2021-03-31 16:00:33 +01:00
Jon Siwek
3f95abd0dd Add CI task for Alpine Linux 2021-03-30 17:18:52 -07:00
Tim Wojtulewicz
fdf34c1f7b Include git sha in request to benchmark host 2021-03-25 17:38:02 -07:00
Jon Siwek
c8daec20c3 Change update-zeekygen-docs.sh to set release branch in Sphinx config
Allows release branches to generate correct links to GitHub source code.
2021-02-26 15:10:53 -08:00
Christian Kreibich
a9545c0378 Minor Fedora 32/33 updates in CI
- Switch Fedora package management from yum to dnf, the default
- Minimize set of requested RPMs
2021-02-24 09:51:19 -08:00
Christian Kreibich
23b0567e62 Add CentOS Stream 8 to CI
There's no official Docker image on the Docker Hub, it's on quay.io:
https://quay.io/repository/centos/centos?tab=tags

At the moment, "Stream" and "Stream 8" are synonymous.
2021-02-24 09:50:36 -08:00
Jon Siwek
f420cc2544 Fix CentOS 8 CI Dockerfile
The "PowerTools" repoid changed to "powertools":
https://bugs.centos.org/view.php?id=17920
2021-02-12 14:40:52 -08:00
Johanna Amann
f55bd8ebb4 Merge remote-tracking branch 'origin/topic/jsiwek/python2-eol'
* origin/topic/jsiwek/python2-eol:
  Update CentOS CI Dockerfiles to fix git/diff dependencies
  Update CI scripts to remove `python` vs `python3` workarounds
  Remove Python 2 compatibility logic in httpd test script
  Update Python invocations to explicit `python3`
  Update CMake logic to enforce Python >= 3.5
  Update documentation for Python >= 3.5 requirement
  Update all submodules that have Python 2 EOL changes
2020-11-26 18:17:54 +00:00
Jon Siwek
acc76a816a Remove Fedora 31 (EOL) from CI 2020-11-25 17:36:38 -08:00
Jon Siwek
5ff44989c4 Update CentOS CI Dockerfiles to fix git/diff dependencies 2020-11-25 15:19:56 -08:00
Jon Siwek
2b3d216c97 Update CI scripts to remove python vs python3 workarounds 2020-11-25 14:57:09 -08:00
Dominik Charousset
b8e4931681 Simplify CI dependencies and setup 2020-11-23 17:10:15 +01:00
Jon Siwek
04a02d979f Change Debian 10 CI config to use GCC 2020-11-09 16:29:27 -08:00
Christian Kreibich
13ecafd687 Add CI support for Debian 10, Fedora 31 & 33, FreeBSD 11, Ubuntu 20.04
This also adds two environment variables to the Dockerfiles for the
Debian/Ubuntu flavors to avoid stalling on user input when configuring
tzdata.
2020-11-09 14:04:37 -08:00
Tim Wojtulewicz
2c9c55b058 Prevent non-master builds, add cirrus information to upload 2020-10-22 00:56:20 +00:00
Tim Wojtulewicz
e2053551cd Add support for sending data to coveralls with lcov_html.sh via Cirrus 2020-10-21 21:55:30 +00:00
Jon Siwek
0d58e97349 Add Zeekygen documentation support for packet analyzers 2020-09-23 22:50:52 -07:00
Christian Kreibich
d772bbafc1 CI: Move to Fedora 32
Fedora 30 is EOL. For Fedora 32, we need to add the diffutils RPM to
the installation list, since cmp and diff aren't automatically
available in the base image. (Also, sort the RPMs alphabetically.)
2020-09-18 15:40:43 -07:00
Jon Siwek
48e2445600 Merge remote-tracking branch 'origin/topic/jsiwek/skip-ci-benchmark'
* origin/topic/jsiwek/skip-ci-benchmark:
  Improve CI benchmark script's error handling/messaging
2020-09-02 20:51:35 -07:00
Jon Siwek
a7b905d389 GH-1149: Add GitHub Action to automate generation of zeek-docs 2020-09-01 17:52:00 -07:00
Jon Siwek
73d372f151 Improve CI benchmark script's error handling/messaging 2020-08-31 16:08:00 -07:00