From: Michael Mattioli Date: Tue, 26 Nov 2019 02:28:57 +0000 (-0500) Subject: Use GitHub Actions for CI X-Git-Tag: krb5-1.19-beta1~118 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1ad47d436e2e748fb20d4b08f85ed8dda2b3fd3c;p=thirdparty%2Fkrb5.git Use GitHub Actions for CI Use Github Actions instead of Travis and AppVeyor. In the Windows installer config, add support for Visual Studio 2019 (aka 16.0). [ghudson@mit.edu: switched to Ubuntu 18.04 for Linux builds; removed macOS build job for now; added more packages to avoid skipping tests; made it easier to see skipped tests and to see files not cleaned; added make install command; adjusted Windows build path] --- diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000000..982cb50525 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,97 @@ +name: Build + +on: push + +jobs: + + unix: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + name: [linux-clang, linux-clang-openssl, linux-gcc] + include: + - name: linux-clang + os: ubuntu-18.04 + compiler: clang + makevars: CPPFLAGS=-Werror + - name: linux-clang-openssl + os: ubuntu-18.04 + compiler: clang + makevars: CPPFLAGS=-Werror + configureopts: --with-crypto-impl=openssl + - name: linux-gcc + os: ubuntu-18.04 + compiler: gcc + steps: + - name: Checkout repository + uses: actions/checkout@v1 + - name: Linux setup + if: startsWith(matrix.os, 'ubuntu') + run: | + sudo apt-get update -qq + sudo apt-get install -y bison dejagnu gettext keyutils ldap-utils libcmocka-dev libldap2-dev libkeyutils-dev libresolv-wrapper libsasl2-dev libssl-dev python3-kdcproxy python3-pip slapd tcl-dev tcsh + pip3 install pyrad + - name: Build + env: + CC: ${{ matrix.compiler }} + MAKEVARS: ${{ matrix.makevars }} + CONFIGURE_OPTS: ${{ matrix.configureopts }} + run: | + cd src + autoreconf + ./configure --enable-maintainer-mode --with-ldap $CONFIGURE_OPTS --prefix=$HOME/inst + make $MAKEVARS + make check + make install + - name: Display skipped tests + run: cat src/skiptests + - name: Check for files unexpectedly not removed by make distclean + run: | + cd src + make distclean + rm -rf autom4te.cache configure include/autoconf.h.in + if [ -n "$(git ls-files -o)" ]; then + echo "Files not removed by make distclean:" + git ls-files -o + exit 1 + fi + + windows: + runs-on: windows-latest + env: + KRB_INSTALL_DIR: C:\kfw + steps: + - name: Checkout repository + uses: actions/checkout@v1 + - name: Setup + shell: cmd + run: | + mkdir %KRB_INSTALL_DIR% + - name: Build 32-bit + shell: cmd + run: | + cd src + call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars32.bat" + set + set PATH=C:\Strawberry\perl\bin;%PATH%;%wix%bin + nmake -f Makefile.in prep-windows + nmake + nmake install + cd windows\installer\wix + nmake + rename kfw.msi kfw32.msi + - name: Build 64-bit + shell: cmd + run: | + cd src + call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" + set + set PATH=C:\Strawberry\perl\bin;%PATH%;%wix%bin;"%WindowsSdkVerBinPath%"\x86 + nmake clean + nmake + nmake install + cd windows\installer\wix + nmake clean + nmake + rename kfw.msi kfw64.msi diff --git a/.travis-ci.sh b/.travis-ci.sh deleted file mode 100644 index 55f5e8ddf2..0000000000 --- a/.travis-ci.sh +++ /dev/null @@ -1,11 +0,0 @@ -cd src -autoreconf -./configure --enable-maintainer-mode --with-ldap $CONFIGURE_OPTS -make $MAKEVARS -make check -make distclean -# Check for files unexpectedly not removed by make distclean. -rm -rf autom4te.cache configure include/autoconf.h.in -if [ -n "$(git ls-files -o)" ]; then - exit 1 -fi diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 47b249c64c..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,22 +0,0 @@ -language: c++ - -sudo: required - -dist: xenial - -matrix: - include: - - compiler: clang - env: MAKEVARS=CPPFLAGS=-Werror - - compiler: clang - env: - - MAKEVARS=CPPFLAGS=-Werror - - CONFIGURE_OPTS=--with-crypto-impl=openssl - - compiler: gcc - -before_install: - - sudo apt-get update -qq - - sudo apt-get install -y bison dejagnu gettext keyutils ldap-utils libcmocka-dev libldap2-dev libkeyutils-dev libssl-dev python3-kdcproxy python3-pip slapd tcl-dev tcsh - - pip3 install pyrad - -script: sh -ex .travis-ci.sh diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index e54c7c4ce6..0000000000 --- a/appveyor.yml +++ /dev/null @@ -1,25 +0,0 @@ -image: Visual Studio 2017 - -build_script: - - mkdir C:\kfw - - set KRB_INSTALL_DIR=C:\kfw - - cd %APPVEYOR_BUILD_FOLDER%\src - - set PATH=%PATH%;%wix%bin - - call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat" - - set - - nmake -f Makefile.in prep-windows - - nmake - - nmake install - - cd windows\installer\wix - - nmake - - rename kfw.msi kfw32.msi - - cd ..\..\.. - - call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" - - set - - nmake clean - - nmake - - nmake install - - cd windows\installer\wix - - nmake clean - - nmake - - rename kfw.msi kfw64.msi diff --git a/src/windows/installer/wix/config.wxi b/src/windows/installer/wix/config.wxi index 15411c17a6..5e6267d195 100644 --- a/src/windows/installer/wix/config.wxi +++ b/src/windows/installer/wix/config.wxi @@ -49,6 +49,8 @@ + +