-# travis-ci.org configuration
-#
language: generic
-sudo: required
-dist: trusty
+
+os:
+ - linux
+
+dist:
+ - trusty
+ - xenial
+
env:
- global:
- - secure: "CoI8hwHH1yfQoQxIfWGRS0WfTyScox+5aJn0fDDgz2uKrrIxmBvIw/WKX8wcSiV6fLmLuwgNkKqSM3hdO4qaG+JxfWcuEiZZHm+kxSGMkWbGb/fvAI+gHg8ldKyYttcIX71O5rlZiC2QpNKQi2v18S6pI5p8eqnx7DYx4YrmguQ="
- # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
- # via the "travis encrypt" command using the project repo's public key
- - secure: "C9ZJ9LYnuowRdF4D66KLfquimvu8GtRGIafwvCcGYKReEy8phlBdFsHlybkMBNYJNTJSM0j6wyo1lKTVGHxmpQDimjR7kmxUtawbhuJ5qOCBtFqNVh9lRQi7hC4+UOhvRsIcbV8HAJM5u/5RxGOfXCePK3a2DtiYv1d2NHToZN8="
+ global:
+ - secure: "CoI8hwHH1yfQoQxIfWGRS0WfTyScox+5aJn0fDDgz2uKrrIxmBvIw/WKX8wcSiV6fLmLuwgNkKqSM3hdO4qaG+JxfWcuEiZZHm+kxSGMkWbGb/fvAI+gHg8ldKyYttcIX71O5rlZiC2QpNKQi2v18S6pI5p8eqnx7DYx4YrmguQ="
+ # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
+ # via the "travis encrypt" command using the project repo's public key
+ - secure: "C9ZJ9LYnuowRdF4D66KLfquimvu8GtRGIafwvCcGYKReEy8phlBdFsHlybkMBNYJNTJSM0j6wyo1lKTVGHxmpQDimjR7kmxUtawbhuJ5qOCBtFqNVh9lRQi7hC4+UOhvRsIcbV8HAJM5u/5RxGOfXCePK3a2DtiYv1d2NHToZN8="
+
compiler:
- - gcc
-before_install:
- - sudo apt-get update -qq
- - sudo apt-get install libcap2-bin
- #- sudo apt-get install traceroute
- #- traceroute google.com
- - echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-
-install:
- - ci/build-1-autotools.sh
- - curl -L http://cpanmin.us | perl - --sudo App::cpanminus
- - cpanm --sudo Test::Command
-script:
- - ci/build-2-install.sh
- - env PATH=`pwd`/src:$PATH prove ci/test-*.pl
- - ci/test-tarball.sh
-after_success:
- - ci/coveralls.sh
- - ci/deploy-bintray.sh
+ - gcc
addons:
+ apt:
+ update: true
+ packages:
+ - libcap2-bin
+ - libtest-command-perl
coverity_scan:
project:
name: "schweikert/fping"
description: "Build submitted via Travis CI"
notification_email: david@schweikert.ch
- #build_command_prepend: "ci/build-2-install.sh"
- build_command: "ci/build-2-install.sh"
+ build_command: "ci/build-3-compile.sh"
branch_pattern: coverity_scan
+
+install:
+ - ci/build-1-autotools.sh
+ - ci/build-2-test-command.sh
+ - ci/build-3-prepare-macos.sh
+
+script:
+ - ci/build-4-compile.sh
+ - ci/run-tests.sh
+ - ci/deploy-bintray.sh
+
+after_success:
+ - ci/deploy-coveralls.sh
+
+stages:
+ - test
+ - name: deploy
+ if: branch = master OR branch = v4.x
+
+jobs:
+ include:
+ #### STAGE: test
+ - stage: test
+ name: test trusty
+ os: linux
+ dist: trusty
+
+ - name: test xenial
+ os: linux
+ dist: xenial
+
+ - name: test macos
+ os: osx
+
+ #### STAGE: deploy
+ - stage: deploy
+ name: deploy
+ os: linux
+ dist: xenial
+ env:
+ - DO_DEPLOY=1
#!/bin/bash -e
+if [[ "$OSTYPE" == "darwin"* ]]; then
+ exit 0
+fi
+
AUTOCONF=http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
AUTOMAKE=http://ftp.gnu.org/gnu/automake/automake-1.14.1.tar.gz
LIBTOOL=http://alpha.gnu.org/gnu/libtool/libtool-2.4.2.418.tar.gz
--- /dev/null
+#!/bin/sh
+
+set -ex
+
+curl -L http://cpanmin.us | perl - --sudo App::cpanminus
+cpanm --sudo Test::Command
+
+++ /dev/null
-#!/bin/sh
-
-set -x
-
-sudo -H pip install cpp-coveralls
-
-cd src
-
-ls -l
-
-gcov *.o
-cd ..
-coveralls --exclude ci --exclude src/optparse.c --no-gcov
set -e
-# do this only for the gcc run
-#if [ "$CC" != "gcc" ]; then
-# echo "skipped upload because $CC != gcc"
-# exit 0
-#fi
-
-# do this only for the master and version3 branch
-if [ "$TRAVIS_BRANCH" != "master" -a "$TRAVIS_BRANCH" != "version3" ]; then
- echo "skipped upload branch $TRAVIS_BRANCH isn't master/version3"
+if [ -z "$DO_DEPLOY" ]; then
+ echo "skip deploy (\$DO_DEPLOY not set)"
exit 0
fi
--- /dev/null
+#!/bin/sh
+
+set -xe
+
+pip install --user cpp-coveralls
+coveralls --root src --exclude src/optparse.c --gcov-options '\-lp'
--- /dev/null
+#!/bin/sh
+
+set -ex
+
+PATH=`pwd`/src:$PATH
+
+prove ci/test-*.pl
+ci/test-tarball.sh
set -e
set -x
+# skip on macos
+if [[ "$OSTYPE" == "darwin"* ]]; then
+ exit 0
+fi
+
make dist
VERSION=$(ls fping-*.tar.gz | sed -e 's/^fping-//' | sed -e 's/\.tar\.gz$//')
if [ -z "$VERSION" ]; then
char* get_host_by_address(struct in_addr in);
int send_ping(HOST_ENTRY* h, int index);
void usage(int);
-int wait_for_reply(long);
+int wait_for_reply(int64_t);
void print_per_system_stats(void);
void print_per_system_splits(void);
void print_netdata(void);
if (per_recv_flag) {
if (timestamp_flag) {
- printf("[%10.5f] ", (double)current_time_ns / 1e9);
+ printf("[%.5f] ", (double)current_time_ns / 1e9);
}
printf("%-*s : [%d], timed out",
max_hostname_len, h->host, event->ping_index);
/* print received ping (unless --quiet) */
if (per_recv_flag) {
if (timestamp_flag) {
- printf("[%10.5f] ", (double)recv_time / 1e9);
+ printf("[%.5f] ", (double)recv_time / 1e9);
}
avg = h->total_time / h->num_recv;
printf("%-*s : [%d], %d bytes, %s ms",