Commit Graph

79 Commits

Author SHA1 Message Date
Edward Thomson
825dd544ab ci: pull libssh2 from www.libssh2.org
libssh2.org and www.libssh2.org were previously identical; now this is a
redirect.
2021-09-21 12:02:01 -04:00
Edward Thomson
0e04726866 opts: test GIT_OPT_SET_SSL_CERT_LOCATIONS
Include a self-signed certificate for test.libgit2.org:1443 that we can
use to verify that GIT_OPT_SET_SSL_CERT_LOCATIONS works.
2021-08-29 21:52:30 -04:00
Edward Thomson
a5d6a5768f ci: stop on test failure 2021-08-29 21:01:49 -04:00
Edward Thomson
dbcb1cd746 ci: update container versions
Update all the container versions to force a rebuild so that they'll get
tagged with latest (due to changes in the CI scripts).
2021-08-23 15:04:35 -04:00
Edward Thomson
ecdb41f911 ci: update centos to find libssh2 2021-08-21 08:18:25 -04:00
Edward Thomson
a42577db27 ci: update centos builds 2021-08-16 14:09:17 -04:00
Edward Thomson
d4416624fa ci: update centos builds 2021-08-16 13:49:38 -04:00
Edward Thomson
5ad53ec762 ci: update centos builds 2021-08-15 23:19:54 -04:00
Edward Thomson
1ebdb6f203 ci: update centos7 and centos8 build 2021-08-15 22:53:19 -04:00
Edward Thomson
e6c9fcf08d ci: add centos7 and centos8 docker definitions 2021-08-15 17:17:58 -04:00
Edward Thomson
b140e22e2e ci: remove the docker entrypoint
Omitting an entrypoint.sh to configure the container and instead
depending on docker primitives allows us to be more portable.  (If a
distribution uses a different mechanism for adding users, we need not
have multiple entrypoint.sh files or invariants within it; instead we
can configure that in the dockerfile itself along with all the other
distribution specific components.)
2021-08-09 08:42:34 -04:00
Edward Thomson
7ad81a42a2 ci: use GitHub for storing mingw-w64 build dependency 2021-05-04 12:23:17 +01:00
Edward Thomson
75888f273e ci: don't use ninja on macOS
Ninja is not installed by default on the macOS machines; stop trying to
use it.  Instead use `make -j` which should be roughly equivalent in
performance but supported everywhere.
2021-01-15 12:12:07 +00:00
Miguel Arroz
8dc0ba75f0 Change libssh2 version to 1.9.0 on focal 2020-12-21 21:31:50 -08:00
Edward Thomson
5a9d16dceb ci: support multi-arch docker builds
Provide the base to our docker images and run with the QEMU docker
support optionally.
2020-11-23 23:08:23 +00:00
Edward Thomson
9f8802d3ea ci: add krb5 to bionic container 2020-11-23 20:22:07 +00:00
Edward Thomson
3d6b90359d ci: stop using deprecated set-env in GitHub Actions
(And move the ci scripts into the `ci` directory.)
2020-11-18 18:08:23 +00:00
Patrick Steinhardt
ffac520e83 azure: move build scripts into "azure-pipelines" directory
Since we have migrated to Azure Pipelines, we have deprecated and
subsequentally removed all infrastructure for AppVeyor and
Travis. Thus it doesn't make a lot of sense to have the split
between "ci/" and "azure-pipelines/" directories anymoer, as
"azure-pipelines/" is essentially our only CI.

Move all CI scripts into the "azure-pipelines/" directory to have
everything centrally located and to remove clutter in the
top-level directory.
2019-07-20 19:10:10 +02:00
Patrick Steinhardt
d827b11b67 tests: execute leak checker via CTest directly
Right now, we have an awful hack in our test CI setup that extracts the
test command from CTest's output and then prepends the leak checker.
This is dependent on non-machine-parseable output from CMake and also
breaks on various ocassions, like for example when we have spaces in the
current path or when the path contains backslashes. Both conditions may
easily be triggered on Win32 systems, and in fact they do break our
Azure Pipelines builds.

Remove the awful hack in favour of a new CMake build option
"USE_LEAK_CHECKER". If specifying e.g. "-DUSE_LEAK_CHECKER=valgrind",
then we will set up all tests to be run under valgrind. Like this, we
can again simply execute ctest without needing to rely on evil sourcery.
2019-07-20 19:10:10 +02:00
Patrick Steinhardt
86ecd6008d fuzzers: provide test targets
Instead of having to find the fuzzer executables in our Azure test
scripts, provide test targets for each of our fuzzers that will
run them with the correct paths.
2019-07-20 19:10:10 +02:00
Patrick Steinhardt
eb27fb9bdb ci: build fuzzers on Powershell based build jobs
In order to guarantee that our fuzzers build just fine on the Windows
platform, let's enable building fuzzers on all Powershell-based builds.
2019-07-05 11:59:17 +02:00
Edward Thomson
6b2240542a ci: build with ENABLE_WERROR on Windows
Build with -Werror's equivalent (/WX) on MSVC
2019-06-25 14:41:36 +01:00
Edward Thomson
c7b4ce55e0 ci: add flaky test re-execution on Windows
Our online tests are occasionally flaky since they hit real network
endpoints.  Re-run them up to 5 times if they fail, to allow us to
avoid having to fail the whole build.
2019-06-24 22:54:10 +01:00
Edward Thomson
6d8a34ad33 ci: add flaky test re-execution on Unix
Our online tests are occasionally flaky since they hit real network
endpoints.  Re-run them up to 5 times if they fail, to allow us to
avoid having to fail the whole build.
2019-06-24 22:54:10 +01:00
Edward Thomson
4c2ca1ba4a ci: test NTLM proxy authentication on Unix 2019-06-10 19:58:22 +01:00
Edward Thomson
ad5419b5b3 ci: enable SKIP_OFFLINE_TESTS for windows 2019-06-10 19:58:22 +01:00
Edward Thomson
1ef77e377a ci: test NTLM proxy authentication on Windows
Update our CI tests to start a proxy that requires NTLM authentication;
ensure that our WIndows HTTP client can speak NTLM.
2019-06-10 19:58:22 +01:00
Edward Thomson
44f8213480 ci: provide more information about OS
Subtle changes in the host OS can have impacts in the CI system that
may be hard to debug.  We previously showed the results of `uname` which
can be difficult to interpret.  Provide more information where
available.
2019-02-13 11:18:35 +00:00
Edward Thomson
0cf5b6b17d ci: ignore coverity failures in nightly runs
Coverity is back but it's only read-only!  Agh.  Just allow it to fail
and not impact the overall job run.
2019-01-28 12:33:31 +00:00
Edward Thomson
c9d9e25fb1 ci: update poxyproxy, run in quiet mode
Update the proxy so that we can enable a quiet mode.
2019-01-20 17:35:50 +00:00
Edward Thomson
e2b9f56878 ci: run all invasive tests on windows 2019-01-19 01:16:45 +00:00
Edward Thomson
1ebf3a7dec ci: only run invasive tests during nightly runs 2019-01-19 01:16:45 +00:00
Edward Thomson
6b8a648f6f ci: clear settings variables in powershell 2019-01-19 00:38:00 +00:00
Etienne Samson
1b4ba8443f ci: enable some of the invasive testcases 2019-01-11 11:53:54 +01:00
Edward Thomson
de60d9b4c6 tests: PROXY_URL is more accurately PROXY_HOST
Change the `GITTEST_REMOTE_PROXY_URL` environment variable to be
`GITTEST_REMOTE_PROXY_HOST`, since it is a host:port combination, not an
actual URL.  (We cannot use a URL here since we may want to include the
username:password combination in the constructed URL.)
2018-11-28 15:10:02 +00:00
Edward Thomson
b5ae83bfac Merge pull request #4860 from tiennou/ci/macos-leaks
CI: Fix macOS leak detection
2018-10-31 08:47:10 +00:00
Etienne Samson
8c49b3bf26 tests: use CLAR_AT_EXIT to check for leaks on macOS 2018-10-30 22:32:57 +01:00
Etienne Samson
0e69485efd clar: provide a way to run some shell before exiting 2018-10-30 22:32:23 +01:00
Edward Thomson
f22521efe2 ci: fail if requested test name is not found (unix)
POSIX: the CMakeLists.txt configures the test names; when we query
ctest for the test command-line to run, fail if the tests are not
found.
2018-10-26 14:40:09 +01:00
Edward Thomson
05c51bb6ea ci: fail if requested test name is not found (win32)
Win32: The CMakeLists.txt configures the test names; when we query
ctest for the test command-line to run, fail if the tests are not
found.
2018-10-26 14:40:01 +01:00
Edward Thomson
0e26717a57 ci: fail on test failures
PowerShell can _read_ top-level variables in functions, but cannot _update_
top-level variables in functions unless they're explicitly prefixed with
`$global`.
2018-10-25 14:26:28 -07:00
Etienne Samson
fa274f7f08 ci: redirect the malloc debugging output to /dev/null 2018-10-23 22:34:45 +02:00
Edward Thomson
f195395ab1 ci: bind specifically to localhost for proxy
Bind the proxy specifically to 127.0.0.1 instead of all addresses.  This
is not strictly necessary for operations, but having a potentially open
proxy on a network is not a good idea.
2018-10-21 10:37:26 +01:00
Edward Thomson
4ec597dcac ci: move configuration yaml to its own directory
As the number of each grow, separate the CI build scripts from
the YAML definitions.
2018-10-21 09:44:36 +01:00
Etienne Samson
6a67e42da7 ci: use Ninja on macOS 2018-10-19 19:10:01 +02:00
Edward Thomson
1621a37dd1 Merge pull request #4812 from libgit2/ethomson/ci-refactor
CI: refactoring
2018-09-29 13:22:59 -04:00
Edward Thomson
429c7f1141 ci: don't stop on failure
Don't stop on test failures; run all the tests, even when a test fails.
2018-09-29 18:11:37 +01:00
Edward Thomson
7c9769d947 ci: append -r flag to clar on windows
Similar to the way we parse the ctest output on POSIX systems, do the
same on Windows.  This allows us to append the `-r` flag to clar after
we've identified the command to run.
2018-09-29 18:11:34 +01:00
Edward Thomson
d7d0139eb3 ci: rename vsts to azure-pipelines 2018-09-18 13:47:49 +10:00
Edward Thomson
a8301b0c19 ci: add SKIP_*_TESTS for windows builds
Introduce SKIP_*_TEST variables for Windows builds to match POSIX
builds.
2018-09-17 20:04:47 -07:00