# via the "travis encrypt" command using the project repo's public key
- secure: "C9ZJ9LYnuowRdF4D66KLfquimvu8GtRGIafwvCcGYKReEy8phlBdFsHlybkMBNYJNTJSM0j6wyo1lKTVGHxmpQDimjR7kmxUtawbhuJ5qOCBtFqNVh9lRQi7hC4+UOhvRsIcbV8HAJM5u/5RxGOfXCePK3a2DtiYv1d2NHToZN8="
+notifications:
+ webhooks: https://coveralls.io/webhook
+
compiler:
- gcc
script:
- ci/build-4-compile.sh
- ci/run-tests.sh
+ - ci/deploy-coveralls.sh
stages:
- test
name: test trusty
os: linux
dist: trusty
+ env:
+ - SKIP_IPV6=1
install:
- ci/build-1-autotools.sh
- name: test xenial
os: linux
dist: xenial
- after_success:
- - ci/deploy-coveralls.sh
+ env:
+ - SKIP_IPV6=1
+
+ - name: test bionic
+ os: linux
+ dist: bionic
+ env:
+ - SKIP_IPV6=1
+
+ - name: test bionic lxd arm64
+ os: linux
+ dist: bionic
+ arch: arm64
- name: test macos
os: osx
install:
- ci/build-2-test-command.sh
- ci/build-3-prepare-macos.sh
+ env:
+ - SKIP_IPV6=1
#### STAGE: deploy
- stage: deploy
- The reported size of received packets is now always correct on Linux even for
packets > 4096 bytes.
+- Travis CI automated testing now also macos testing and additional ubuntu
+ distributions.
+
fping 4.4 (2020-07-24)
======================
## Bugfixes and other changes
set -xe
-pip install --user cpp-coveralls
+set
+
+if [ "$TRAVIS_DIST" = "trusty" ]; then
+ echo "skip coveralls on trusty because coveralls errors out due to python issues"
+ exit 0
+elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
+ pip3 install --user cpp-coveralls
+ PATH="${PATH}:$(python3 -c 'import site; print(site.USER_BASE)')/bin"
+else
+ pip install --user cpp-coveralls
+fi
+
+export COVERALLS_PARALLEL=true
coveralls --build-root src --exclude src/optparse.c --exclude ci --exclude config.h --gcov-options '\-lp'
# ping ::1
SKIP: {
#system("/sbin/ifconfig >&2");
- if(system("/sbin/ifconfig | grep inet6") != 0) {
- skip 'No IPv6 on this host', 3;
+ if($ENV{SKIP_IPV6}) {
+ skip 'Skip IPv6 tests', 3;
}
my $cmd = Test::Command->new(cmd => "fping ::1");
$cmd->exit_is_num(0);
# fping -6
SKIP: {
- if(system("/sbin/ifconfig | grep inet6") != 0) {
- skip 'No IPv6 on this host', 3;
+ if($ENV{SKIP_IPV6}) {
+ skip 'Skip IPv6 tests', 3;
}
my $cmd = Test::Command->new(cmd => "fping -6 ::1");
$cmd->exit_is_num(0);
}
SKIP: {
- if(system("/sbin/ifconfig | grep inet6") != 0) {
- skip 'No IPv6 on this host', 3;
+ if($ENV{SKIP_IPV6}) {
+ skip 'Skip IPv6 tests', 3;
}
my $cmd = Test::Command->new(cmd => "fping -q -R -c3 -p100 ::1");
$cmd->exit_is_num(0);
# fping -S
SKIP: {
- if(system("/sbin/ifconfig | grep inet6") != 0) {
- skip 'No IPv6 on this host', 3;
+ if($ENV{SKIP_IPV6}) {
+ skip 'Skip IPv6 tests', 3;
}
my $cmd = Test::Command->new(cmd => "fping -S ::1 ::1");
$cmd->exit_is_num(0);
# fping -A -n (IPv6)
SKIP: {
- if(system("/sbin/ifconfig | grep inet6.*Scope:Global") != 0) {
- skip 'No IPv6 on this host', 3;
+ if($ENV{SKIP_IPV6}) {
+ skip 'Skip IPv6 tests', 3;
}
my $cmd = Test::Command->new(cmd => "fping -6 -n -A dns.google");
$cmd->exit_is_num(0);
- $cmd->stdout_is_eq("dns.google (2001:4860:4860::8888) is alive\n");
+ $cmd->stdout_like(qr{^dns.google \(2001:4860:4860::88(44|88)\) is alive\n$});
$cmd->stderr_is_eq("");
}
# fping -m
SKIP: {
- if(system("/sbin/ifconfig | grep inet6.*Scope:Global") != 0) {
- skip 'No IPv6 on this host', 3;
+ if($ENV{SKIP_IPV6}) {
+ skip 'Skip IPv6 tests', 3;
}
my $cmd = Test::Command->new(cmd => "fping -A -m dns.google");
$cmd->exit_is_num(0);
- $cmd->stdout_is_eq("2001:4860:4860::8888 is alive\n8.8.8.8 is alive\n");
+ $cmd->stdout_like(qr{^.* is alive\n.* is alive\n.* is alive\n.* is alive\n});
$cmd->stderr_is_eq("");
}