polybar-dwm/.github/workflows/ci.yml

125 lines
3.2 KiB
YAML
Raw Normal View History

2020-12-11 20:37:54 +00:00
name: CI
2020-12-12 00:15:49 +00:00
on:
workflow_dispatch:
inputs:
ref:
description: 'ref'
required: false
push:
pull_request:
2020-12-11 20:37:54 +00:00
jobs:
docs:
runs-on: ubuntu-20.04
env:
COLOR: "ON"
steps:
- uses: actions/checkout@v2
2020-12-12 00:15:49 +00:00
with:
ref: ${{ github.event.inputs.ref }}
2020-12-11 20:37:54 +00:00
- name: Install Dependencies
run: |
sudo apt-get update
sudo apt-get install -y python3-sphinx
2020-12-11 20:37:54 +00:00
- name: Build Documentation
run: |
mkdir -p build
cd build
2020-12-24 11:33:49 +00:00
cmake -DDISABLE_ALL=ON -DBUILD_DOC=ON -DSPHINX_FLAGS="-W" ..
2020-12-11 20:37:54 +00:00
make doc
2020-12-22 11:23:06 +00:00
ipc:
runs-on: ubuntu-20.04
env:
COLOR: "ON"
steps:
- uses: actions/checkout@v2
with:
ref: ${{ github.event.inputs.ref }}
- name: Build polybar-msg
run: |
mkdir -p build
cd build
cmake -DDISABLE_ALL=ON -DBUILD_POLYBAR_MSG=ON ..
make polybar-msg
2020-12-11 20:37:54 +00:00
build:
runs-on: ubuntu-20.04
strategy:
matrix:
cxx: [g++, clang++]
polybar_build_type: ["full"]
build_type: ["Release"]
include:
- cxx: g++
polybar_build_type: "tests"
build_type: "Coverage"
- cxx: g++
polybar_build_type: "minimal"
build_type: "Release"
env:
CXX: ${{ matrix.cxx }}
BUILD_TYPE: ${{ matrix.build_type }}
POLYBAR_BUILD_TYPE: ${{ matrix.polybar_build_type }}
POLYBAR_DIR: ${{ github.workspace }}
BUILD_DIR: "${{ github.workspace}}/build"
MAKEFLAGS: "-j4"
COLOR: "ON"
steps:
- name: Install Dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
libxcb-composite0-dev \
libxcb-ewmh-dev \
libxcb-icccm4-dev \
libxcb-image0-dev \
libxcb-randr0-dev \
libxcb-util0-dev \
libxcb1-dev \
libcairo2-dev \
python3-xcbgen \
xcb-proto
if [ "$POLYBAR_BUILD_TYPE" != "minimal" ]; then
sudo apt-get install -y \
libxcb-xkb-dev \
libxcb-cursor-dev \
libxcb-xrm-dev \
i3-wm \
libcurl4-openssl-dev \
libjsoncpp-dev \
libasound2-dev \
libpulse-dev \
2020-12-22 02:51:22 +00:00
libnl-genl-3-dev \
2020-12-11 20:37:54 +00:00
libmpdclient-dev
fi
- uses: actions/checkout@v2
with:
submodules: true
2020-12-12 00:15:49 +00:00
ref: ${{ github.event.inputs.ref }}
2020-12-11 20:37:54 +00:00
- name: Summary
run: ./common/ci/summary.sh
- name: Configure
run: ./common/ci/configure.sh
- name: Build
run: |
cd $BUILD_DIR
make
- name: Tests
if: ${{ matrix.polybar_build_type == 'tests' }}
run: |
cd $BUILD_DIR
make check
cd $POLYBAR_DIR
bash <(curl -s https://codecov.io/bash) -F unittests -a "-ap" -Z
- name: Upload Logs
if: failure()
uses: actions/upload-artifact@v2
with:
name: cmake
path: |
build/CMakeFiles/CMakeError.log
build/CMakeFiles/CMakeOutput.log
retention-days: 5