--- /dev/null
+name: CI
+on:
+ push:
+ pull_request:
+ schedule:
+ - cron: 0 7 1 * *
+jobs:
+ build:
+ strategy:
+ matrix:
+ os:
+ - ubuntu-latest
+ config-args:
+ - "--with-embedded-libevent"
+ - "--disable-shared --enable-static"
+ - "--disable-privsep --with-snmp"
+ - "--with-snmp --disable-lldpmed --disable-dot1 --disable-dot3 --disable-custom"
+ - "--enable-oldies"
+ - "--enable-dtrace"
+ - "--with-seccomp"
+ compiler:
+ - gcc
+ release:
+ - false
+ include:
+ - os: ubuntu-latest
+ config-args: ''
+ release: true
+ - os: ubuntu-latest
+ compiler: clang
+ config-args: "--with-snmp --with-xml"
+ - os: macos-latest
+ compiler: clang
+ config-args: "--with-snmp --with-xml"
+ - os: macos-latest
+ compiler: clang
+ config-args: >
+ --prefix=/usr/local
+ --localstatedir=/var
+ --sysconfdir=/private/etc
+ --with-embedded-libevent
+ --without-snmp
+ --without-xml
+ release: true
+ runs-on: ${{ matrix.os }}
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install stuff
+ run: ./tests/ci/install.sh
+ - name: Build and run tests
+ run: ./tests/ci/run.sh
+ env:
+ LLDPD_CONFIG_ARGS: ${{ matrix.config-args }}
+ CC: ${{ matrix.compiler }}
+ - name: Upload release tarball
+ uses: actions/upload-artifact@v2
+ if: matrix.release && matrix.os == 'ubuntu-latest'
+ with:
+ name: tarball
+ path: lldpd-*.tar.gz
+ if-no-files-found: error
+ - name: Upload MacOS release package
+ uses: actions/upload-artifact@v2
+ if: matrix.release && matrix.os == 'macos-latest'
+ with:
+ name: package
+ path: lldpd-*.pkg
+ if-no-files-found: error
+++ /dev/null
-language: c
-os: linux
-dist: bionic
-compiler: gcc
-sudo: require
-install:
- - ./tests/ci/install.sh
-script:
- - ./tests/ci/run.sh
-env:
- matrix:
- - LLDPD_CONFIG_ARGS=""
- - LLDPD_CONFIG_ARGS="--with-embedded-libevent"
- - LLDPD_CONFIG_ARGS="--disable-shared --enable-static"
- - LLDPD_CONFIG_ARGS="--disable-privsep --with-snmp"
- - LLDPD_CONFIG_ARGS="--with-snmp --disable-lldpmed --disable-dot1 --disable-dot3 --disable-custom"
- - LLDPD_CONFIG_ARGS="--enable-oldies"
- - LLDPD_CONFIG_ARGS="--enable-dtrace"
- - LLDPD_CONFIG_ARGS="--with-seccomp"
-matrix:
- include:
- - os: linux
- compiler: clang
- env: LLDPD_CONFIG_ARGS="--with-snmp --with-xml"
- - os: linux
- arch: ppc64el
- env: LLDPD_CONFIG_ARGS="--with-snmp --with-xml"
- - os: osx
- compiler: clang
- env: LLDPD_CONFIG_ARGS="--with-snmp --with-xml"
- - os: osx
- compiler: clang
- env:
- - MAKE_ARGS=""
- - LLDPD_CONFIG_ARGS="--with-embedded-libevent"
- - os: osx
- compiler: clang
- if: tag =~ ^[0-9]
- env:
- - MAKE_ARGS=""
- - LLDPD_UPLOAD=1
- - LLDPD_CONFIG_ARGS="--prefix=/usr/local --localstatedir=/var --sysconfdir=/private/etc --with-embedded-libevent --without-snmp --without-xml"
-deploy:
- - provider: s3
- skip_cleanup: true
- local_dir: upload
- bucket: lldpd-releases
- acl: public_read
- on:
- all_branches: true
- condition: "$LLDPD_UPLOAD = 1"
lldpd: implementation of IEEE 802.1ab (LLDP)
============================================
-[](http://travis-ci.org/vincentbernat/lldpd)
+
http://vincentbernat.github.com/lldpd/
Darwin)
brew update > /dev/null
brew bundle --file=- <<-EOS
+brew "automake"
+brew "autoconf"
brew "libtool"
brew "libxml2"
brew "check"
[ $(uname -m) != x86_64 ] || \
LLDPD_CONFIG_ARGS="$LLDPD_CONFIG_ARGS --enable-sanitizers"
LLDPD_CONFIG_ARGS="$LLDPD_CONFIG_ARGS LDFLAGS=-fuse-ld=gold"
+ MAKE_ARGS="-Werror"
;;
Darwin)
LLDPD_CONFIG_ARGS="$LLDPD_CONFIG_ARGS CFLAGS=-mmacosx-version-min=10.9"
LLDPD_CONFIG_ARGS="$LLDPD_CONFIG_ARGS LDFLAGS=-mmacosx-version-min=10.9"
+ MAKE_ARGS=""
;;
esac
# Create a package
make -C osx pkg
otool -l osx/lldpd*/usr/local/sbin/lldpd
- mkdir upload
- mv *.pkg upload
;;
Linux)
# Integration tests