mirror of
https://github.com/parchlinux/calamares.git
synced 2025-02-27 12:25:45 -05:00
118 lines
No EOL
3.5 KiB
YAML
118 lines
No EOL
3.5 KiB
YAML
name: ci
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- calamares
|
|
pull_request:
|
|
types:
|
|
- opened
|
|
- reopened
|
|
- synchronize
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
BUILDDIR: /build
|
|
SRCDIR: ${{ github.workspace }}
|
|
DESTDIR: /INSTALL_ROOT
|
|
CMAKE_ARGS: |
|
|
-DCMAKE_BUILD_TYPE=Release
|
|
-DWEBVIEW_FORCE_WEBKIT=1
|
|
-DKDE_INSTALL_USE_QT_SYS_PATHS=ON
|
|
-DWITH_PYTHONQT=OFF"
|
|
-DCMAKE_BUILD_TYPE=Debug
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: docker://kdeneon/plasma:user
|
|
options: --tmpfs /build:rw,size=512M --user 0:0
|
|
steps:
|
|
-
|
|
name: prepare
|
|
env:
|
|
COVERITY_SCAN_TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get -y install git-core
|
|
if [ -n "$COVERITY_SCAN_TOKEN" ]; then
|
|
curl -k -o coverity_tool.tar.gz \
|
|
-d "token=$COVERITY_SCAN_TOKEN&project=calamares%2Fcalamares" \
|
|
https://scan.coverity.com/download/cxx/linux64
|
|
mkdir "$BUILDDIR/coveritytool"
|
|
tar xvf coverity_tool.tar.gz -C "$BUILDDIR/coveritytool" --strip-components 2
|
|
fi
|
|
-
|
|
name: checkout
|
|
uses: actions/checkout@v2
|
|
-
|
|
name: install dependencies
|
|
run: |
|
|
sudo apt-get -y install \
|
|
build-essential \
|
|
cmake \
|
|
extra-cmake-modules \
|
|
gettext \
|
|
kio-dev \
|
|
libatasmart-dev \
|
|
libboost-python-dev \
|
|
libkf5config-dev \
|
|
libkf5coreaddons-dev \
|
|
libkf5i18n-dev \
|
|
libkf5iconthemes-dev \
|
|
libkf5parts-dev \
|
|
libkf5service-dev \
|
|
libkf5solid-dev \
|
|
libkpmcore-dev \
|
|
libparted-dev \
|
|
libpolkit-qt5-1-dev \
|
|
libqt5svg5-dev \
|
|
libqt5webkit5-dev \
|
|
libyaml-cpp-dev \
|
|
os-prober \
|
|
pkg-config \
|
|
python3-dev \
|
|
qtbase5-dev \
|
|
qtdeclarative5-dev \
|
|
qttools5-dev \
|
|
qttools5-dev-tools
|
|
-
|
|
name: check environment
|
|
run: |
|
|
test -f $SRCDIR/CMakeLists.txt || { echo "! Missing $SRCDIR/CMakeLists.txt" ; exit 1 ; }
|
|
test -n "$BUILDDIR" || { echo "! \$BUILDDIR not set" ; exit 1 ; }
|
|
test -n "$SRCDIR" || { echo "! \$SRCDIR not set" ; exit 1 ; }
|
|
mkdir -p $BUILDDIR $SRCDIR $DESTDIR
|
|
-
|
|
name: cmake
|
|
run: cmake $CMAKE_ARGS $SRCDIR
|
|
-
|
|
name: generate coverage report
|
|
env:
|
|
COVERITY_SCAN_TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
|
|
run: |
|
|
if [ -n "$COVERITY_SCAN_TOKEN" ]; then
|
|
$BUILDDIR/coveritytool/bin/cov-build --dir cov-int make -j2
|
|
tar caf calamares-ci.tar.xz cov-int
|
|
curl -k --form token=$COVERITY_SCAN_TOKEN \
|
|
--form email=groot@kde.org \
|
|
--form file=@calamares-ci.tar.xz \
|
|
--form version="calamares-`date -u +%Y%m%d`" \
|
|
--form description="calamares on `date -u`" \
|
|
https://scan.coverity.com/builds?project=calamares%2Fcalamares
|
|
fi
|
|
-
|
|
name: make
|
|
run: make -j2 VERBOSE=1
|
|
-
|
|
name: build results
|
|
run: ls -la $( find "$BUILDDIR" -type f -name '*.so' )
|
|
-
|
|
name: install
|
|
id: install
|
|
run: make install VERBOSE=1
|
|
-
|
|
name: debug install
|
|
if: ${{ failure() && steps.install.outcome == 'failure' }}
|
|
run: ls -la $( find "$DESTDIR" -type f -name '*.so' ) |