Files
ModemManager/.gitlab-ci.yml
T
Frederic Martinsons 89cd1696c3 tools: add unit test for test-modemmanager-service.py
The tests spawn the service via GTestDBus framework and make
some test API call while checking libmm interface to verify
that informations are well propagated.

To be able to use the fresh built libmm typelib, I used a
wrapper script to set GI_TYPELIB_PATH (because DBus activation
process clean the environment so it is not possible to set
it directly in the file).

This requires also the install of libgirepository-dev and python3-gi
in the CI docker.

Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
2021-01-15 16:44:19 +00:00

156 lines
4.5 KiB
YAML

image: gcc
stages:
- build
before_script:
- apt update || true
- apt -y install autoconf automake libtool libgettextpo-dev libgirepository1.0-dev libglib2.0-dev libgudev-1.0-dev python3-dbus python3-gi autopoint xsltproc dbus autoconf-archive gettext
build-no-qmi:
stage: build
only:
- master
- merge_requests
- tags
- schedules
script:
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libmbim.git
- pushd libmbim
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr
- make
- make install
- popd
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/tmp/build-no-qmi --disable-gtk-doc --without-qmi
- make
- make check
- make install
build-no-mbim:
stage: build
only:
- master
- merge_requests
- tags
- schedules
script:
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
- pushd libqmi
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr --disable-mbim-qmux --enable-collection=basic
- make
- make install
- popd
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/tmp/build-no-mbim --disable-gtk-doc --without-mbim
- make
- make check
- make install
build-no-qmi-no-mbim:
stage: build
only:
- master
- merge_requests
- tags
- schedules
script:
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/tmp/build-no-qmi-no-mbim --disable-gtk-doc --without-qmi --without-mbim
- make
- make check
- make install
build-qmi-newest-commands:
stage: build
only:
- master
- merge_requests
- tags
- schedules
script:
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
- pushd libqmi
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr --disable-mbim-qmux --enable-collection=basic
- make
- make install
- popd
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/tmp/build-qmi-newest-commands --disable-gtk-doc --without-mbim CFLAGS="-DWITH_NEWEST_QMI_COMMANDS"
- make
- make check
- make install
build-single-plugins:
stage: build
only:
- schedules
script:
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libmbim.git
- pushd libmbim
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr
- make
- make install
- popd
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
- pushd libqmi
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr --enable-mbim-qmux --enable-collection=basic
- make
- make install
- popd
- NOCONFIGURE=1 ./autogen.sh
- for plugin in generic altair-lte anydata broadmobi cinterion
dell dlink fibocom foxconn gosuncn haier huawei iridium
linktop longcheer mbm motorola mtk nokia nokia-icera
novatel novatel-lte option option-hso pantech
qcom-soc quectel samsung sierra-legacy sierra simtech
telit thuraya tplink ublox via wavecom x22x zte; do
./configure --prefix=/usr --disable-gtk-doc --disable-all-plugins --enable-plugin-$plugin;
make;
make clean;
done
build-default:
stage: build
only:
- master
- branches
- merge_requests
- tags
- schedules
- pushes
script:
- apt -y install gtk-doc-tools libglib2.0-doc gobject-introspection libsystemd-dev libpolkit-gobject-1-dev valac
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libmbim.git
- pushd libmbim
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr
- make
- make install
- popd
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
- pushd libqmi
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr --enable-mbim-qmux --enable-collection=basic
- make
- make install
- popd
- NOCONFIGURE=1 ./autogen.sh
- ./configure --prefix=/usr --enable-gtk-doc --with-polkit=strict --with-suspend-resume=systemd --with-systemdsystemunitdir=/lib/systemd/system
- make
- make check
- make install
- make distcheck
- sha256sum $CI_PROJECT_NAME-*.tar.xz | awk '{print $1;}' > pkg_hash.txt
artifacts:
name: "$CI_PROJECT_NAME-$CI_COMMIT_SHORT_SHA"
paths:
- /builds/$CI_PROJECT_ROOT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME-*.tar.xz
- /builds/$CI_PROJECT_ROOT_NAMESPACE/$CI_PROJECT_NAME/pkg_hash.txt
expire_in: 2 days